This powerful RESTful API allows you to fetch any data related to the music on jamendo. It is read-only. It is currently the most used Jamendo API. It is also accessible from Ajax and XML-RPC.
Things you can query with this API : albums, artists, tracks, users, tags, playlists, reviews, ...
http://www.jamendo.com/get/album/list/artist/page/plain/?names=both
http://www.jamendo.com/get/album/list/album/title/plain/?ids=116
http://www.jamendo.com/get/album/list/album/p2p/rss2/?o=release_date_desc&p2pnet=bittorrent&are=ogg3
For more examples, see MusiclistApiExamples
All MusiclistApi URLs follow this simple scheme :
www.jamendo.com/get/ [itemUnit] / [loadtype] / [parametersUnit] / [targetName] / [formatName] / ? ...[secondaryParameters]...
This is the type of the items you will get back. Valid values are :
For instance, when loading a playlist, itemUnit will be "track". But if you want to find all the artists that meet some criteria, it will be "artist".
Use this option to get data associated to IDs you already know. Several IDs can be fetched in a new primary param, separated by "+" (equivalent to spaces in the urls)
For instance, if you want to get the albums of the groups with ids "both" and "triface" :
http://www.jamendo.com/get/album/id/artist/page/plain/both+triface/
This one is the most complicated. Use it to get a list of data with some optional secondary params :
Use this to get the music recommendations for the user currently logged. You'll need to use the jamendo cookie authentification. It adds a "n=xx" secondary parameter where xx is the number of recommendations you want to fetch.
This is an alias for LOADTYPE=list with a secondary param tag=xxx.
For instance,
http://www.jamendo.com/get/album/tag/album/page/plain/electronica
is the same as
http://www.jamendo.com/get/album/list/album/page/plain/?tag=electronica
Same valid values as itemUnit.
If you want to get all the albums of the artist with ID=5, itemUnit will be "album" and parameterUnit will be "artist".
You may specify multiple parametersUnits (see below).
If you query is simple you can have itemUnit=parameterUnit. ("get the album with albumid=33")
Valid values are:
Target is the content you are looking for. For a list of IDs use "id". For a playlist use "audio".
This API supports a wide range of output formats. Valid values are:
Any ideas on new ones ? ;-)
There are 3 different types of IDs on jamendo :
Examples of id / name / dispname :
Any application implementing this API should be ready to follow HTTP redirections.
The valid values for the secondaryParameters "aue" and "are" are :
Please note that currently you can only use the lowfi for streaming and the hifi in the P2P archives.
There are a few dead ends in the API. For instance, you can't use TARGETUNIT=artist and TARGET=p2p, because we don't have per-artist archives. With TARGET=p2p currently you must use TARGET=album.
Same thing for TARGET=audio.. TARGETUNIT must be "track".
You can query the Music API with XMLRPC at this address : http://www.jamendo.com/xmlrpc/
There is only one method : '''array jamendo.get(string primaryparams, struct secondaryparams)'''
Please set TARGET to "xmlrpc". you can test queries in your brower with this format, too.
For instance, a query to : http://www.jamendo.com/get/track/id/album/audio/xmlrpc/33+45/?audio_encoding=ogg2
translates to this XMLRPC request : '''jamendo.get("track/id/album/audio/xmlrpc/33+45/",{"audio_encoding":"ogg2"})'''
In this section we'll highlight several interesting options that require some additional parameters.
This will target to our http audio files. It adds the secondary param "aue=xxx" where xxx is the name of the audio encoding (see above).
This will target our P2P archives. It will point to to a torrent file or to an ed2k link. It adds the secondaryParameters "p2pnet" and "are".
"p2pnet" can be "torrent" (default) or "ed2k".
"are" is the archive audio encoding. (see formats above)
This will target the cover of an album/track. TODO artist images. It adds the secondaryParameters "artwork_size" and "artwork_id".
"artwork_size" is an integer. The covers are available for 70,100,130,200,300,400, etc. If you want a custom one, mail us.
todo
This one is an alias for the default playlist format of the currently logged user. It defaults to "m3u". It is widely used on Jamendo.
One to One : ------
One to Many : -----*
Many to Many : *----*
Concert *-----* Artist *-----* User
|
|
*
Review *----* Album *------* Tag *-------* User
*
| | *
User | |
| |
* *
License ------* Track *------* Playlist *-------User