Black Friday · 30% off

Get 30% off

Documentación de la API

Una API REST para transcripciones, búsqueda y metadatos de YouTube. Obtén una clave de API desde tu panel — 100 créditos gratis, sin tarjeta requerida.

Autenticación

Pasa tu clave de API como un bearer token, o mediante x-api-key:

Authorization: Bearer sk_live_...
# or
x-api-key: sk_live_...

URL base

https://getyoutubetranscript.com/api/v1

Créditos y planes

PlanPrecioCréditos/mesPrecio de recargaLímite de tasa
Gratis0 $/mes100 (una vez)—60 solicitudes/min
Mensual5 $/mes10002,50 $ / 1000200 solicitudes/min
Anual4,50 $/mes (54 $/año)10001,50 $ / 1000300 solicitudes/min
Starter19 $/mes75001,50 $ / 1000300 solicitudes/min
Pro49 $/mes25.0001,50 $ / 1000400 solicitudes/min
Scale99 $/mes60.0001,50 $ / 1000600 solicitudes/min

1 crédito = 1 solicitud exitosa. Las solicitudes fallidas nunca se cobran. Ejemplo: 10 solicitudes de transcripción en las que 2 videos no tienen subtítulos cuestan 8 créditos, y reintentar un video fallido no cuesta nada hasta que funcione. Los créditos de recarga caducan a los 30 días de la compra o al final de tu periodo de facturación actual, lo que ocurra más tarde, y requieren una suscripción activa para poder usarse.

Endpoints

GET/transcript1 crédito

Obtén la transcripción de un video de YouTube, con metadatos (título, canal, miniatura). También devuelve language_code frente a requested_language, caption_type (manual o auto, null si se desconoce) y cached / fetched_at.

ParámetroObligatorioDescripción
vSíID del video o URL completa de YouTube
languageNoCódigo de idioma (por defecto: en)
timestampsNoPon true para añadir marcas de tiempo por línea (segments: start, duration, text en segundos). Desactivado por defecto.
translateNoCódigo de idioma al que traducir automáticamente, p. ej. es o zh-CN. Las marcas de tiempo se mantienen; la respuesta añade translated_to. Sigue costando 1 crédito.

Solicitud

curl "https://getyoutubetranscript.com/api/v1/transcript?v=jNQXAC9IVRw" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "video_id": "jNQXAC9IVRw",
    "language_code": "en",
    "requested_language": "en",
    "caption_type": "manual",
    "title": "Me at the zoo",
    "author_name": "jawed",
    "author_url": "https://www.youtube.com/channel/UC4Qob...",
    "thumbnail_url": "https://...",
    "transcript": "All right, so here we are...",
    "word_count": 39,
    "cached": true,
    "fetched_at": "2026-09-20T03:10:58.938Z"
  }
}
GET/transcript/languages1 crédito

Lista los idiomas de subtítulos que ofrece un video (manuales y generados automáticamente) antes de obtener uno. default_language_code es lo que /transcript devuelve sin idioma; un video sin subtítulos devuelve una lista vacía.

ParámetroObligatorioDescripción
vSíID del video o URL completa de YouTube

Solicitud

curl "https://getyoutubetranscript.com/api/v1/transcript/languages?v=kJQP7kiw5Fk" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "video_id": "kJQP7kiw5Fk",
    "default_language_code": "en",
    "languages": [
      { "language_code": "en", "name": "English - en", "caption_type": "manual" },
      { "language_code": "es", "name": "Spanish", "caption_type": "manual" }
    ]
  }
}
POST/batch1 crédito / video exitoso

Pon en cola hasta 100 videos en una sola llamada. Devuelve un batch_id al instante y obtiene las transcripciones en segundo plano. Consulta GET /batch o indica webhook_url para recibir un POST firmado (encabezado X-GYT-Signature) al terminar. Los videos fallidos nunca se cobran.

ParámetroObligatorioDescripción
videosSíArray de IDs o URLs de video (1-100). Los duplicados se obtienen una sola vez.
languageNoCódigo de idioma para todos los videos (predeterminado: en)
timestampsNotrue para incluir segmentos por línea en los resultados
webhook_urlNoURL https pública que recibe el aviso al terminar el lote
Idempotency-KeyNoEncabezado. Reintenta la solicitud con seguridad: la misma clave devuelve el lote original.

Solicitud

curl -X POST "https://getyoutubetranscript.com/api/v1/batch" \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
        "videos": ["jNQXAC9IVRw", "https://youtu.be/dQw4w9WgXcQ"],
        "webhook_url": "https://example.com/hooks/transcripts"
      }'

