Spotify Scraper — Tracks, Artists, Playlists, Charts
Pricing
from $0.12 / 1,000 scraped items
Spotify Scraper — Tracks, Artists, Playlists, Charts
Fast, cheap, full-coverage Spotify scraper. 50+ data categories including tracks, artists, albums, playlists, concerts, charts (Top 200 / Viral), lyrics, credits, recommendations, AI insights. Pay-per-event — no monthly fee.
Pricing
from $0.12 / 1,000 scraped items
Rating
5.0
(1)
Developer
Eduardo Airaudo
Maintained by CommunityActor stats
1
Bookmarked
55
Total users
10
Monthly active users
27 days
Issues response
20 days ago
Last modified
Categories
Share
Spotify Scraper — Full Coverage, Pay-Per-Event
Extract any public Spotify data: tracks, artists, albums, playlists, users, podcasts, concerts, charts, lyrics, credits, recommendations, AI insights and more. 40+ categories, accepts Spotify IDs, URLs or search keywords.
Built to undercut canadesk/spotify ($10/mo + usage) and canadesk/spotify-plus ($16/mo + usage):
- $0 monthly rental fee
- $0.20 per 1,000 result items (pay-per-event)
- $0.30 per 1,000 single-entity fetches (bulk-fetch)
- Raw data optional — slim output by default
Features vs. canadesk/spotify
| Feature | canadesk | canadesk-plus | This actor |
|---|---|---|---|
| Monthly rental | $10 | $16 | $0 |
| Tracks / Artists / Albums | ✅ | ✅ | ✅ |
| Playlists / Users / Podcasts | ✅ | ✅ | ✅ |
| Lyrics (word-synced + translations) | ✅ | ✅ | ✅ |
| Track credits (producers, writers) | ❌ | ❌ | ✅ |
| Artist — appears on / featuring | ❌ | ❌ | ✅ |
| Artist — discovered on (playlists) | ❌ | ❌ | ✅ |
| Artist — related / discography rich | ❌ | partial | ✅ |
| Concert feed + concert locations | partial | partial | ✅ |
| Spotify Charts — Top 200 / Viral | ❌ | ❌ | ✅ |
| Top 20 by monthly listeners/followers | ❌ | ❌ | ✅ |
| Recommendations (seed → playlist) | ❌ | ❌ | ✅ |
| Search suggestions (autocomplete) | ❌ | ❌ | ✅ |
| Lyrics search | ❌ | ❌ | ✅ |
| Partner-API rich payloads | ❌ | ❌ | ✅ |
| Cross-platform enrichment | ❌ | ❌ | ✅ |
| No 50-result cap | ❌ | ✅ | ✅ |
| No simultaneous-entry cap | ❌ | ✅ | ✅ |
Input
All input fields are documented in the input form.
| Field | Type | Purpose |
|---|---|---|
mode | string | get / search / chart |
category | string | 42 categories (see below) |
queries | array | IDs, URLs, spotify:*:* URIs or search keywords |
maxResultsPerQuery | int | 1 – 1000 (default 50) |
market | string | ISO country (default US) |
lyricsLanguage | string | ISO lang for lyric translations |
chartDate | string | YYYY-MM-DD for historical charts |
concurrency | int | Parallel requests (1 – 20) |
delayMs | int | Pause between requests |
includeRaw | bool | Attach raw upstream JSON |
enrichWithContrast | string | ytmusic, applemusic, amazonmusic, pandora, gaana, tencent |
Categories
Single entities (mode=get):
track, track_credits, track_lyrics, album, album_tracks, album_metadata, artist, artist_overview, artist_albums, artist_singles, artist_appears_on, artist_discovered_on, artist_featuring, artist_related, artist_discography_overview, artist_concerts, artist_concert_locations, playlist, playlist_tracks, user_profile, user_followers, recommendations, partner_playlist, partner_track, partner_album, partner_artist_overview, partner_artist_discography.
Search (mode=search):
search_multi, search_tracks, search_artists, search_albums, search_playlists, search_users, search_podcasts, search_top_results, search_suggestions, search_lyrics.
Charts (mode=chart):
chart_top_200_tracks, chart_viral_tracks, chart_top_artists, chart_top_albums, chart_top_monthly_listeners, chart_top_followers.
Example inputs
Get artist overview from URL
{"mode": "get","category": "artist_overview","queries": ["https://open.spotify.com/artist/06HL4z0CvFAxyc27GXpf02"]}
Search tracks
{"mode": "search","category": "search_tracks","queries": ["bohemian rhapsody","taylor swift anti-hero"],"maxResultsPerQuery": 20,"market": "US"}
Top 200 tracks — Mexico
{"mode": "chart","category": "chart_top_200_tracks","queries": ["MX"],"chartDate": "2026-04-22"}
Word-synced lyrics with Spanish translation
{"mode": "get","category": "track_lyrics","queries": ["4iV5W9uYEdYUVa79Axb7Rh"],"lyricsLanguage": "es"}
Get song credits (writers, producers, performers)
No API key is required when you run this Actor on Apify. Select get, choose
track_credits, and paste a Spotify track ID, URL, or URI:
{"mode": "get","category": "track_credits","queries": ["4iV5W9uYEdYUVa79Axb7Rh"]}
Output
Each item is a flat JSON object with:
category— what was scrapedmode— get / search / chartquery— original inputid,type,name,uri,url— normalized entity fields- plus every field returned by the upstream API
- optional
raw— full upstream JSON (includeRaw=true) - optional
contrast— cross-platform data (enrichWithContrast)
Only successful results are pushed to the default dataset and charged. Failed
queries are written to the ERRORS record in the run's key-value store with
charged: false, and are summarized in RUN_SUMMARY.failedQueries.
If every query fails, the Actor run finishes with FAILED status so automated
retry policies can detect it. Partial runs keep their successful dataset rows
and list the uncharged failures in ERRORS.
Pricing (pay-per-event)
| Event | Price | When charged |
|---|---|---|
result-item | $0.0002 | Per successful dataset item (≈ $0.20 per 1k rows) |
bulk-fetch | $0.0003 | Reserved for single-entity fetches |
There is no run-start fee and no automatic apify-default-dataset-item
event. Empty responses, invalid inputs, upstream errors, and failed runs cost
the customer $0.00.
Example: a run that pushes 10,000 track rows costs $2.00 total. The same run on canadesk/spotify-plus would cost $16/mo rental + their per-result fees.
No API key required on Apify
Click Try for free, choose a category, add your Spotify IDs or URLs, and start the run. Billing is handled by Apify's pay-per-event system. The Actor's upstream credential is configured privately by the publisher and is never an input that customers need to provide.
Apify PPE buys Actor runs and dataset results; it does not issue a reusable REST API key. If you need an API key for requests from your own application, use RapidAPI or the Direct Portal below.
Using the API outside Apify
If you see upstream 401 on ... {"error":"Invalid API key"} in the actor
log, or you're trying to hit spotify-proxy.checkleaked.cc yourself outside
an Apify run: that's expected. The upstream is private and only
authorized for requests coming through this actor's Apify runtime.
To call the Spotify data API directly (no Apify wrapper, your own integration, your own rate limits), purchase a key from the Direct API Key Portal. Direct keys are delivered there after checkout and authenticate requests made outside Apify.
Local development
npm installnpm run buildapify run
Edit storage/key_value_stores/default/INPUT.json to change input between runs.
License
MIT