Spotify Podcast Episodes Scraper avatar

Spotify Podcast Episodes Scraper

Pricing

from $3.60 / 1,000 show catalogs

Go to Apify Store
Spotify Podcast Episodes Scraper

Spotify Podcast Episodes Scraper

Collect show metadata, episode catalogs, and current Spotify podcast chart rankings from public Spotify sources. Add show URLs or IDs, choose chart categories and markets, and save structured rows for research.

Pricing

from $3.60 / 1,000 show catalogs

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

🎙️ Read Spotify podcast charts and show catalogs

Spotify Podcast is for podcast researchers, publishers, and analysts who need current chart snapshots or a show catalog. It saves structured dataset rows with show metadata, episode details, and chart context, so you can compare shows, inspect releases, and review current rankings.

📦 What the Spotify podcast rows contain

This Actor supports two row shapes. A show catalog row contains one submitted show and its available episodes. A chart ranking row contains one ranked show for a selected chart category and market.

Show catalog rows include show identity, publisher, description, artwork, episode count, media type, explicit status, languages, copyrights, topics, an available rating summary, and episode details.

Chart ranking rows include the current rank, show identity, publisher, description, artwork, movement label, chart category, market, source page, and observation time.

▶️ Run a Spotify podcast collection

Choose Show catalog and add one or more Spotify show URLs or IDs. Or choose Podcast charts and add one or more supported chart categories and one supported market. Fields for the other target are ignored. The Actor rejects unsupported categories and unsupported markets or unavailable category and market combinations.

Result limits

Maximum items per source caps episodes for each show in Show catalog mode. In Podcast charts mode, it caps ranked shows for each selected chart. Leave it empty to collect all available results until the source is exhausted.

⚙️ Input

Use the input form to choose a target and set only the fields for that target.

FieldTypeWhat it does
targetstringChoose shows for show catalogs or charts for current podcast chart rankings.
showUrlsOrIdsarray of stringsOne or more Spotify show URLs or IDs for Show catalog mode. Podcast charts ignores this field.
chartCategoriesarray of stringsOne or more supported Spotify podcast chart categories for Podcast charts mode.
chartMarketstringOne supported Spotify market code for Podcast charts mode.
maxItemsintegerCaps episodes for each show or ranked shows for each selected chart. Leave it empty to collect all available results until the source is exhausted.

Example input

This successful default input collects up to 10 episodes for one show. Leave maxItems empty to collect all available results until the source is exhausted.

{
"target": "shows",
"showUrlsOrIds": [
"https://open.spotify.com/show/4rOoJ6Egrf8K2IrywzwOMk"
],
"maxItems": 10
}

🧾 Output

The default dataset contains one row for each collected show catalog or chart ranking entry. Use the recordType value to tell the two shapes apart.

Show catalog fields

FieldTypeWhat it does
recordTypestringIdentifies this row as showCatalog.
showobjectHolds the show profile and enrichment fields.
show.idstringStable Spotify show ID.
show.urlstringSpotify page for the show.
show.namestringName of the podcast show.
show.publisherstringPublisher of the show.
show.descriptionstringDescription supplied for the show.
show.artworkUrlstringShow artwork URL when Spotify supplies one.
show.totalEpisodeCountintegerTotal episodes listed for the show by Spotify.
show.mediaTypestringMedia type reported for the show by Spotify.
show.explicitbooleanWhether Spotify marks the show as explicit.
show.languagesarray of stringsLanguages listed for the show by Spotify.
show.copyrightsarray of objectsCopyright notices listed for the show by Spotify.
show.copyrights[].textstringCopyright text supplied by Spotify.
show.copyrights[].typestringCopyright type code supplied by Spotify.
show.topicsarray of stringsTopic labels supplied for the show by Spotify.
show.ratingobjectRating summary when Spotify supplies one.
show.rating.averagenumberAverage show rating reported by Spotify.
show.rating.countintegerNumber of ratings in the source summary.
episodesarray of objectsEpisodes collected for this show, up to the requested limit.
episodes[].idstringStable Spotify episode ID.
episodes[].urlstringSpotify page for the episode.
episodes[].titlestringTitle of the episode.
episodes[].descriptionstringDescription supplied for the episode.
episodes[].releaseDatestringRelease date supplied by Spotify. It may have year, month, or day precision.
episodes[].releaseDatePrecisionstringPrecision supplied for the release date.
episodes[].durationSecondsnumberEpisode length in seconds.
episodes[].explicitbooleanWhether Spotify marks the episode as explicit.
episodes[].artworkUrlstringEpisode artwork URL when Spotify supplies one.
episodes[].previewAudioUrlstringSpotify preview audio link when one is available.

Example show catalog row

