How to get SoundCloud artist tracks
GET request to /v1/soundcloud/artist-tracks with your input. You get clean JSON back in seconds for 2 credits per call — no OAuth, scraping or platform SDKs. Artist track list — opaque cursor, native-window when the api-v2 page ends (2 credits; empty is 0).How to get SoundCloud artist tracks (step by step)
- 1
Get a free API key
Create a free Captapi account (100 credits, no card) and generate an API key from the dashboard.
- 2
Call the SoundCloud Artist Tracks API
Send an authenticated GET request to /v1/soundcloud/artist-tracks with your input. No OAuth, no scraping setup.
- 3
Read the JSON response
Parse the clean JSON response. Pass cache=true for a free 24h cache hit; default is always fresh.
Code example
curl "https://api.captapi.com/v1/soundcloud/artist-tracks?url=https%3A%2F%2Fsoundcloud.com%2Fflume" \
-H "Authorization: Bearer capt_live_..."
# or: -H "x-api-key: capt_live_..."What the response looks like
{
"success": true,
"data": {
"platform": "soundcloud",
"artistId": "2976616",
"artistUrl": "https://soundcloud.com/flume",
"artist": {
"id": "2976616",
"handle": "flume",
"name": "Flume",
"url": "https://soundcloud.com/flume",
"avatar": "https://i1.sndcdn.com/avatars-sAZPcKyZpXJ0J0u5-JHfNSg-large.jpg",
"followers": 2227831,
"verified": true
},
"requested": 2,
"totalReturned": 2,
"listingHits": 2,
"hydrateFailures": 0,
"nextCursor": "eyJ1IjoiMjk3NjYxNiIsIm8iOiIyMDI1LTA4LTIyVDAwOjAwOjAwLjAwMFosdHJhY2tzLDAwMDAwMDAwMDAyMTE5ODYyMjMyIn0",
"hasMore": true,
"tracks": [
{
"platform": "soundcloud",
"id": "2119863225",
"url": "https://soundcloud.com/flume/all-of-the-worlds",
"title": "All Of The Worlds",
"genre": "Electronic",
"durationMs": 125780,
"plays": 33195,
"likes": 979,
"reposts": 61,
"downloads": 0,
"comments": 24,
"publishedAt": "2025-06-26T13:01:21Z",
"releaseDate": "2025-08-22T00:00:00Z",
"license": "all-rights-reserved",
"isrc": "US38Y2548239",
"downloadable": false,
"streamable": true,
"waveformUrl": "https://wave.sndcdn.com/0AX3G8zwAkiV_m.json",
"artwork": "https://i1.sndcdn.com/artworks-bvBQ1BhZQSM2-0-large.jpg",
"tags": []
},
{
"platform": "soundcloud",
"id": "2119862232",
"url": "https://soundcloud.com/flume/feel-ur-love",
"title": "Feel Ur Love",
"genre": "Electronic",
"durationMs": 251638,
"plays": 23538,
"likes": 596,
"reposts": 17,
"downloads": 0,
"comments": 6,
"publishedAt": "2025-06-26T13:00:44Z",
"releaseDate": "2025-08-22T00:00:00Z",
"license": "all-rights-reserved",
"isrc": "US38Y2548242",
"downloadable": false,
"streamable": true,
"waveformUrl": "https://wave.sndcdn.com/YLJYjhEwU6KR_m.json",
"artwork": "https://i1.sndcdn.com/artworks-wu5UUJhLSWSO-0-large.jpg",
"tags": []
}
]
}
}Billing metadata (credits charged, cache hit/miss) is returned in the X-Captapi-Credits and X-Captapi-Cache response headers.
Request parameters
| Name | Type | Required | Description |
|---|---|---|---|
| url | string | Yes | SoundCloud artist profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| limit | integer | No | Max items to return (default 20, max 100). Flat 2 credits per call. |
| cursor | string | No | Opaque pagination cursor from the previous nextCursor. Leave empty for the first page. Do not edit or invent values. |
| cache | boolean | No | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
Frequently asked questions
What does the SoundCloud Artist Tracks API do?
The SoundCloud Artist Tracks API lets you list items in bulk with metadata from a public SoundCloud sound or track using one GET request to /v1/soundcloud/artist-tracks. It returns clean JSON — no OAuth or infrastructure setup required.
How many credits does the SoundCloud Artist Tracks API cost?
Each successful call costs 2 credits. Pass cache=true to serve from the 24h cache (0 credits on hit); default is always fresh. Selected profile endpoints also accept cacheMaxAge=1d|3d|7d|14d|30d. Failed or empty results are never charged.
Do I need a SoundCloud API key or OAuth?
No. A single Captapi key works across every platform Captapi supports — YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, Rumble, Spotify, Kwai, and more. We handle proxies, rate limits, retries, and authentication for you.
Why did I get 17 tracks when I asked for 20?
SoundCloud's linked_partitioning can return a short page and still set hasMore. Read requested / listingHits / hydrateFailures / truncatedReason. listingHits=17, hydrateFailures=0, truncatedReason=platform-page means SoundCloud served 17 and we mapped all of them — pass nextCursor for the next page.
Why did paging stop with native-window instead of catalog-end?
The public api-v2 window usually ends before the artist's full catalogue. We peek the next page before emitting nextCursor, so hasMore:false + truncatedReason=native-window means stop — we will not hand you a token and then 400 it. catalog-end is only when SoundCloud itself omits next_href. Empty pages bill 0 credits.
Why is comments on every row?
Live artist-tracks rows always include comments as a number (including 0). tags is always an array; [] means the track has no tags.
Is the SoundCloud Artist Tracks API suitable for production use?
Yes. It is a stable REST endpoint with predictable JSON and automatic retries. Pass cache=true to serve from the 24h cache (0 credits on hit); default is always fresh. Selected profile endpoints also accept cacheMaxAge=1d|3d|7d|14d|30d. Use it for analytics, monitoring, and content automation.
Ready to get SoundCloud artist tracks?
Start free with 100 credits — no credit card required.
Get your free API key