Respuesta

{
  "success": true,
  "data": {
    "batch_id": "324eb615-e4d5-4b3c-b8e7-04235671066b",
    "status": "queued",
    "total": 2,
    "succeeded": 0,
    "failed": 0,
    "pending": 2,
    "results_url": "https://getyoutubetranscript.com/api/v1/batch?id=324eb615-...",
    "webhook_secret": "whsec_..."
  }
}
GET/batchGratis

Estado del lote, contadores y una página de resultados en orden de envío. Los elementos exitosos tienen los mismos campos que /transcript; los fallidos incluyen un error_code.

ParámetroObligatorioDescripción
idSíEl batch_id de POST /batch
offsetNoElementos a omitir (predeterminado: 0)
limitNoElementos por página, 1-50 (predeterminado: 20)

Solicitud

curl "https://getyoutubetranscript.com/api/v1/batch?id=324eb615-e4d5-4b3c-b8e7-04235671066b" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "batch_id": "324eb615-...",
    "status": "completed",
    "total": 2,
    "succeeded": 1,
    "failed": 1,
    "credits_charged": 1,
    "items": [
      { "position": 0, "status": "succeeded", "charged": true, "video_id": "jNQXAC9IVRw", "caption_type": "manual", "transcript": "All right, so here we are...", ... },
      { "position": 1, "status": "failed", "charged": false, "video_id": "dQw4w9WgXcQ", "error_code": "TRANSCRIPT_DISABLED" }
    ],
    "next_offset": null
  }
}
GET/search1 crédito / página

Busca videos de YouTube con filtros y paginación.

ParámetroObligatorioDescripción
qSíConsulta de búsqueda (mínimo 2 caracteres)
countryNoCódigo de país de 2 letras (por defecto: us)
languageNoCódigo de idioma (por defecto: en)
page_tokenNoEl campo continuation_token de la respuesta anterior, para obtener la siguiente página
limitNoResultados máximos (por defecto 20, máximo 50)

Solicitud

curl "https://getyoutubetranscript.com/api/v1/search?q=lofi+beats" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "query": "lofi beats",
    "video_results": [ { "title": "...", "videoId": "...", "channel": { "name": "..." } } ],
    "continuation_token": "c_bKt9xQ2mVf7LpR0aZ3sWyA"
  }
}
GET/resolve1 crédito

Resuelve el identificador, la URL o el nombre de usuario de un canal a su ID de canal real. Una entrada sintáctica (ya sea un ID de canal o una URL que contenga uno) se resuelve al instante sin llamada de red; un identificador simple activa una búsqueda real.

ParámetroObligatorioDescripción
handleSíID de canal, URL o @identificador

Solicitud

curl "https://getyoutubetranscript.com/api/v1/resolve?handle=@mkbhd" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "channel_id": "UCBJycsmduvYEL83R_U4JriQ",
    "title": "Marques Brownlee",
    "handle": "http://www.youtube.com/@mkbhd",
    "resolved_via": "lookup"
  }
}
GET/channel/latest1 crédito

Datos del canal (título, suscriptores, descripción, avatar) y los últimos videos de la pestaña de inicio del canal. Para todo el historial de subidas usa /channel/videos.

ParámetroObligatorioDescripción
channelSí@handle, URL o ID del canal

Solicitud

curl "https://getyoutubetranscript.com/api/v1/channel/latest?channel=@mkbhd" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "channel": { "id": "UCBJycsmduvYEL83R_U4JriQ", "title": "Marques Brownlee", "subscribers": 1160000, "avatar": "https://..." },
    "about": { "description": "...", "links": [] },
    "videos_sections": [ ... ]
  }
}
GET/channel/videos1 crédito / página

Todos los videos subidos por un canal, del más reciente al más antiguo, con paginación.

ParámetroObligatorioDescripción
channelSí@handle, URL o ID del canal
tabNovideos (por defecto), shorts o streams (la pestaña En vivo). Solo la primera página.
sortNolatest (por defecto), popular u oldest. Solo la primera página.
continuationNocontinuation_token de la respuesta anterior, para obtener la página siguiente (úsalo en lugar de los demás parámetros). Caduca a las 24 horas.

Solicitud

curl "https://getyoutubetranscript.com/api/v1/channel/videos?channel=@mkbhd&tab=shorts&sort=popular" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "videos": [ { "position": 1, "id": "...", "title": "...", "views": "6.2M", "published_time": "1d ago", "length": "10:47" } ],
    "has_more": true,
    "continuation_token": "c_pqHR9v13sqaqxlcKhA4MnA"
  }
}
GET/channel/playlists1 crédito / página

