Web Services


The API allows you to call methods that respond in REST style xml. Individual methods are detailed in the menu on the left.

The API root URL is located at

Generally speaking, you will send a method parameter expressed as 'package.method' along with method specific arguments to the root URL. The API supports multiple transport formats but will respond in idiom xml by default.


  • Please use an identifiable User-Agent header on all requests. This helps our logging and reduces the risk of you getting banned.
  • Use common sense when deciding how many calls to make. For example, if you're making a web application, try not to hit the API on page load. Your account may be suspended if your application is continuously making several calls per second. See our terms of service for more.
  • We assume that you are using an RFC 3986-compliant HTTP client to access the web services. In particular, pay attention to your urlencoding. This will not be an issue for 99% of developers.


Use UTF-8 encoding when sending arguments to API methods.

Request Styles

You can get more information on how to work with REST requests or XML-RPC requests when calling the API.


The authentication protocol allows you to perform actions on user accounts in a manner that is secure for users. All write services require authentication.


You can use our Scrobbling API to send listening information to user profiles. Useful for media players looking to integrate with


Join the Web Services group to receive notifications about new Web Services, access to beta API's, provide feedback and discuss development with other developers.

Terms of Service

For our Terms of Service please see here