The Before The Data API gives you programmatic access to our artist scouting intelligence, including real-time metrics, spike detection, and signing alerts.
All requests require an API key passed as a Bearer token in the Authorization header.
curl -H "Authorization: Bearer btd_your_key_here" \ https://beforethedata.com/api/v1/artists
API keys are issued on request. Contact chad@beforethedata.com for access.
https://beforethedata.com/api/v1
| Parameter | Type | Description |
|---|---|---|
| id | string | Return a single artist by Firebase document ID |
| new | integer | Only artists added in the last N days (e.g. new=7) |
| tier | string | Filter by tier: watch, on-the-rise, breaking, established |
| signed | boolean | Filter by signed status: true or false |
| fields | string | Set to basic for minimal response (no songs or scouting report) |
| limit | integer | Max results to return (default 100, max 200) |
Example: get artists added in the last 14 days
curl -H "Authorization: Bearer btd_your_key" \ "https://beforethedata.com/api/v1/artists?new=14"
Example response:
{
"success": true,
"count": 3,
"data": [
{
"id": "abc123",
"name": "Artist Name",
"photo": "https://...",
"date_added": "2026-04-01",
"signed_status": "unsigned",
"tier": "on-the-rise",
"links": {
"spotify": "https://open.spotify.com/artist/...",
"tiktok": "https://www.tiktok.com/@...",
"instagram": "https://www.instagram.com/..."
},
"metrics": {
"spotify_streams": 150000,
"monthly_listeners": 45000,
"tiktok_followers": 28000,
"instagram_followers": 12000,
"social_score": 72
},
"songs": [
{
"id": "am_123456",
"name": "Song Title",
"streams": 95000,
"ugc_tiktok": 42,
"ugc_instagram": 15,
"artwork": "https://..."
}
],
"scouting_report": "Full analysis text...",
"total_songs": 4
}
],
"_meta": {
"api_version": "v1",
"authenticated_as": "Partner Name",
"timestamp": "2026-04-11T12:00:00.000Z"
}
}
| Parameter | Type | Description |
|---|---|---|
| days | integer | Look-back period in days (default 3, max 30) |
Example:
curl -H "Authorization: Bearer btd_your_key" \ "https://beforethedata.com/api/v1/spikes?days=7"
Example response:
{
"success": true,
"count": 2,
"period_days": 7,
"data": [
{
"artist_name": "Stan Coe",
"metric": "tiktok_followers",
"previous": 12100,
"current": 23900,
"delta": 11800,
"percent_change": 97.5,
"period_days": 7,
"tiktok": "https://www.tiktok.com/@stanncoe"
}
]
}
No parameters. Returns all artists flagged as signed or with major label copyright detected.
Example:
curl -H "Authorization: Bearer btd_your_key" \ "https://beforethedata.com/api/v1/signings"
Example response:
{
"success": true,
"count": 1,
"data": [
{
"artist_name": "Artist Name",
"signed_status": "signed",
"label_songs": [
{
"song_name": "Track Title",
"pline": "2026 Atlantic Records",
"label_detected": "atlantic"
}
],
"total_label_songs": 1
}
],
"_meta": {
"labels_tracked": ["sony", "universal", "warner", "..."]
}
}
API requests are limited to 100 requests per hour per key. If you exceed this limit, you will receive a 429 Too Many Requests response. Contact us if you need higher limits.
All errors return a JSON object with an error field and a human-readable message.
{
"error": "unauthorized",
"message": "Invalid or missing API key."
}
| Status | Error | Description |
|---|---|---|
| 401 | unauthorized | Missing or invalid API key |
| 404 | not_found | Artist ID does not exist |
| 405 | method_not_allowed | Only GET requests are supported |
| 429 | rate_limited | Too many requests |
| 500 | server_error | Internal error |
For API access, questions, or partnership inquiries: chad@beforethedata.com