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
Gratis$0100 (una vez)60 solicitudes/min
Mensual$5.00/mes1000$2.50 / 1000200 solicitudes/min
Anual$4.50/mes ($54/año)1000$1.50 / 1000300 solicitudes/min

1 crédito = 1 solicitud exitosa. Las solicitudes fallidas nunca se cobran. 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).

ParámetroObligatorioDescripción
vID del video o URL completa de YouTube
languageNoCódigo de idioma (por defecto: en)

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",
    "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
  }
}
GET/search1 crédito / página

Busca videos de YouTube con filtros y paginación.

ParámetroObligatorioDescripción
qConsulta 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 pagination.next_page_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": "..." } } ],
    "pagination": { "next_page_token": "..." }
  }
}
GET/resolveGratis

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
handleID 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": "scrape"
  }
}
GET/playlist1 crédito / página

Obtén los videos de una lista de reproducción. Actualmente solo devuelve la primera página: has_more indica si hay más videos, pero obtener páginas adicionales aún no es compatible.

ParámetroObligatorioDescripción
listID o URL de la lista de reproducción

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
  }
}

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
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

Próximamente

La búsqueda dentro de un canal, el listado de todos los videos de un canal y la paginación completa de listas de reproducción están en desarrollo. El seguimiento de nuevas subidas por RSS no está disponible temporalmente debido a un problema ajeno del lado de YouTube.

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.