To contact the team and become an API user, please fill out this form.
We can also send an incremental live feed/upload a data dump to a remote storage (eg. S3 bucket), in a custom format. If interested, please fill out the above form and state your exact needs.
Welcome to Soundcharts API, the all-in-one source for real-time data on millions of music entities, designed to help you build your distribution dashboard, mobile application, or reporting tool.
Our API is:
Soundcharts API needs special headers to authenticate requests.
x-app-id is used to retrieve your customer rights.The sandbox environment is free & open to everyone.
The endpoint is located at https://customer.api.soundcharts.com or accessible in the examples here.
You can use the following credentials:
The production environment is reserved for our registered customers.
The endpoint is also located at https://customer.api.soundcharts.com. Contact us to get your production credentials!
The response contains an x-quota-remaining header with the number of remaining requests.
We do not set hard rate limits to let you get the data you need as fast as possible. However, we recommend not to exceed a maximum of 10k calls/minute.
All our API plans are subject to monthly quotas.
Once your quota is consumed, new requests will fail with an explicit error message.
Soundcharts API follows HTTP specifications regarding error handling, each method describes the available response code it returns
The response always contains an errors array at the root level that can provide more detailed error messages :
{
"errors": [
{
"key": "string",
"code": 0,
"message": "string"
}
]
}
Single object response have the following form:
{
"type": "string"
"object": {
}
}
Collections responses contains an items array and a page object to help you navigate through paged results:
{
"items": [
],
"page": {
"offset": 0,
"total": 100,
"next": null,
"previous": null,
"limit": 100
},
}
When requesting a collection related to a specific entity (ie getting charts position for a song) a related object containing the basic entity information is present in the response:
{
"related": {
}
}