Difference between revisions of "MusicBrainz API/FAQ"

From MusicBrainz Wiki
m (Reosarevok moved page Development/WS FAQ to MusicBrainz API/FAQ)
Line 11: Line 11:
 
;Are there language bindings for the API?
 
;Are there language bindings for the API?
 
:Yes, in many different languages. See [[MusicBrainz API#Libraries|our list of external libraries]].
 
:Yes, in many different languages. See [[MusicBrainz API#Libraries|our list of external libraries]].
 +
;Is there any significant difference between the XML and JSON APIs?
 +
:For requesting data, the XML and JSON API are effectively equivalent. The XML API is the only one that allows [[MusicBrainz_API#Submitting_data|submitting data]] to MusicBrainz (but keep in mind only ratings, tags, barcodes and ISRCs can be submitted via the API at all; for most data additions you should use the website instead).
 
;What should I do if I encounter unexpected behaviour not covered in these docs?
 
;What should I do if I encounter unexpected behaviour not covered in these docs?
 
:You can ask question in [[IRC]] or in the [[discourse:|forums]].
 
:You can ask question in [[IRC]] or in the [[discourse:|forums]].

Revision as of 19:56, 10 July 2020

What can I do with the MusicBrainz API?
There are three types of GET requests you can use to request MusicBrainz data, as well as limited data submission.
Who can use the MusicBrainz API? Is it free?
Non-commercial use of this web service is free; please see our commercial plans or contact us if you would like to use this service commercially.
Do I need an API key?
Currently, no. But you must have a meaningful user-agent string.
Do I need to provide authentication?
Data submission, as well as requests that involve user information, require digest authentication.
Is there a limit to the number of requests I can make per second?
Yes. See our rate limiting rules.
Are there language bindings for the API?
Yes, in many different languages. See our list of external libraries.
Is there any significant difference between the XML and JSON APIs?
For requesting data, the XML and JSON API are effectively equivalent. The XML API is the only one that allows submitting data to MusicBrainz (but keep in mind only ratings, tags, barcodes and ISRCs can be submitted via the API at all; for most data additions you should use the website instead).
What should I do if I encounter unexpected behaviour not covered in these docs?
You can ask question in IRC or in the forums.
Check to see if a ticket has been filed in the bug tracker, and if not consider writing one.
What else should I know before I start using the API?
It'd probably be helpful to know:
So you're on version 2 of the API then? What happened to version 1?
The version 1 of the API was designed with the data structure of the original (pre-2011) version of the MusicBrainz database in mind. It was deprecated in 2011 when we changed to our current data schema, and after running (without further updates) for several years to avoid breaking any tools using it, it was finally taken down in 2019.