Podcast Episode Catalogue

GET https://api.podengine.ai/api/v1/podcasts/:podcastIdOrSlug/episode-catalogue

See how often a show publishes and what it has released. Returns its publishing rhythm over the last 26 weeks (episodes per day, median runtime, median gap between episodes, missed weeks, a change of release day) and a compact list of its episodes with runtime, hosts and guests, sponsors, transcript availability, new or rerun, and Apple Podcasts and YouTube links. Does not count towards your podcast lookups.

Request

Path parameters

podcastIdOrSlugstringrequired

Pod Engine ID or slug, Apple Podcasts ID, Spotify show ID, or podcast:guid

Query parameters

viewenumdefault "full"

`full` returns up to 5,000 of the latest episodes with sponsors and new/rerun detection. `summary` returns the latest 5 episodes without sponsors. Both include the publishing rhythm.

summaryfull

Response

200 application/json
statusliteral: OKrequired
dataobjectrequired1 field
catalogueobjectrequired4 fields
episodesarray of objectrequired13 fields

Episodes, newest first.

idstringrequireduuid

Pod Engine episode ID.

slugstringrequired

Episode slug.

titlestringrequired

Episode title.

publishedAtstringrequireddatetime

Publish time from the feed (UTC).

durationSecondsnumberrequirednullablemin 0

Runtime in seconds; null when unknown.

imageUrlstringrequirednullable

Episode artwork URL; null when there is none.

peoplearray of objectrequirednullable3 fields

Hosts and guests identified in the episode; null when the episode has not been analysed.

namestringrequired
typeenumrequired
hostguestunknownmentioned
imageUrlstringrequirednullable
sponsorsarray of stringrequirednullable

Sponsor and advertiser names, sorted. Null when not analysed, and always null in the `summary` view.

hasTranscriptbooleanrequired

Whether a Pod Engine transcript is available for the episode.

releaseTypeenumrequirednullable

Whether the episode is a new release or a rerun of an earlier episode, inferred from "123: Title" numbering. Null when it cannot be told (see `classificationAvailable`).

newrerun
applePodcastsUrlstringrequirednullable

Episode link on Apple Podcasts; null when not matched.

youtubeUrlstringrequirednullable

Matching YouTube video URL; null when not matched.

spotifyUrlstringrequirednullable

Reserved for the episode link on Spotify. Currently always null.

truncatedbooleanrequired

True when the show has more than the 5,000 episodes returned by the `full` view.

Whether new/rerun detection ran. False for shows without consistent episode numbering, seasonal shows, truncated catalogues and the `summary` view; `releaseType` is then null.

rhythmobjectrequired9 fields

Publishing rhythm over the last 26 weeks, by UTC day.

startstringrequireddatetime

Start of the window: 00:00 UTC on the Sunday 25 weeks before the current week, so 26 weeks in all.

endstringrequireddatetime

End of the window: the time the rhythm was computed.

daysarray of objectrequired4 fields

One entry per UTC day in the window, oldest first (182 days).

datestringrequireddate

UTC calendar day.

countnumberrequiredmin 0

Episodes published on this day.

runtimeSecondsnumberrequirednullable

Median runtime in seconds of the episodes published on this day; null when none has one.

futurebooleanrequired

True for the days later in the current week that have not happened yet.

episodeCountnumberrequiredmin 0

Episodes published inside the window.

truncatedbooleanrequired

True when the show published more than 5,000 episodes in the window and only the latest were counted.

medianRuntimeSecondsnumberrequirednullable

Median episode runtime in seconds across the window; null when no episode has a runtime.

medianIntervalDaysnumberrequirednullable

Median gap in days between consecutive episodes in the window; null with fewer than two episodes.

emptyWeeksarray of stringrequired

Roughly weekly shows only: the Sunday of each week with no episode, between the first and last release in the window.

weekdayShiftobjectrequirednullable3 fields

Set when a weekly show moved its usual release weekday within its last 12 episodes; otherwise null.

fromDaynumberrequired0 – 6

Usual release weekday before the change (0 = Sunday, UTC).

toDaynumberrequired0 – 6

Usual release weekday since the change (0 = Sunday, UTC).

sincestringrequireddate

Date of the first of the last six episodes, the ones on the new weekday.