Media Caption API v1

Single Transcript

Fetch the transcript for one public YouTube video synchronously. Use this for interactive or occasional lookups.

Endpoint

POST/v1/transcripts

Request

  • url: YouTube URL. Required when videoId is omitted.
  • videoId: YouTube video ID. Required when url is omitted.
  • language: optional BCP 47 language tag such as en or en-US.

Example

curl https://api.mediacaption.io/v1/transcripts \
  -H "Authorization: Bearer mc_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
    "language": "en"
  }'

Response

{
  "transcriptionId": "tr_3f6e5c6a-0d31-4f8c-9b1d-7f3b9e6a2c11",
  "source": "public",
  "language": "en",
  "durationSec": 184,
  "expiresAt": "2026-05-14T10:00:01.000Z",
  "transcript": [
    { "startSec": 0, "durationSec": 2.4, "text": "Example transcript text" }
  ],
  "creditsFrozen": 1,
  "creditsCharged": 1
}

Billing and limits

The API reserves 1 credit before fetching. Successful responses charge the reserved credit; failed requests return it to your balance. This endpoint has a dedicated 10 requests per minute limit per account and API key.

Next: Bulk Public Transcripts