Web Service: Difference between revisions

From MusicBrainz Wiki
Jump to navigationJump to search
(No need for a big scary warning if it's OK to use the REST web service)
mNo edit summary
Line 1: Line 1:
<small>[[Products]] > WebService </small>
<small>[[Products]] > WebService </small>

=MusicBrainz Web Services=


[[MusicBrainz]] supports two Web Services currently:
[[MusicBrainz]] supports two Web Services currently:
Line 13: Line 11:
This new Web Service has been created to provide a modern Web Service based on the best practices established by the most used Web Services at Amazon and Google. This service uses a URL scheme using [http://en.wikipedia.org/wiki/REST REST] concepts and delivers [http://www.w3.org/XML/ XML] responses via the standard HTTP protocol. This Web Service should be used for all new development.
This new Web Service has been created to provide a modern Web Service based on the best practices established by the most used Web Services at Amazon and Google. This service uses a URL scheme using [http://en.wikipedia.org/wiki/REST REST] concepts and delivers [http://www.w3.org/XML/ XML] responses via the standard HTTP protocol. This Web Service should be used for all new development.


The XML returned by this Web Service is documented in [[MusicBrainz XML Meta Data|MusicBrainzXMLMetaData]] and the overall Web Service is described in [[XML Web Service|XMLWebService]].
The XML returned by this Web Service is documented in [[MusicBrainz XML Meta Data]] and the overall Web Service is described in [[XML Web Service]].


To access the WebService you can use standard XML and HTTP tools to retrieve the data, or you can use our Python based [[python-musicbrainz2|PythonMusicBrainz2]] library. libmusicbrainz version 3 and up will support the XML Web Service; see [[libmusicbrainz Download|libmusicbrainzDownload]] for more information.
To access the web service you can use standard XML and HTTP tools to retrieve the data, or you can use our Python based [[python-musicbrainz2]] library. [[libmusicbrainz]] version 3 and up supports the XML Web Service.


[[Image:Attention.png]] '''Note''': All users of the XML web service must ensure that each of their client applications never make more than ONE web service call per second. Making more than one call per second drives up the load on the servers and prevents others from using MusicBrainz. If you impact the server by making more than one call per second, your IP address may be blocked preventing all further access to MusicBrainz.
[[Image:Attention.png]] '''Note''': All users of the XML web service must ensure that each of their client applications never make more than ONE web service call per second. Making more than one call per second drives up the load on the servers and prevents others from using MusicBrainz. If you impact the server by making more than one call per second, your IP address may be blocked preventing all further access to MusicBrainz.
Line 23: Line 21:
The RDF Web Service predates the term Web Service and was developed before best practices for Web Services had been established. Consequently the Web Service is not as coherent, concise and easy to use as the XML Web Service. This Web Service should not be used for new development.
The RDF Web Service predates the term Web Service and was developed before best practices for Web Services had been established. Consequently the Web Service is not as coherent, concise and easy to use as the XML Web Service. This Web Service should not be used for new development.


If you are using [[libmusicbrainz]] version 2.x or earlier or [[libtunepimp]] to access [[MusicBrainz]] currently, then you are using this old web service. You are strongly encouraged to migrate your existing application over to the new XML Web Service.
If you are using [[libmusicbrainz]] version 2.x or earlier or [[libtunepimp]] to access MusicBrainz currently, then you are using this old web service. You are strongly encouraged to migrate your existing application over to the new XML Web Service.


A exact date for scrapping this old Web Service has not been set -- we will certainly support this service through 2007. However once we move to the [[Next Generation Schema|NextGenerationSchema]], we may very well stop supporting this Web Service.
A exact date for scrapping this old Web Service has not been set -- we will certainly support this service through 2009. However once we move to the [[Next Generation Schema]], we well stop supporting this Web Service.


For some documentation on this Web Service see our [[RDF]] page.
For some documentation on this Web Service see our [[RDF]] page.


[[Category:To Be Reviewed]] [[Category:WikiDocs Page]] [[Category:Products]] [[Category:Development]]
[[Category:WikiDocs Page]] [[Category:Products]] [[Category:Development]]

Revision as of 12:31, 5 November 2009

Products > WebService

MusicBrainz supports two Web Services currently:

  1. A new REST styled XML based Web Service.
  2. The old RDF based Web Service. Attention.png This service is now deprecated and should NOT be used for new development!

Read on for details on these two web services.

XML Web Service

This new Web Service has been created to provide a modern Web Service based on the best practices established by the most used Web Services at Amazon and Google. This service uses a URL scheme using REST concepts and delivers XML responses via the standard HTTP protocol. This Web Service should be used for all new development.

The XML returned by this Web Service is documented in MusicBrainz XML Meta Data and the overall Web Service is described in XML Web Service.

To access the web service you can use standard XML and HTTP tools to retrieve the data, or you can use our Python based python-musicbrainz2 library. libmusicbrainz version 3 and up supports the XML Web Service.

Attention.png Note: All users of the XML web service must ensure that each of their client applications never make more than ONE web service call per second. Making more than one call per second drives up the load on the servers and prevents others from using MusicBrainz. If you impact the server by making more than one call per second, your IP address may be blocked preventing all further access to MusicBrainz.

RDF Web Service

The RDF Web Service predates the term Web Service and was developed before best practices for Web Services had been established. Consequently the Web Service is not as coherent, concise and easy to use as the XML Web Service. This Web Service should not be used for new development.

If you are using libmusicbrainz version 2.x or earlier or libtunepimp to access MusicBrainz currently, then you are using this old web service. You are strongly encouraged to migrate your existing application over to the new XML Web Service.

A exact date for scrapping this old Web Service has not been set -- we will certainly support this service through 2009. However once we move to the Next Generation Schema, we well stop supporting this Web Service.

For some documentation on this Web Service see our RDF page.