Getting started
Welcome to the music industry’s unified data layer. Soundcharts aggregates and synchronizes real-time data from hundreds of sources - streaming, social media, radio, and charts - into a single, high-frequency API.
Our documentation is fully interactive. Use the "Try it out" button on any endpoint to execute requests directly from your browser.
Soundcharts API is available on all plans.
Create an account
Sign up to generate your credentials and start building with 1,000 free requests (no credit card required).
Go to sign upEnterprise Data Dump & Feed
Need large-scale bulk delivery? We can provide full data dump & data feed directly to your storage (S3, GCS, ClickHouse, Databricks, etc.) on demand.
Request data deliveryAuthentication
All requests must be made over HTTPS. Soundcharts supports two authorization methods:
-
Access tokens
are recommended for new integrations. Generate a token with your client credentials, then send it with the
Authorizationheader. -
Legacy API keys
remain supported for existing integrations using
x-app-idandx-api-key.
See the Authorization guide for token generation, request examples, and legacy header details.
Sandbox & production environment
The Soundcharts API uses a single base URL for both sandbox and production requests.
Base URL:
https://customer.api.soundcharts.com
The environment is determined by the credentials used for the request. Sandbox credentials return the limited sandbox dataset; production credentials return the data available to your account and plan.
| Environment | Sandbox | Production |
|---|---|---|
| Dataset | Limited | Unlimited |
| Credentials | Sandbox credentials | Your account credentials |
| Authorization | Legacy sandbox headers are available for quick tests. | Use access tokens for new integrations, or legacy API keys for existing ones. |
| Access | Free, open to everyone. Learn more | Free version limited to 1,000 calls. Learn more |
Performance & Scalability
- Our infrastructure is designed for high-throughput ingestion and low-latency responses (average 200ms).
- You can track your commercial allowance (billing Quota) and technical thresholds (per-minute Rate Limit) programmatically using our dedicated usage endpoint.
- We recommend a maximum of 5,000 calls per minute to ensure optimal performance.
- For massive data synchronization or "quasi-real-time" updates of entire catalogs, please refer to our Live Feed & Data Dump solutions.
Error management
Soundcharts API follows standard HTTP specifications. In case of failure, the response contains an errors array providing granular details:
{
"errors": [
{
"key": "string",
"code": 0,
"message": "string"
}
]
}
Read more about error types in the help center.
Response Structure & Pagination
Every endpoint follows a consistent JSON envelope, making it easy to parse across your entire application.
Single object responses are returned when requesting a specific entity (e.g., a single artist or track).
{
"type": "string"
"object": {
}
}
For lists (eg. search results, chart positions), we use offset-based pagination.
-
itemsThe array of data objects. -
pageContains offset, total, and limit. Use the next and previous URL fields for seamless navigation.
{
"items": [
],
"page": {
"offset": 0,
"total": 100,
"next": null,
"previous": null,
"limit": 100
},
}
When fetching data linked to a specific entity (e.g., charts for a song), we include a related object at the root. This contains the parent entity’s metadata, allowing you to display context and cross-platform IDs without additional API calls.
{
"related": {
}
}
Python SDK
We provide an official Python SDK to handle request logic and error management.
pip install soundcharts
You can find the SDK's GitHub repository here: soundcharts/python-sdk