Skip to main content

List episodes across all podcasts

The cross-podcast episode endpoint is the primary discovery tool. Filter by podcast, date range, language, or duration.
curl "https://api.particle.pro/v1/podcasts/episodes?limit=3" \
  -H "X-API-Key: YOUR_API_KEY"

Response schema

data
Episode[]
required
has_more
boolean
required
Whether more results exist beyond this page.
cursor
string
Pass to the next request for the next page.
Example response
{
  "data": [
    {
      "id": "6OdMXSZK8XxM89hbS3eanr",
      "title": "The Future of AI Regulation",
      "description": "A deep dive into how governments worldwide are approaching AI policy...",
      "audio_url": "https://audio.particle.pro/6OdMXSZK8XxM89hbS3eanr.mp3",
      "published_at": "2026-02-18T14:00:00Z",
      "duration_seconds": 4832.5,
      "explicit": false,
      "podcast": {
        "id": "2dMXSZK8XxM89hbS3eanr",
        "title": "Hard Fork",
        "image_url": "https://images.particle.pro/2dMXSZK8XxM89hbS3eanr.jpg"
      },
      "speakers": [
        {
          "name": "Kevin Roose",
          "role": "HOST",
          "speaking_duration_seconds": 2100.3
        },
        {
          "name": "Casey Newton",
          "role": "CO_HOST",
          "speaking_duration_seconds": 2450.8
        }
      ],
      "segment_count": 8,
      "clip_count": 5,
      "entity_count": 12,
      "has_transcript": true
    }
  ],
  "has_more": true,
  "cursor": "r.4mGKaJ"
}

Filtering

Combine any of these query parameters:
ParameterDescriptionExample
podcast_idFilter to one podcast?podcast_id=2dMXSZK8Xx...
published_afterEpisodes published after date?published_after=2026-01-01T00:00:00Z
published_beforeEpisodes published before date?published_before=2026-02-01T00:00:00Z
languageISO 639-1 language code?language=en
has_transcriptOnly transcribed episodes?has_transcript=true
min_durationMinimum duration in seconds?min_duration=1800
max_durationMaximum duration in seconds?max_duration=7200

Recent long-form episodes with transcripts

curl "https://api.particle.pro/v1/podcasts/episodes?\
has_transcript=true&\
min_duration=3600&\
published_after=2026-02-01T00:00:00Z&\
limit=10" \
  -H "X-API-Key: YOUR_API_KEY"

Get a single episode

curl "https://api.particle.pro/v1/podcasts/episodes/6OdMXSZK8XxM89hbS3eanr" \
  -H "X-API-Key: YOUR_API_KEY"

Episodes for a specific podcast

Shorthand for filtering by podcast_id:
curl "https://api.particle.pro/v1/podcasts/2dMXSZK8XxM89hbS3eanr/episodes?limit=10" \
  -H "X-API-Key: YOUR_API_KEY"

Sub-resources

Every episode has sub-resources for its enrichment data:
EndpointDescription
GET .../episodes/{id}/transcript
GET .../episodes/{id}/transcript/wordsWord-level timestamps
GET .../episodes/{id}/segmentsStructural sections
GET .../episodes/{id}/clipsHighlight moments
GET .../episodes/{id}/speakersIdentified speakers
GET .../episodes/{id}/entitiesMentioned entities
GET .../episodes/{id}/topicsTopic classifications

Speakers per episode

Each speaker is identified by name, role, and total speaking time:
curl "https://api.particle.pro/v1/podcasts/episodes/6OdMXSZK8XxM89hbS3eanr/speakers" \
  -H "X-API-Key: YOUR_API_KEY"
Example response
{
  "data": [
    {
      "name": "Kevin Roose",
      "role": "HOST",
      "speaking_duration_seconds": 2100.3,
      "description": "Technology columnist at The New York Times",
      "entity_id": "Lm0wOWM3dzA"
    }
  ],
  "has_more": false
}
The entity_id links to the knowledge graph — use it with the entities API to find every podcast where this person has appeared.

Entities per episode

Returns people, organizations, and places mentioned in the episode, ranked by :
curl "https://api.particle.pro/v1/podcasts/episodes/6OdMXSZK8XxM89hbS3eanr/entities" \
  -H "X-API-Key: YOUR_API_KEY"
Example response
{
  "data": [
    {
      "entity": {
        "id": "Lm0wOWM3dzA",
        "name": "OpenAI",
        "description": "American AI research organization",
        "wikipedia_url": "https://en.wikipedia.org/wiki/OpenAI"
      },
      "salience": 0.85,
      "occurrences": 14
    }
  ],
  "has_more": false
}