{
"recordType": "showCatalog",
"show": {
"id": "4rOoJ6Egrf8K2IrywzwOMk",
"url": "https://open.spotify.com/show/4rOoJ6Egrf8K2IrywzwOMk",
"name": "The Joe Rogan Experience",
"publisher": "Joe Rogan",
"description": "The official podcast of comedian Joe Rogan.",
"artworkUrl": "https://i.scdn.co/image/ab6765630000ba8aa5906ae450ffdace2b4bac41",
"totalEpisodeCount": 2743,
"mediaType": "MIXED",
"explicit": true,
"languages": [
"en"
],
"topics": [
"Comedy"
],
"rating": {
"average": 4.6545038867945925,
"count": 953099
}
},
"episodes": [
{
"id": "6pyYr7TiTEPCeDxNReFFiO",
"url": "https://open.spotify.com/episode/6pyYr7TiTEPCeDxNReFFiO",
"title": "#2546 - Michael Button",
"description": "Michael Button is a YouTuber who explores ancient mysteries, lost history, and societal collapse.https://michaelbutton.substack.comhttps://www.youtube.com/@MichaelButton1 Perplexity: Download the app or ask Perplexity anything at https://pplx.ai/rogan. Visit https://ketone.com/Rogan for 30% OFF, or find Ketone-IQ at Target nationwide. Use code ROGAN at https://BlueChew.com to get 10% OFF + Free Overnight Shipping on your first order. Learn more about your ad choices. Visit podcastchoices.com/adchoices",
"releaseDate": "2026-08-26",
"releaseDatePrecision": "day",
"durationSeconds": 9108.543,
"explicit": true,
"artworkUrl": "https://i.scdn.co/image/ab6765630000ba8a21713a89589eda72594ead77",
"previewAudioUrl": "https://p.scdn.co/mp3-preview/ce31421178176c26be7dbf1c1a1ee41a255adac9.mp3"
}
]
}

Chart ranking fields

FieldTypeWhat it does
recordTypestringIdentifies this row as chartRanking.
rankintegerCurrent position of the show in the selected chart.
showobjectHolds the ranked show's public details.
show.idstringStable Spotify show ID.
show.urlstringSpotify page for the show.
show.namestringName of the ranked show.
show.publisherstringPublisher of the ranked show.
show.descriptionstringDescription supplied for the ranked show.
show.artworkUrlstringShow artwork URL when Spotify supplies one.
movementstringChart movement label supplied by Spotify.
chartobjectHolds chart, market, source, and observation details.
chart.categorystringSelected Spotify podcast chart category.
chart.marketstringSpotify market code used for the chart.
chart.sourceUrlstringSpotify page for this chart when one is available.
chart.observedAtstringTime when this chart position was observed.

Example chart ranking row

{
"recordType": "chartRanking",
"rank": 1,
"show": {
"id": "2K5tDp2QRuZy16KTWoWq6B",
"url": "https://open.spotify.com/show/2K5tDp2QRuZy16KTWoWq6B",
"name": "Spotify Live",
"publisher": "Spotify",
"description": "Spotify Live is a premium live music series built for fans featuring unforgettable performances from today’s most iconic artists.",
"artworkUrl": "https://i.scdn.co/image/ab67656300005f1f859c7317f65324c3b5bce785"
},
"chart": {
"category": "top-podcasts",
"market": "us",
"sourceUrl": "https://podcastcharts.byspotify.com/us/top-podcasts",
"observedAt": "2026-08-26T20:34:52.800Z"
},
"movement": "UNCHANGED"
}

💳 Pricing

Show catalog

Each successful show catalog collection is charged and includes available show metadata and episode listings.

Chart entry

Each successfully collected ranked show in a chart and market snapshot is charged. The active rates are shown in the Apify pricing panel before a run.

🔌 Integrations

Open the default dataset in Apify or read it through the Apify API. The dataset contains the structured rows described above.

Watch the Actor walkthrough:

❓ FAQ

Can I download full podcast episodes?

No. The Actor does not download full episode audio or transcripts. It includes a Spotify preview audio link only when Spotify supplies one.

Can I collect historical chart rankings?

No. Chart rows are current snapshots with the source movement label and observation time. Run the Actor again and keep each dataset if you need your own history.

Can I search Spotify by keyword?

No. Show catalog mode uses submitted Spotify show URLs or IDs. Podcast charts mode uses selected chart categories and a market.

Do I need a Spotify login?

No source login is needed. Use public Spotify show URLs or IDs, or choose public chart inputs.

Can I collect more than one show in a run?

Yes. Add one or more show URLs or IDs in Show catalog mode.

What does an empty maximum do?

It collects all available results until the source is exhausted. A set limit caps episodes for each show or ranked shows for each selected chart.

📝 Changelog

0.0: Initial release

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

Made with ❤️ by Maxime Dupré