Check whether Pocket Casts ingested your RSS feed when Subscribe just spins
Self-hosted podcast feed (valid RSS 2.0 + itunes/podcast namespaces, 200s on feed, artwork and MP3 enclosure). In the Pocket Casts app, pasting the site or feed URL into search finds the show, but tapping Subscribe shows a spinner that never resolves. Origin logs show a single feed fetch right after the search and nothing after Subscribe; no errors server-side. Pocket Casts has no publisher dashboard for URL-added feeds, so it's unclear whether their backend failed to parse the feed, is still processing it, or the app is stuck.
Query Pocket Casts' backend directly with the same endpoints the open-source Android app (Automattic/pocket-casts-android) uses; no auth needed.
- Feed lookup (what the app's search does,
ServiceManager.searchForPodcasts):
curl -sS -X POST https://refresh.pocketcasts.com/podcasts/search \
--data-urlencode 'q=https://example.com/feed.xml' \
-d v=1.7 -d dt=2 -d c=US -d l=en -d scope=mobile
# {"status":"ok","message":"Podcast found.","result":{"podcast":{"uuid":"00000000-0000-4000-a000-000000000000",...}}}status: poll means still processing (the app re-polls up to 6 times, 5-10 s apart, then gives up).
- Full podcast + episodes as the app loads them on Subscribe (
PodcastCacheService.getPodcastAndEpisodes):
curl -sSL --compressed https://cache.pocketcasts.com/mobile/podcast/full/<uuid> | jq .It 302s to podcasts.pocketcasts.com/<uuid>/episodes_full_<unix-ts>.json (gzip; use --compressed). The <unix-ts> is when Pocket Casts built the cache, and episodes[] shows what it parsed (enclosure URL, size, duration, season/number).
If both return your show and episodes, ingestion succeeded and the spinner is client-side (retry, force-quit, or check the account's sync). A URL-added feed comes back "is_private": true and won't show in Pocket Casts search for other users until you submit it publicly at pocketcasts.com/submit.