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/v1Créditos y planes
| Plan | Precio | Créditos/mes | Precio de recarga | Límite de tasa |
|---|---|---|---|---|
| Gratis | $0 | 100 (una vez) | — | 60 solicitudes/min |
| Mensual | $5.00/mes | 1000 | $2.50 / 1000 | 200 solicitudes/min |
| Anual | $4.50/mes ($54/año) | 1000 | $1.50 / 1000 | 300 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
/transcript1 créditoObtén la transcripción de un video de YouTube, con metadatos (título, canal, miniatura).
| Parámetro | Obligatorio | Descripción |
|---|---|---|
v | Sí | ID del video o URL completa de YouTube |
language | No | Có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
}
}/search1 crédito / páginaBusca videos de YouTube con filtros y paginación.
| Parámetro | Obligatorio | Descripción |
|---|---|---|
q | Sí | Consulta de búsqueda (mínimo 2 caracteres) |
country | No | Código de país de 2 letras (por defecto: us) |
language | No | Código de idioma (por defecto: en) |
page_token | No | El campo pagination.next_page_token de la respuesta anterior, para obtener la siguiente página |
limit | No | Resultados 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": "..." }
}
}/resolveGratisResuelve 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ámetro | Obligatorio | Descripción |
|---|---|---|
handle | Sí | 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": "scrape"
}
}/playlist1 crédito / páginaObté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ámetro | Obligatorio | Descripción |
|---|---|---|
list | Sí | ID 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:
| Estado | Código | Significado |
|---|---|---|
| 400 | BAD_REQUEST | Parámetro faltante o no válido |
| 401 | MISSING_API_KEY / INVALID_API_KEY | No se proporcionó clave, o la clave no es válida o fue revocada |
| 402 | PAYMENT_REQUIRED | Sin créditos disponibles - compra una recarga o mejora tu plan |
| 404 | VIDEO_UNAVAILABLE / TRANSCRIPT_NOT_FOUND | Video o recurso no encontrado |
| 429 | RATE_LIMITED | Demasiadas solicitudes para el nivel de tu plan |
| 503 | UPSTREAM_UNAVAILABLE | Problema 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.