Switch branches/tags
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
README.md Update links to the blog Jan 14, 2013
__init__.py Set up API URLs Nov 21, 2011
handlers.py api: Fix a crash when using incorrect boolean literals Apr 19, 2012
urls.py api: GET user Nov 26, 2011


muspy API documentation

A draft specification of the muspy API.

Use https://muspy.com/api/1/<resource>. Unless otherwise noted, requests must be authenticated using HTTP basic authentication.

Default output format is json, you can change it to xml by adding ?format=xml to the request URL. POST/PUT parameters should be sent as form data.


  • artist/<mbid>

    • GET: artist info, no auth
  • artists/<userid>[/<mbid>]

    • GET: list of all artists for the user (mbid, name, sort_name, disambiguation)
    • PUT: follow a new artist, return the artist info. <mbid> is required unless import is non-empty.
      • import: instead of adding artists by mbid, import them. Only 'last.fm' is supported for now.
      • username: Last.fm user name
      • count: max 500
      • period: one of ['overall', '12month', '6month', '3month', '7day']
    • DELETE: unfollow an artist, <mbid> is required
  • release/<mbid>

    • GET: release group info (artist, mbid, name, type, date), no auth
  • releases[/<userid>]

    • GET: list of release groups, sorted by release date. If <userid> is not supplied, the call will return release groups starting from today for all artists and the user's release type filters won't apply. No auth.
      • limit: max 100
      • offset
      • mbid: optional artist mbid, if set filter by this artist.
      • since: return releases fetched after the specified mbid, cannot be combined with offset or mbid.
  • user[/<userid>]

    • GET: return user info and settings, <userid> is optional, auth is not.
    • POST: create a new user, no auth
      • email
      • password
      • activate: 1 to send an activation email
    • PUT: update user info and settings
    • DELETE: delete the user and all their data

The API is quite new and will probably change in the coming weeks. I suggest that you subscribe to the blog where such changes will be announced.

If you are going to use the API for commercial purposes (e.g. selling CDs or ads on the pages where the main content is pulled from the muspy API) I expect a 50% revenue share. Alternatively, you can donate these money to MusicBrainz, Django or FreeBSD. If you are a free software project, feel free to use the API as you see fit.