YouTube Get Transcript

PythonYouTube
POST api.upapi.io/youtube-get-transcript.get

Best-effort video transcript/captions via youtube-transcript-api. No API key or auth needed (no quota). Returns empty transcript on failure.

youtubetranscriptcaptions
AuthAPI key
Cost4 units
Timeout15s
Cache3600s

Request schema

FieldTypeDescription
videoIdreq
stringYouTube video ID
maxChars
integerMax transcript length· default: 4000

Response schema

FieldTypeDescription
successreq
boolean
videoIdreq
string
languagereq
string
charCountreq
integer
elapsedMsreq
integer
transcriptreq
string

Try it

Try it

YouTube video ID

Max transcript length

Run this endpoint live

Jump in as a guest — no signup — and run youtube-get-transcript.get with your own inputs. Create a free account anytime to get your own API key.

Sign in

Code examples

curl -X POST https://api.upapi.io/youtube-get-transcript.get \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY' \
  -d '{ "videoId": "dQw4w9WgXcQ", "maxChars": 4000 }'

Developer tools

OpenAPI specImport the spec or collection into Postman, Insomnia, or any codegen tool.

YouTube Get Transcript API reference

Request parameters

videoId
stringrequiredYouTube video ID
maxChars
integerMax transcript length

Response fields

success
booleanrequired
videoId
stringrequired
language
stringrequired
charCount
integerrequired
elapsedMs
integerrequired
transcript
stringrequired

How to call it

Send one POST to api.upapi.io/youtube-get-transcript.get with your key in the X-Api-Key header and the parameters above as a JSON body. Each call spends 4 weighted units of your monthly quota. The operation times out after 15 seconds. Identical requests are served from cache for 3600 seconds, unbilled.

Example request body
{
  "videoId": "dQw4w9WgXcQ",
  "maxChars": 4000
}
Example response shape
{
  "success": false,
  "videoId": "dQw4w9WgXcQ",
  "language": "en",
  "charCount": 1,
  "elapsedMs": 1,
  "transcript": "example"
}

The example response is generated from this operation's published output schema — it shows the shape and field names, not values from a recorded call.