Las listas de reproducción de un canal (su pestaña Listas), paginadas. Pasa el id de una lista a /playlist para ver sus videos.

ParámetroObligatorioDescripción
channelSí@handle, URL o ID del canal
continuationNocontinuation_token de la respuesta anterior, para obtener la página siguiente (úsalo en lugar de los demás parámetros). Caduca a las 24 horas.

Solicitud

curl "https://getyoutubetranscript.com/api/v1/channel/playlists?channel=@mkbhd" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "playlists": [ { "position": 1, "id": "PL...", "title": "...", "link": "https://www.youtube.com/playlist?list=PL...", "video_count": 5 } ],
    "has_more": false,
    "continuation_token": null
  }
}
GET/channel/posts1 crédito / página

Las publicaciones de la comunidad de un canal (su pestaña Comunidad), paginadas: texto, enlaces, me gusta, comentarios y la imagen adjunta.

ParámetroObligatorioDescripción
channelSí@handle, URL o ID del canal
continuationNocontinuation_token de la respuesta anterior, para obtener la página siguiente (úsalo en lugar de los demás parámetros). Caduca a las 24 horas.

Solicitud

curl "https://getyoutubetranscript.com/api/v1/channel/posts?channel=@mkbhd" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "posts": [ { "position": 1, "id": "Ugkx...", "url": "https://www.youtube.com/post/Ugkx...", "text": "...", "published_time": "2 years ago", "likes": "12K", "comments": "1K" } ],
    "has_more": true,
    "continuation_token": "c_DfE9mQx2Ln8TbW4kJ1pZsA"
  }
}
GET/channel/search1 crédito / página

Busca dentro de los videos de un canal, con paginación.

ParámetroObligatorioDescripción
channelSí@handle, URL o ID del canal
qSíConsulta de búsqueda (mínimo 2 caracteres)
continuationNocontinuation_token de la respuesta anterior, para obtener la página siguiente (úsalo en lugar de los demás parámetros). Caduca a las 24 horas.

Solicitud

curl "https://getyoutubetranscript.com/api/v1/channel/search?channel=@mkbhd&q=iphone" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "videos": [ { "position": 1, "id": "...", "title": "...", "published_time": "3w ago", "length": "17:14", "channel": { "name": "Marques Brownlee" } } ],
    "has_more": true,
    "continuation_token": "c_pnm10M6orzLgOTVWJk2oww"
  }
}
GET/playlist1 crédito / página

Todos los videos de una playlist, con paginación. continuation_token es null en la última página.

ParámetroObligatorioDescripción
listSíID o URL de la lista de reproducción
continuationNocontinuation_token de la respuesta anterior, para obtener la página siguiente (úsalo en lugar de los demás parámetros). Caduca a las 24 horas.

Solicitud

curl "https://getyoutubetranscript.com/api/v1/playlist?list=PLxxx" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "playlist_id": "PLxxx",
    "title": "...",
    "videos": [ { "position": 1, "id": "...", "title": "...", "channel": { "name": "..." } } ],
    "has_more": true,
    "continuation_token": "c_DfE9mQx2Ln8TbW4kJ1pZsA"
  }
}
GET/video/related1 crédito

Los videos que YouTube sugiere junto a un video, con título, id, canal, vistas, antigüedad y duración.

ParámetroObligatorioDescripción
vSíID del video o URL completa de YouTube

Solicitud

curl "https://getyoutubetranscript.com/api/v1/video/related?v=dQw4w9WgXcQ" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "video_id": "dQw4w9WgXcQ",
    "related": [ { "position": 1, "id": "...", "title": "...", "channel": { "name": "..." }, "views": "410K", "published_time": "11y ago", "length": "1:01:35" } ]
  }
}
GET/video/dislikes1 crédito

Me gusta y no me gusta estimados de un video. YouTube ya no publica los no me gusta, así que son estimaciones (estimated siempre es true).

ParámetroObligatorioDescripción
vSíID del video o URL completa de YouTube

Solicitud

curl "https://getyoutubetranscript.com/api/v1/video/dislikes?v=dQw4w9WgXcQ" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "video_id": "dQw4w9WgXcQ",
    "likes": 19497714,
    "dislikes": 521713,
    "rating": 4.9,
    "view_count": 1830715799,
    "estimated": true
  }
}
GET/channel/banner1 crédito

El banner completo de un canal, todos los tamaños de recorte que sirve YouTube y su foto de perfil. has_banner es false si el canal no tiene.

ParámetroObligatorioDescripción
channelSí@handle, URL o ID del canal

Solicitud

