Documentação da API

Uma API REST para transcrições, buscas e metadados do YouTube. Obtenha uma chave de API no seu painel — 100 créditos grátis, sem cartão necessário.

Autenticação

Envie sua chave de API como um bearer token, ou via x-api-key:

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

URL base

https://getyoutubetranscript.com/api/v1

Créditos e planos

PlanoPreçoCréditos/mêsPreço do top-upLimite de taxa
Grátis$0100 (único)60 req/min
Mensal$5,00/mês1.000$2,50 / 1.000200 req/min
Anual$4,50/mês ($54/ano)1.000$1,50 / 1.000300 req/min

1 crédito = 1 requisição bem-sucedida. Requisições com falha nunca são cobradas. Créditos avulsos (top-up) expiram 30 dias após a compra ou ao final do seu período de faturamento atual, o que ocorrer depois, e exigem uma assinatura ativa para serem usados.

Endpoints

GET/transcript1 crédito

Obtém a transcrição de um vídeo do YouTube, com metadados (título, canal, miniatura).

ParâmetroObrigatórioDescrição
vSimID do vídeo ou URL completa do YouTube
languageNãoCódigo do idioma (padrão: en)

Requisição

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

Resposta

{
  "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 vídeos do YouTube com filtros e paginação.

ParâmetroObrigatórioDescrição
qSimTermo de busca (mínimo de 2 caracteres)
countryNãoCódigo de país de 2 letras (padrão: us)
languageNãoCódigo do idioma (padrão: en)
page_tokenNãoO pagination.next_page_token da resposta anterior, para buscar a próxima página
limitNãoMáximo de resultados (padrão 20, máximo 50)

Requisição

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

Resposta

{
  "success": true,
  "data": {
    "query": "lofi beats",
    "video_results": [ { "title": "...", "videoId": "...", "channel": { "name": "..." } } ],
    "pagination": { "next_page_token": "..." }
  }
}
GET/resolveGrátis

Resolve um handle, URL ou nome de usuário de canal para seu ID real de canal. Uma entrada sintática (já um ID de canal ou URL contendo um) é resolvida instantaneamente sem chamada de rede; um handle simples dispara uma consulta real.

ParâmetroObrigatórioDescrição
handleSimID do canal, URL, ou @handle

Requisição

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

Resposta

{
  "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ém os vídeos de uma playlist. Atualmente retorna apenas a primeira página - has_more indica se há mais vídeos, mas buscar páginas adicionais ainda não é suportado.

ParâmetroObrigatórioDescrição
listSimID ou URL da playlist

Requisição

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

Resposta

{
  "success": true,
  "data": {
    "playlist_id": "PLxxx",
    "title": "...",
    "videos": [ { "position": 1, "id": "...", "title": "...", "channel": { "name": "..." } } ],
    "has_more": true
  }
}

Erros

Os erros retornam um corpo JSON com um campo code estável para uso condicional, além do status HTTP:

StatusCódigoSignificado
400BAD_REQUESTParâmetro ausente ou inválido
401MISSING_API_KEY / INVALID_API_KEYNenhuma chave fornecida, ou chave inválida/revogada
402PAYMENT_REQUIREDSem créditos - compre um top-up ou faça upgrade
404VIDEO_UNAVAILABLE / TRANSCRIPT_NOT_FOUNDVídeo ou recurso não encontrado
429RATE_LIMITEDMuitas requisições para o seu plano
503UPSTREAM_UNAVAILABLEProblema temporário no serviço upstream - seguro para tentar novamente

Em breve

Busca dentro de um canal, listagem de todos os vídeos de um canal e paginação completa de playlists estão em desenvolvimento. O rastreamento de novos uploads via RSS está temporariamente indisponível devido a um problema não relacionado do lado do YouTube.

Usando esta API com uma ferramenta de IA

Prefere deixar o Claude (ou outra ferramenta de IA para código) chamar esta API para você em vez de escrever requisições manualmente? Baixe a skill YouTube Transcript - uma Claude Skill pronta que ensina como buscar transcrições, fazer buscas e muito mais.