Apple Podcasts Scraper — iTunes Search avatar

Apple Podcasts Scraper — iTunes Search

Pricing

from $5.00 / 1,000 podcast scrapeds

Go to Apify Store
Apple Podcasts Scraper — iTunes Search

Apple Podcasts Scraper — iTunes Search

Search Apple Podcasts (iTunes) for any keyword: podcast name, author, episode count, rating, genre and feed URL as clean JSON. Uses the public iTunes Search API. No API key required.

Pricing

from $5.00 / 1,000 podcast scrapeds

Rating

0.0

(0)

Developer

Oaida Adrian

Oaida Adrian

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

Apple Podcasts Scraper — iTunes Search to Clean JSON

Search Apple Podcasts (iTunes) by keyword and get every show back as clean, structured JSON — podcast name, author, episode count, content rating, primary genre, feed URL and artwork. The Actor uses Apple's public iTunes Search API, so there is no API key, no login and no proxy budget.

Built for podcast directories, newsletter writers, media researchers and anyone assembling a podcast discovery feed.

Why this Actor

  • No API key, no login, no proxy budget — speaks directly to Apple's public, unauthenticated iTunes Search API.
  • Rich podcast metadata — episode count, primary genre, content advisory, release date and country on every row.
  • Feed URL included — the feedUrl lets you subscribe, validate or re-publish episodes without a second lookup.
  • Multi-keyword support — search several topics or niches in a single run, one item per podcast per keyword.
  • Pay per result — a small fee per podcast returned; a 100-podcast run costs a few cents, no subscription.

How it works

For each keyword the Actor calls the iTunes Search API (entity=podcast), normalises Apple's response, and outputs one dataset item per podcast — up to maxPodcastsPerKeyword per keyword. All results come from Apple's index at search time, so you always see the current show list for your terms.

Input

{
"keywords": ["technology", "true crime"],
"maxPodcastsPerKeyword": 10
}
FieldTypeDescription
keywordsarray of stringsSearch terms — required
maxPodcastsPerKeywordintegerPodcasts to return per keyword (default 10, max 200)

Output (one item per podcast)

{
"keyword": "technology",
"podcastId": 1530262988,
"podcastName": "The Tech Podcast",
"author": "Tech Media",
"trackCount": 250,
"contentAdvisoryRating": "Clean",
"primaryGenreName": "Technology",
"genres": ["Technology", "News", "Business"],
"podcastUrl": "https://podcasts.apple.com/us/podcast/the-tech-podcast/id1530262988",
"feedUrl": "https://feeds.example.com/techpodcast.xml",
"artworkUrl": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",
"releaseDate": "2026-07-01T00:00:00Z",
"country": "USA"
}

Use cases

  • 🎙️ Podcast discovery — build a browsable directory of shows in any niche (AI, finance, sports, wellness…).
  • ✍️ Newsletter content — curate fresh shows for a tech or culture newsletter with author and genre context.
  • 📊 Media research — map the podcast landscape for a topic: who publishes, how often, under which genres.
  • 🤖 Feed aggregation — collect feedUrl values to subscribe or re-publish episodes automatically.
  • 🔎 Competitor tracking — run weekly and watch which shows enter the top results for your keywords.

Run it from the API

curl -X POST "https://api.apify.com/v2/acts/darknezz~apple-podcasts-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"keywords":["technology"],"maxPodcastsPerKeyword":25}'

Python:

import requests
resp = requests.post(
"https://api.apify.com/v2/acts/darknezz~apple-podcasts-scraper/run-sync-get-dataset-items",
params={"token": "YOUR_TOKEN"},
json={"keywords": ["true crime"], "maxPodcastsPerKeyword": 50},
timeout=300,
)
podcasts = resp.json()

Python (Apify SDK):

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("darknezz~apple-podcasts-scraper").call(
run_input={"keywords": ["true crime", "ai"], "maxPodcastsPerKeyword": 20},
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["podcastName"], "|", item["author"], "|", item["feedUrl"])

Worked example: running the Actor with {"keywords": ["true crime"], "maxPodcastsPerKeyword": 5} returns the top five Apple Podcasts results for that term — each row carries the show's author, episode count, primary genre, content advisory rating, artwork URL and the feed URL you can subscribe to directly.

Scheduling: attach an Apify Schedule (e.g. weekly) to track new shows entering your niche, or feed the results into an integration via Apify's webhooks.

Pricing

Pay per event — a small fee for each podcast extracted, plus Apify's standard platform events (actor start + dataset item). No subscription and no minimums: you pay only for what you run.

FAQ

Do I need an Apple ID or API key? No. The Actor uses Apple's public iTunes Search API, which requires no authentication.

Why does trackCount vary between runs? It is Apple's reported episode count at search time; very new or quiet shows may report lower counts.

Can I fetch episodes, not just shows? Not yet — this Actor focuses on podcast search results. Open an issue if you need episode-level scraping.

How many podcasts can I get? Up to maxPodcastsPerKeyword per keyword, with a maximum of 200 per keyword.

Is scraping this legal? The iTunes Search API is Apple's public, unauthenticated endpoint. You are responsible for complying with Apple's terms and applicable laws for how you use the data.

Can I filter by country or language? The Actor returns Apple's country and genre fields per result; to bias a search toward a specific storefront, include the country in the keyword itself (e.g. "AI technology (UK)") — Apple's API matches the term against its localised index.

What size is the artwork? artworkUrl points at Apple's 600×600 JPEG. You can request larger or smaller variants by editing the URL path (e.g. 600x600bb.jpg300x300bb.jpg) — no extra API call needed.

Why would I want the feed URL? feedUrl is the RSS endpoint of the show. Subscribe to it in any podcatcher, validate it in your own directory, or re-publish episodes on your site — it is the same feed Apple itself consumes.

What is the fastest way to try it? Open the Actor's page in Apify Console, click Try in Console, type a keyword, and hit Run — results appear in the dataset within seconds.