API Keys

ٹرانسکرپٹس V2

V2 ایک منظم، صارف کی ملکیت والا ٹرانسکرپٹ ماڈل ہے۔ یہ تیز کیش ہٹس اور یکساں جوابات کو ترجیح دیتا ہے، اور جب تک آپ کوئی زبان طلب نہ کریں کوئی غیر متوقع ترجمہ نہیں کرتا۔

POSThttps://www.youtubetranscript.dev/api/v2/transcribe
POSThttps://www.youtubetranscript.dev/api/v2/batch
GEThttps://www.youtubetranscript.dev/api/v2/jobs/{job_id}
GEThttps://www.youtubetranscript.dev/api/v2/batch/{batch_id}
POSThttps://www.youtubetranscript.dev/api/v2/channels/resolve
GEThttps://www.youtubetranscript.dev/api/v2/channels/{channel_id}
GEThttps://www.youtubetranscript.dev/api/v2/channels/history

OpenAPI تفصیلات

Postman، Insomnia میں امپورٹ کرنے، کلائنٹس بنانے یا ChatGPT / Claude میں پیسٹ کرنے کے لیے YAML ڈاؤن لوڈ کریں۔

OpenAPI 3.0: V2 (تجویز کردہ)

ایک ویڈیو ٹرانسکرائب کریں

ایک وقت میں ایک ویڈیو کے لیے تیز ترین راستہ۔ کیپشن پر مبنی ٹرانسکرپٹس چند سیکنڈز میں واپس آ جاتے ہیں؛ ASR غیر ہم وقت (async) چلتا ہے اور /api/v2/jobs/{job_id} کے ذریعے پول کیا جاتا ہے۔

Transcribe a single YouTube video. Returns immediately for caption-based videos; falls back to ASR (async) when allow_asr is true and captions are unavailable.

POST/api/v2/transcribe
پیرامیٹرز
videostringلازمی

YouTube URL or 11-character video ID. Required unless upload_id is set.

upload_idstring

Transcribe an uploaded media file instead of a YouTube video (see /uploads). Forces the ASR path; webhook_url required. The upload id is returned as video_id in results.

languageISO 639-1

Preferred transcript language (e.g. en). If unavailable, captions in another language may be returned: transcript.language reports the actual language.

sourceauto | manual | asr

Preferred transcript source. Default: auto. Use asr for audio transcription (async, requires webhook_url).

allow_asrboolean

Fall back to ASR if captions fail. Required for ASR-only videos.

formatobject

{ timestamp, paragraphs, words }: include extra structure in the transcript.

webhook_urluri

When set, the response returns processing and the result is delivered to your URL. Required for ASR.

asr_optionsobject

Rich ASR config: language (+ codeSwitching, medicalMode, keyTerms), translateTo, speaker diarization (speakerLabels, speakerId + type/known values, multichannel, exact or min/max expected speakers), speech understanding (topics, summary, moderation, PII, profanity, sentiment), and formatting (punctuation, text formatting, filler words, custom date/phone/email patterns). Billable add-ons increase cost: preview with /transcribe/estimate. See the AsrOptions schema in the OpenAPI spec.

Dry-run credit estimate. Returns the ASR base cost plus any add-on surcharge for the requested asr_options without creating a job or charging credits.

POST/api/v2/transcribe/estimate
پیرامیٹرز
videostringلازمی

YouTube URL or 11-character video ID.

sourceauto | manual | asr

Defaults to asr for cost preview.

asr_optionsobject

Same shape as /transcribe. Add-on charges are prorated by duration.

Poll a single transcription job. Use this for ASR jobs returned from /transcribe. Returns 202 while running and 200 when complete. Completed ASR jobs include asr_intelligence (summary, topics, sentiment, etc.) when those options were enabled.

GET/api/v2/jobs/{job_id}
پیرامیٹرز
job_idpathلازمی

Identifier returned in the original transcribe response.

include_segmentsboolean

Include segment-level timestamps in the transcript payload.

include_paragraphsboolean

Include paragraph groupings.

include_wordsboolean

Include word-level timestamps (ASR only).

اپنا میڈیا اپ لوڈ کریں

اپنی آڈیو یا ویڈیو فائلیں ASR پائپ لائن کے ذریعے ٹرانسکرائب کریں۔ تین مراحل: اپ لوڈ رجسٹر کریں، bytes کو signed URL پر PUT کریں، finalize کریں: پھر upload_id کے ساتھ /transcribe کال کریں۔ نتائج آپ کے webhook پر آتے ہیں اور کسی بھی ASR جاب کی طرح پول کیے جاتے ہیں۔

