Skip to main content
List episodes across the catalog with rich filters: by podcast, person, company, guests’ expertise, language, date range, duration, or transcript availability. By default it lists the episodes we have ingested. Pass transcript_status with podcast_slug to reach the show’s back catalogue: older episodes discovered in its feed but not transcribed, marked requestable. They have no transcript, segments, speakers or entities. Use this for episode-level discovery when you only need metadata (title, duration, speakers, counts). For dialogue around a person in any episode, use particle_podcast_find_mentions. For ranked retrieval by topic, use particle_podcast_search_transcripts. The guest_ filters list episodes by their guests’ expertise, with codes from particle_expertise_resolve: guest_occupation="cardiologists" with guest_practicing=true lists episodes with a practicing cardiologist as a guest.

Inputs

All guest_ filters describe the same guest, so guest_occupation="cardiologists" with guest_practicing=true keeps episodes where one guest is a practicing cardiologist. A broad code covers everything below it. A word no occupation names may name a field or a capacity instead, and filters by it: guest_occupation="oncologists" is field 3211, guest_occupation="founders" is guest_capacity="executive_founder". An occupation or field that names nothing returns unresolved_reference with the closest codes as did-you-mean suggestions; guest_practicing without a detailed SOC 2018 guest_occupation returns validation_error.

Output

A markdown document with ## Episodes (N) and one ### Episode title section per episode. Each section carries bulleted KV rows: - **Podcast:**, - **Published:**, - **Episode slug:**, - **Duration:**, - **Transcript:** (only for an episode that is not transcribed: processing, requestable or unavailable, with what that means), - **Counts:** (segments / clips / entities), and - **Speakers:**. The Speakers row is a comma-separated list with up to 6 names; entries with linked entities render as Name (entity_slug). When more pages exist, a horizontal rule and a **Cursor:** <value> line are appended; pass that value back as cursor to fetch the next page. Sample (podcast_slug="6-minute-english", limit=2):
The string after - **Episode slug:** is what you pass back as episode_slug to particle_podcast_get_episode or particle_podcast_find_mentions.

Example

Episodes with an established economist as a guest since September: