Podcast Transcript API

GET /v1/episode/{id}/transcript

Get an episode’s transcript as a single normalized JSON response: a flat text string plus segments with startTime, endTime, speaker, and text.

Publishers ship transcripts (via the Podcasting 2.0 <podcast:transcript> tag) in whatever format they like — JSON, WebVTT, SRT, or plain text — and often list several. PodKit picks the best available (JSON › VTT › SRT › text), fetches it, and parses it into one shape, so your code never has to care which format a given show used.

Example

curl

curl "https://podkitapp.com/v1/episode/42/transcript" \
  -H "x-api-key: pk_your_key"

Response

{
  "episodeId": 42,
  "format": "vtt",
  "text": "Welcome back to the show. Today we're talking about AI agents...",
  "segments": [
    { "startTime": 0.0, "endTime": 4.2, "speaker": "Host",  "text": "Welcome back to the show." },
    { "startTime": 4.2, "endTime": 9.8, "speaker": "Guest", "text": "Thanks for having me." }
  ]
}

The format field reports the source format that was parsed. If the transcript can’t be fetched or parsed, you get a graceful 200 with text/segments as null plus sourceUrl and parseError: true. Episodes with no published transcript return 404. Parsed transcripts are cached for 7 days.

Send your key in the x-api-key header. Don’t have one? Get a free key (500 requests/month, no card).

Who uses it

Transcripts are the highest-value asset for AI builders: embed text for semantic search and RAG pipelines, or chunk segments to keep timestamps and speakers for citations that link back to the exact moment in the audio. AI agents use it to answer questions grounded in what was actually said, without running their own speech-to-text. New to it? Read the walkthrough: How to get a podcast transcript via API.

Get a free API key   Read the docs   See pricing

More PodKit APIs

Search APIMetadata APIEpisode APIChapters API