curl "https://getyoutubetranscript.com/api/v1/channel/banner?channel=@mkbhd" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "channel_id": "UCBJycsmduvYEL83R_U4JriQ",
    "title": "Marques Brownlee",
    "avatar": "https://yt3.googleusercontent.com/...",
    "has_banner": true,
    "banner": { "original": "https://...=s0", "largest": "https://...=w2560", "sizes": [ { "url": "https://...", "width": 1060, "height": 175 } ] }
  }
}
GET/creditsGratis

Consulta el saldo de créditos restante de esta clave antes de gastarlo - la misma información que devuelve la herramienta MCP get_credits.

ParámetroObligatorioDescripción

Solicitud

curl "https://getyoutubetranscript.com/api/v1/credits" \
  -H "Authorization: Bearer sk_live_..."

Respuesta

{
  "success": true,
  "data": {
    "plan_credits_left": 87,
    "topup_credits_left": 0,
    "plan": "monthly",
    "rate_limit_per_minute": 200
  }
}

Errores

Los errores devuelven un cuerpo JSON con un campo code estable para bifurcar la lógica, además del estado HTTP:

EstadoCódigoSignificado
400BAD_REQUESTParámetro faltante o no válido
400CURSOR_EXPIREDEl cursor de página caducó (a las 24 horas): vuelve a empezar desde la primera página
401MISSING_API_KEY / INVALID_API_KEYNo se proporcionó clave, o la clave no es válida o fue revocada
402PAYMENT_REQUIREDSin créditos disponibles - compra una recarga o mejora tu plan
404VIDEO_UNAVAILABLE / TRANSCRIPT_NOT_FOUNDVideo o recurso no encontrado
429RATE_LIMITEDDemasiadas solicitudes para el nivel de tu plan
503UPSTREAM_UNAVAILABLEProblema temporal en el origen - puedes reintentarlo sin problema
504UPSTREAM_TIMEOUTEl servicio tardó más de 25 segundos: no se cobra y puedes reintentar

Cómo usar esta API con una herramienta de IA

¿Prefieres dejar que Claude (u otra herramienta de codificación con IA) llame a esta API por ti en lugar de escribir las solicitudes a mano? Descarga la skill de YouTube Transcript, una Claude Skill lista para usar que le enseña a obtener transcripciones, buscar y mucho más.

Úsala en Zapier

Sin código: nuestra app de Zapier obtiene una transcripción, busca en YouTube o lista los videos de un canal en cualquier Zap. Conéctala con la misma clave de API; cada acción cuesta los mismos créditos que la llamada a la API.

Featured on aitoolfame.comFeatured on Aura++Featured on DeepLaunch.ioFeatured on Dofollow.ToolsFeatured on EasyDoFollowFeatured on EarlyHuntFeatured on Findly.toolsFeatured on FoundrListGood AI ToolsFeatured on IndieHuntFeatured on LaunchBuffFeatured on launched.toolsFeatured on Launch Llama ToolsFeatured on LemonLaunchLiftOff launch badgeMy Launch StashGetYouTubeTranscript on Nick LaunchesOpenHunts Club MemberFeatured on saasfame.comShinyLaunchFeatured on ShowMeBestAIFeatured on toolfame.comListed on Turbo0Featured on Twelve ToolsHuzzler Embed BadgeFeatured on CodeHypeGetYouTubeTranscript on Better LaunchDokeyAIFeatured on WayfindioFeatured on LaunchZoneFeatured on NoonlaunchFeatured on WhatsthebigdataSurfaced on CodeTrendyFeatured on ScrollLaunchFeatured on ufind.bestFeatured on ShipBoostProduct WingWe Like ToolsAppa ListAcid ToolsPower Up ToolsToshi ListAIGC 160Appsy ToolsHunt for ToolsBeam ToolsTool Find DirTool SignalSaaS Tools DirSoftware BoltProduct List DirStack DirectorySaaS FieldSaaS WheelSaaS RootsStartup BenchmarksUnite ListTrustinerBest Tool VaultSolver ToolsAsh ListSmart Kit HubAI X CollectionAI Tech ViralMillion Dot HomepageThat App ShowLaunch ScrollMy Start ToolsLatest AI UpdatesSuper AI BoomTools Under RadarThe Key ToolsTool JourneyTools List HQThe App ToolsThe Mega ToolsSource DirTool CosmosTop Trend ToolsTiny Tool HubTool PrismStartup AIdeasFeatured on WonderLaunchFeatured on ShipycornFeatured on ToolsClawListed on ProofStoriesFeatured on ToolListedLaunched on Launch Streak