Register an audio/video file upload and get a signed URL. PUT the raw file bytes to signed_url (with the file's Content-Type), finalize via /uploads/{upload_id}/complete, then transcribe with upload_id on /transcribe. Max 2GB and 8 hours per file.

POST/api/v2/uploads
پیرامیٹرز
filenamestringلازمی

Original filename. The extension is preserved for content sniffing.

mime_typestringلازمی

Must start with audio/ or video/ (e.g. audio/mpeg, video/mp4).

size_bytesintegerلازمی

File size in bytes. Max 2147483648 (2GB).

duration_secintegerلازمی

Media duration in seconds. Max 28800 (8 hours). Used for the ASR credit estimate.

Finalize an upload after the PUT to signed_url succeeds. Verifies the file exists in storage and marks it ready. The upload can then be transcribed by passing upload_id to /transcribe (source="asr", webhook_url required).

POST/api/v2/uploads/{upload_id}/complete
پیرامیٹرز
upload_idpathلازمی

Upload id returned by POST /uploads.

بیچ ٹرانسکرپشن

ایک ہی ریکویسٹ میں متعدد ویڈیوز ٹرانسکرائب کریں، پھر پول کریں یا webhook کے ذریعے نتائج حاصل کریں۔

Submit up to 3,000 videos in one request. Returns within 2 seconds; poll the returned poll_url or wait for the webhook.

POST/api/v2/batch
پیرامیٹرز
video_idsstring[]لازمی

Up to 3,000 IDs depending on plan. Free = 10, Basic = 500, Pro = 1,500, Business = 3,000.

languageISO 639-1

Preferred language for every video.

sourceauto | manual | asr

Preferred transcript source. Default: auto. source=asr requires webhook_url.

allow_asrboolean

Fall back to ASR when captions fail. webhook_url is required.

formatobject

{ timestamp, paragraphs, words }: applied to every result.

webhook_urluri

Delivers the completed batch payload. Required when allow_asr=true or source=asr.

asr_optionsobject

Rich ASR config applied to every video transcribed via ASR (same shape as /transcribe). Billable add-ons apply per video.

Check the status of a batch. Returns 202 while processing and 200 when results are ready. Stop polling once status is "completed", "partial", or "failed": finished batches never change, and re-fetching one more than 60 times in 24h returns 429 with a Retry-After header.

GET/api/v2/batch/{batch_id}
پیرامیٹرز
batch_idpathلازمی

Batch identifier returned from POST /batch.

ٹرانسکرپٹس اور جابز

اپنے محفوظ ٹرانسکرپٹس کی فہرست دیکھیں، حاصل کریں، ترجمہ کریں اور حذف کریں، اور async جابز کی فہرست دیکھیں۔ تمام endpoints ایک ہی API-key تصدیق قبول کرتے ہیں۔

List your transcription jobs, newest first. Filter by status and paginate. Use the returned job_id with GET /api/v2/jobs/{job_id} to fetch a transcript.

GET/api/v2/jobs
پیرامیٹرز
pagequery

Page number (default 1).

limitquery

Items per page (default 50, max 100).

statusquery

completed | processing | failed | requires_asr_confirmation.

List stored transcripts with search, status, language, and date filters. Metadata only (no full text) unless include_segments=true.

GET/api/v2/transcripts
پیرامیٹرز
pagequery

Page number (default 1).

limitquery

Items per page (default 50, max 100).

searchquery

Match video id, title, or transcript text.

statusquery

Filter by status; omit for succeeded.

languagequery

Filter by language code.

date_fromquery

ISO date-time lower bound.

date_toquery

ISO date-time upper bound.

include_segmentsquery

Include segments in each item.

Fetch the best owned transcript for a video, including asr_intelligence (summary, topics, sentiment, etc.), plus summary and mind_map when generated.

GET/api/v2/transcripts/{video_id}
پیرامیٹرز
video_idpathلازمی

YouTube 11-character video ID.

idquery

Specific transcript/job id.

languagequery

Preferred language version.

sourcequery

auto | manual | asr.

include_timestampsquery

Include segments (default true).

Translate an owned transcript into a target language using YouTube captions or the AI provider. Returns free if you already own the translation.

POST/api/v2/transcripts/{video_id}/translate
پیرامیٹرز
video_idpathلازمی

YouTube 11-character video ID.

target_languageISO 639-1لازمی

Language to translate into.

source_languageISO 639-1

Source transcript language to translate from.

providerai | youtube

Translation provider.

allow_ai_fallbackboolean

Fall back to AI when YouTube has no translation.

List the languages you already own for a video plus the YouTube translation targets available for it.

GET/api/v2/transcripts/{video_id}/languages
پیرامیٹرز
video_idpathلازمی

YouTube 11-character video ID.

include_youtube_defaultquery

Include YouTube translation targets (default true).

Delete owned transcript(s) for a video. Optional language/source query params narrow the deletion; otherwise every language/source is removed. Also deletes bulk by id via POST /api/v2/transcripts/bulk-delete.

DELETE/api/v2/transcripts/{video_id}
پیرامیٹرز
video_idpathلازمی

YouTube 11-character video ID.

languagequery

Only delete this language.

sourcequery

Only delete this source (auto | manual | asr).

پلے لسٹس

پلے لسٹ کو ویڈیو IDs میں تبدیل کریں، انہیں /api/v2/batch کے ذریعے ٹرانسکرائب کریں، پھر پلے لسٹ بیچ اور ہسٹری کا جائزہ لیں۔

Resolve a YouTube playlist by URL or ID into its video list (metadata only). Pair the returned video_id values with /api/v2/batch to transcribe them.

POST/api/v2/playlists/resolveادا شدہ پلانز
پیرامیٹرز
playlist_urlstring

Playlist URL. One of playlist_url or playlist_id is required.

playlist_idstring

Playlist ID (the list= value).

limitinteger

Max videos returned (1-100).

Fetch a playlist batch and per-video transcription job status. For overall batch progress, poll GET /api/v2/batch/{batch_id}.

GET/api/v2/playlists/{playlist_id}
پیرامیٹرز
playlist_idpathلازمی

Batch ID returned from /playlists/resolve.

List recent playlist batches for the authenticated user.

GET/api/v2/playlists/history

چینلز

چینل ٹرانسکرپشن فلو:1. POST /api/v2/channels/resolve: چینل کے اپ لوڈز حاصل کریں (صرف ویڈیو میٹا ڈیٹا)۔2. POST /api/v2/batch: ٹرانسکرپشن شروع کرنے کے لیے واپس ملنے والی video_id اقدار بھیجیں۔ کام مکمل ہونے پر نتائج حاصل کرنے کے لیے webhook_url استعمال کریں۔3. GET /api/v2/batch/{batch_id}: مجموعی پیش رفت اور یکجا نتائج کے لیے بیچ کو پول کریں۔4. GET /api/v2/channels/{channel_id}: ہر ویڈیو کے جاب اسٹیٹس کے ساتھ چینل بیچ حاصل کریں؛ /channels/history پچھلے چینل بیچز کی فہرست دیتا ہے۔

Fetch the uploads of a YouTube channel by URL, channel ID, or @handle. Returns video metadata only: pair the returned video_id values with /api/v2/batch to transcribe them.

POST/api/v2/channels/resolveادا شدہ پلانز
پیرامیٹرز
channel_urlstringلازمی

YouTube channel URL, channel ID, or @handle. One of channel_url, channel_id, or handle must be provided. Handles are the public ID without the @ (for https://www.youtube.com/@jawed, the ID is jawed).

limitinteger

Maximum uploads returned. Defaults to the plan maximum.

Per-request cap: Basic 500 videos · Pro 1,500 videos · Business 3,000 videos. Monthly job cap: Basic 3 · Pro 8 · Business unlimited.

ریٹ لمٹ

Plan-based: Free 1 req/s · Basic 25 req/s · Pro 50 req/s · Business 100 req/s. Exceeding the limit returns 429 with a Retry-After header.

Fetch a channel batch and the per-video transcription job status. For overall batch status (counts + progress), poll GET /api/v2/batch/{batch_id} instead: use this endpoint when you also need each video's individual job state.

GET/api/v2/channels/{channel_id}
پیرامیٹرز
channel_idpathلازمی

Batch ID returned from /channels/resolve.

List recent channel batches for the authenticated user.

GET/api/v2/channels/history
پیرامیٹرز
limitquery

Max items (default 50, max 100).

انٹیگریشنز

آفیشل SDKs، Claude اور Cursor کے لیے ایک MCP سرور، ایک کسٹم GPT، اور Make و n8n کے لیے تیار ٹیمپلیٹس۔

MCP serverClaude · Cursor
Repo

YouTube Transcript MCP سرور کو Claude Desktop، Cursor یا کسی بھی MCP سے ہم آہنگ کلائنٹ میں شامل کریں۔ اس سے ویڈیوز ٹرانسکرائب کرنے، موجودہ ٹرانسکرپٹس حاصل کرنے اور استعمال چیک کرنے کے ٹولز ملتے ہیں۔

انسٹال اور کنفیگر کریں
claude mcp add --transport http youtubetranscript https://mcp.youtubetranscript.dev --header "x-api-token: YOUR_API_KEY"
Node SDKnpm
npm

اعلیٰ درجے کی TypeScript types، retries، pagination helpers اور webhook signature verification۔

انسٹال کریں اور استعمال کریں
npm install youtube-transcript-api
Python SDKPyPI
PyPI

Sync + async کلائنٹس، type stubs، اور بیچ و webhook فلوز کے لیے helpers۔

انسٹال کریں اور استعمال کریں
pip install youtubetranscriptdevapi

ہمارے کسٹم GPT کو ChatGPT میں شامل کریں اور عام زبان میں کسی بھی YouTube ویڈیو کا خلاصہ، اقتباس، ترجمہ یا اس سے سوال و جواب کریں۔ اندرونی طور پر /api/v2/gpt/* پر مبنی۔

  • · OAuth سائن اِن: چیٹ میں API key کی ضرورت نہیں
  • · کیپشنز نہ ہونے پر ASR متبادل
  • · ٹائم اسٹیمپس اور ماخذ کے لنکس کے ساتھ اقتباس
  • · ہر اکاؤنٹ پر مفت ٹرائل
Make.com & n8nنو کوڈ
ٹیمپلیٹس دیکھیں

موجودہ آٹومیشنز میں ٹرانسکرپشن شامل کرنے کے لیے ٹیمپلیٹ امپورٹ کریں (یا اسنیپٹ کاپی کریں): Notion، Sheets، Slack، Airtable، Zapier جیسے فلوز۔

Make.com ماڈیول
Module: HTTP > Make a request
- URL: https://www.youtubetranscript.dev/api/v2/transcribe
- Method: POST
- Headers:
    Authorization: Bearer {{connection.api_key}}
    Content-Type: application/json
- Body type: Raw / JSON
- Request content:
    {
      "video": "{{1.video_url}}",
      "format": { "timestamp": true }
    }
n8n HTTP node
{
  "name": "Transcribe Video",
  "type": "n8n-nodes-base.httpRequest",
  "parameters": {
    "method": "POST",
    "url": "https://www.youtubetranscript.dev/api/v2/transcribe",
    "authentication": "genericCredentialType",
    "genericAuthType": "httpHeaderAuth",
    "sendBody": true,
    "specifyBody": "json",
    "jsonBody": "={ \"video\": $json.video_url }"
  }
}
Postman / OpenAPIایک کلک
Postman کلیکشن

OpenAPI اسپیک کو Postman، Insomnia یا OpenAPI 3 کو سپورٹ کرنے والے کسی بھی ٹول میں امپورٹ کریں۔

ایررز

ایررز code اور message پر مشتمل JSON body واپس کرتے ہیں۔ HTTP اسٹیٹس زمرے کی نشاندہی کرتا ہے۔

HTTP اسٹیٹسایرر کوڈتفصیل
400invalid_requestInvalid JSON or missing required fields
401invalid_api_keyMissing or invalid API key
402payment_requiredInsufficient credits
404no_captionsNo captions available and ASR not used
429rate_limit_exceededToo many requests, check Retry-After
500internal_errorServer error, retry with backoff

ریٹ لمٹس اور کوٹے

مسلسل ریکویسٹس اور بیچ سائز کے لیے ہر پلان کی حد۔ حد سے تجاوز کرنے پر Retry-After ہیڈر کے ساتھ 429 واپس آتا ہے۔

پلانریکویسٹسبیچ سائز
Free1 req/s10 videos
Basic25 req/s500 videos
Pro50 req/s1,500 videos
Business100 req/s3,000 videos

سپورٹ

لانچ کرنے میں مدد چاہیے؟ ہم سے رابطہ کریں: ہم عموماً چند گھنٹوں میں جواب دیتے ہیں۔

API دستاویزات - YouTube Transcript API