Voltar ao blogIntegrações

Migrating from TranscriptAPI.com: A Field Guide

Switching a YouTube transcript integration from TranscriptAPI.com to GetYouTubeTranscript - parameter mapping, a before/after curl example, endpoint equivalents, and the real gaps that do not map 1:1.

00:06:00 · SEP 26, 2026

Resposta rápida

Os parâmetros video_url, format e include_timestamp do TranscriptAPI.com correspondem aos nossos v e language - mas nossa API pública não expõe marcações de tempo por segmento como a opção format=json deles. Se você só precisa do texto da transcrição e metadados, é quase uma troca direta; se depende de timestamps por segmento na própria resposta da API, leia a seção de diferenças antes de trocar.
01

Mapeamento de parâmetros

Ambas as APIs autenticam com um token bearer e aceitam uma URL completa, URL curta, ou um ID de vídeo simples. Veja como o restante dos parâmetros de transcrição do TranscriptAPI se relaciona com os nossos:

TranscriptAPI.comGetYouTubeTranscriptNota
Authorization: Bearer KEYAuthorization: Bearer KEYTambém aceitamos x-api-key como cabeçalho alternativo.
video_urlv (ou url, videoId)Mesmos formatos aceitos: URL completa, URL curta, ou um ID de 11 caracteres.
languagelanguageO nosso aceita um único código com um valor padrão, não uma lista de prioridade separada por vírgulas - peça um idioma por chamada.
format=json|text(nenhum - sempre texto simples)Nossa resposta sempre retorna a transcrição em texto simples no campo transcript, equivalente ao format=text deles.
include_timestamp(não exposto)Timestamps por segmento (start/duration) não estão na nossa resposta pública hoje - veja as diferenças abaixo.
send_metadata=true(sempre incluído)title, author_name, author_url e thumbnail_url estão sempre na resposta - nenhum parâmetro necessário.
02

Antes / depois

TranscriptAPI.com

curl -X GET "https://transcriptapi.com/api/v2/youtube/transcript?video_url=https://youtu.be/dQw4w9WgXcQ&language=en&send_metadata=true" \
  -H "Authorization: Bearer YOUR_API_KEY"

GetYouTubeTranscript

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

# => { "success": true, "data": { "video_id": "...", "language_code": "en",
#      "title": "...", "author_name": "...", "author_url": "...",
#      "thumbnail_url": "...", "transcript": "...", "word_count": 1847 } }

Mesmo vídeo, um crédito nos dois casos. Os metadados vêm por padrão do nosso lado, então não há um parâmetro send_metadata para lembrar.

03

Outros endpoints

TranscriptAPI.comGetYouTubeTranscriptNota
GET /youtube/info (grátis)GET /resolve?handle=... (grátis)O nosso resolve um handle/URL para um ID de canal; para metadados de vídeo, chame /transcript e leia os campos da resposta.
GET /youtube/search (1 crédito)GET /search?q=... (1 crédito/página)Mesma ideia - busca paginada, um crédito por página buscada.
GET /youtube/channel/resolve (grátis)GET /resolve?handle=... (grátis)Equivalente direto.
GET /youtube/channel/videos (1/página)GET /channel/videos?channel=... (1 crédito/página)Mesmo modelo de paginação - devolva o token de continuação da resposta.
GET /youtube/channel/search (1 crédito)GET /channel/search?channel=...&q=... (1 crédito/página)Equivalente direto.
GET /youtube/channel/playlists, /channel/posts(sem equivalente)Não oferecido atualmente - veja as diferenças abaixo.

O que não corresponde 1:1

  • Sem timestamps por segmento na resposta da API. O format=json + include_timestamp=true do TranscriptAPI retorna segmentos com start/duration; nossa API pública retorna apenas a transcrição em texto simples. (Timestamps por segmento existem no nosso banco de dados e alimentam a visualização clicável de transcrição no próprio site - simplesmente ainda não estão na resposta pública da API.)
  • language é um único código aqui, não uma lista de prioridade. O TranscriptAPI tenta uma lista separada por vírgulas como de,en,asr da esquerda para a direita; o nosso aceita um código com um valor padrão. Se você dependia de uma cadeia de fallback, tente novamente com outro valor.
  • Sem endpoints de playlists de canal ou posts de canal. /channel/playlists e /channel/posts do TranscriptAPI não têm equivalente aqui hoje.

Se texto de transcrição, metadados, busca e dados de canal cobrem seu caso de uso, isso é quase uma troca direta - cadastre-se para 100 créditos grátis (sem cartão) e veja a lista completa de preços e endpoints, ou confira a documentação da API para a referência completa de parâmetros.

FAQ de migração

Q01

Preciso mudar meu cabeçalho de autenticação?

Não - ambas as APIs usam Authorization: Bearer SUA_CHAVE. A nossa também aceita x-api-key como alternativa.

Q02

Minhas URLs e IDs de vídeo existentes vão continuar funcionando?

Sim - ambas as APIs aceitam uma URL completa do YouTube, uma URL curta youtu.be, ou um ID de 11 caracteres na mesma posição de parâmetro (video_url lá, v aqui).

Q03

O que acontece se eu enviar uma lista de idiomas separada por vírgulas como no formato do TranscriptAPI?

Nosso parâmetro language espera um único código, não uma lista. Um valor separado por vírgulas provavelmente não vai corresponder - peça um idioma por chamada, e tente novamente com outro se precisar de uma cadeia de fallback.

Q04

Posso obter timestamps por segmento da sua API?

Não pela resposta pública da API REST hoje - ela retorna a transcrição em texto simples. Se sua migração depende disso, espere até que seja exposto, ou use a própria visualização de transcrição do site, que já suporta isso.

Q05

É grátis para testar?

100 créditos grátis no cadastro, sem cartão - suficiente para testar os endpoints de transcrição, busca e canal antes de se comprometer com um plano.

Relacionados