Apple Podcasts Show Lookup & RSS URL Resolver
Pricing
from $1.00 / 1,000 successful shows
Apple Podcasts Show Lookup & RSS URL Resolver
Resolve Apple Podcasts show IDs or URLs to catalog metadata and RSS feed URLs. Bounded official API lookups, deduplication and explicit statuses. No search, audio or feed scraping.
Pricing
from $1.00 / 1,000 successful shows
Rating
0.0
(0)
Developer
Technical Dost Solutions
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Security
Limited permissionsShare
Turn Apple Podcasts show IDs or show URLs into clean catalog records with their RSS feed URLs. This Actor uses Apple's documented, public iTunes root lookup API, not a browser scraper. No Apple login, API key or proxy is required.
Useful for resolving known podcast lists, checking which supplied shows are listed in a storefront, joining podcast IDs to public publisher and category metadata, and obtaining feed URLs for a separate, authorized feed-processing workflow.
Pricing
$1 per 1,000 found shows. $0.00005 per run. Standard-run platform usage is included. Only successful eligible rows in the default dataset trigger the result charge. Error, not-found, skipped and robots-denied diagnostics do not trigger a result charge. The run fee, where listed, still applies to empty or failed runs. Memory is limited to 256–512 MB. Set a maximum run cost in Apify; inspect the actual dataset and run charge breakdown after an interruption. Input item limits bound work and do not replace the run spending limit.
What this does
- Accepts 1–100 show IDs or HTTPS Apple Podcasts show URLs per run.
- Deduplicates IDs, including an ID supplied both directly and in a URL.
- Returns show title, publisher, Apple Podcasts URL, catalog-provided RSS URL, genres, episode count, explicitness, catalog date and storefront.
- Returns successful
foundrecords in the default dataset. Preservesnot_found,errorandskippedrecords separately inLOOKUP_DIAGNOSTICSso they do not trigger a per-result dataset charge. - Checks the current iTunes robots policy before lookup, batches at most 20 IDs and spaces sequential requests by 4 seconds by default.
What this does not do
This is not keyword discovery or a podcast review scraper. You must already know the show IDs or URLs. It does not call the search endpoint, scrape Apple Podcasts pages, inspect publisher websites, fetch or validate RSS feeds, collect episodes, download artwork or audio, retrieve transcripts, or find private contact details. It does not maintain cross-run state or emit a change feed.
feedUrl is the URL reported by Apple's catalog. It is not proof that the feed is accessible or valid. episodeCount and catalogReleaseDate are Apple's catalog fields; the date is not a verified latest-episode publication timestamp. Catalog data may be stale, incomplete or different across storefronts. A not-found result can mean a wrong ID, a non-podcast ID, a removed show or regional unavailability.
Example input
{"shows": ["1200361736","https://podcasts.apple.com/us/podcast/planet-money/id290783428"],"country": "US","requestIntervalMillis": 4000}
The show component of an episode link is accepted, but the result is the parent show, not the episode. Only exact podcasts.apple.com and itunes.apple.com HTTPS show URLs are accepted. Numeric IDs must be strings. Other hosts, credentials, alternate ports and search URLs are rejected before network activity.
Inputs
| Field | Default | Limits |
|---|---|---|
shows | Required | 1–100 numeric strings or Apple Podcasts show URLs |
country | US | Two-letter storefront code, such as US, GB or IN |
requestIntervalMillis | 4000 | Integer 3500–30000 |
Defaults apply only when an optional field is omitted. Explicit null values are rejected, matching the input schema.
Output
The default dataset contains only successful found podcast matches, with at most one row per unique requested ID. LOOKUP_DIAGNOSTICS is a separate key-value record with a records array containing all not_found, error and skipped outcomes. The Output tab links to both. For a normally completed run without a storage or spending-limit interruption, submitted successful rows plus diagnostic records account for every unique requested ID. The successfulRowsSubmitted counter counts rows handed to resolved SDK push calls, not independently verified saved rows or billed events. Apify’s synthetic-event JavaScript push returns no saved/charged count; inspect the real dataset and run charge breakdown when a budget cap or storage failure occurs. An input or robots-policy failure can stop before any lookup; its reason appears in SUMMARY.
{"recordType": "podcast","status": "found","showId": "1200361736","title": "The Daily","publisher": "The New York Times","showUrl": "https://podcasts.apple.com/us/podcast/the-daily/id1200361736?uo=4","feedUrl": "https://feeds.simplecast.com/Sl5CSM3S","primaryGenre": "Daily News","genres": ["Daily News", "Podcasts", "News"],"requestedCountry": "US","feedFetched": false,"errorCode": null,"errorMessage": null}
The example is shortened. Actual rows also contain episodeCount, catalogReleaseDate, explicitness, catalogCountry, sourceUrl and collectedAt. Values absent from the API stay null; they are not guessed. Data strings are plain text, not HTML-safe markup.
The SUMMARY key-value store record includes found/not-found/error/skipped counts, number of HTTP requests, stop reasons and limits. A robots failure stops the run before lookup. A lookup HTTP error, invalid response or timeout stops further requests and marks later batches skipped; the run is failed with successful dataset rows and nonbillable diagnostic records retained. There are no retries, proxy rotations, login attempts or CAPTCHA handling. A not-found-only run can succeed because lookup completed accurately.
Rate limits and costs
Apple documents an approximate limit of 20 calls per minute, subject to change. This Actor uses a default interval of 4 seconds and never sends parallel requests. Do not launch overlapping runs that collectively exceed the upstream allowance; each run has its own limiter. There are at most six requests for 100 distinct IDs: one robots request and five lookup requests. Each request has a 30-second timeout and a response-size limit. This code does not invoke paid Actors or external paid APIs.
Billing separation
If the Actor is configured with Apify’s synthetic apify-default-dataset-item event, only successful default-dataset records incur that event charge. Not-found, error and skipped outcomes are saved to key-value storage, which that event does not charge. A separately configured apify-actor-start fee can still apply to a failed or empty run; standard-run platform usage is included in the listed event prices. Do not add a second result-charge event on top of the synthetic dataset event.
The source uses a 256–512 MB memory range. See Apify synthetic event documentation.
Access and use
The documented root route is https://itunes.apple.com/lookup?id=...&entity=podcast&country=US. As checked on November 4, 2026, iTunes robots rules disallow keyword search and country-prefixed lookup paths but not this documented root lookup route. The Actor checks the current policy each run and stops if the selected route becomes disallowed. It does not substitute another endpoint when a request is denied.
Use the catalog records to support legitimate podcast discovery and linking. Keep Apple Podcasts links with displayed metadata, respect the source's terms and publisher rights, and do not imply Apple endorsement. Artwork, promotional previews and audio are deliberately omitted; their use has additional restrictions. Obtaining a feed URL does not grant permission to download, republish or commercially reuse the feed's content. This Actor is independent and not affiliated with Apple.
Sources: Apple's current Search API and lookup documentation, iTunes robots policy.