20 % de desconto em todos os planos pagos com o código

Vídeo · YouTube

API scraper de comentários do YouTube

API scraper de comentários do YouTube: dados ao vivo de YouTube no momento em que você pede, limpos e estruturados – prontos para seu próprio app, uma planilha ou um assistente de IA. Sem scraping, nada para manter.

100 requisições grátis por mês · sem cartão de crédito · uma chave de API para todas as plataformas

Fatos principais

Atualizado em

É nos comentários que o público de um vídeo realmente responde, e um vídeo como Despacito tem mais de quatro milhões deles. A API de comentários do YouTube da everydata.io é um scraper de comentários para qualquer vídeo público: ela lê a seção de comentários – por ID ou URL – e a retorna como JSON estruturado: o texto do comentário, quem o escreveu e se esse autor é verificado ou é o criador, quantos likes e respostas ele tem, se o criador deu coração ou fixou o comentário, e um cursor para buscar as respostas abaixo dele. A paginação é baseada em cursor, como a rolagem infinita do próprio YouTube, para que você possa baixar os comentários de um vídeo página por página, e não exige credenciais nem unidades de cota do Google.

Plataforma
YouTube
Endpoint principal
/youtube-video-comments
Cota por chamada
1 requisição
Plano gratuito
100 req. / mêsdepois, a partir de € 30 / mês
O que você recebe

Dados de YouTube, prontos para usar

GET /ytb/youtube-video-comments retorna videoId e um array comments[]. Cada item traz commentId, text, publishedTimeText (o rótulo relativo do YouTube, como "2 days ago" ou "4 months ago"), authorName no formato @handle, authorChannelId, authorThumbnail, os booleanos authorIsVerified e authorIsCreator, likeCount como inteiro com likeCountText para o rótulo arredondado, replyCount, isHearted, isPinned e replyLevel (0 para um comentário de primeiro nível, 1 para uma resposta).

As threads são tratadas por cursores. A resposta de primeiro nível contém uma string cursor para a próxima página de comentários; cada comentário com respostas também traz o seu próprio repliesCursor. Passe qualquer um desses valores como parâmetro cursor em uma chamada seguinte para ir mais fundo – o mesmo id, outro cursor. Como a seção é buscada na página pública, a ordem segue o que o YouTube mostra por padrão (Principais comentários), com os comentários fixados primeiro.

  • commentId, text e publishedTimeText para cada comentário
  • authorName, authorChannelId, authorThumbnail, além das flags authorIsVerified e authorIsCreator
  • likeCount e replyCount como inteiros; likeCountText para exibição
  • isHearted e isPinned para identificar o engajamento do criador e avisos fixados
  • replyLevel e repliesCursor por comentário para expandir as threads de respostas
  • Cursor de primeiro nível para paginação contínua por toda a seção de comentários
  • ID do vídeo ou qualquer URL do YouTube aceitos; languageCode e countryCode para renderização localizada
Casos de uso

O que equipes criam com isso

Análise de sentimento e de temas

Busque os principais comentários do vídeo de lançamento de um produto ou de um anúncio, passe-os por um classificador e reporte as mudanças de sentimento ao longo do tempo – incluindo as respostas via repliesCursor.

Insights sobre a comunidade de criadores

Agências coletam isHearted, isPinned e authorIsCreator para medir o quanto um criador interage com o público em comparação com seus pares.

Verificações de brand safety e moderação

Antes de fechar patrocínios, analise os comentários recentes em busca de toxicidade ou padrões de spam e verifique se o criador modera (avisos fixados, respostas com coração).

Pesquisa de público

Extraia o conjunto de authorChannelId dos comentários em um nicho para estimar a sobreposição entre os públicos ativos dos canais.

Como funciona

Requisição e resposta de exemplo

Chame o endpoint com o id do vídeo e sem cursor para obter a primeira página. Identificadores que você talvez já tenha – o videoId do endpoint de detalhes do vídeo ou de um resultado de busca – funcionam diretamente. O exemplo abaixo mostra os dois primeiros comentários de Despacito; repare na conta verificada @YouTube respondendo ao marco de 9 bilhões de visualizações.

GET /ytb/youtube-video-comments

curl "https://api.everydata.io/ytb/youtube-video-comments?id=kJQP7kiw5Fk&languageCode=en&countryCode=US" \
  -H "x-api-key: YOUR_API_KEY"

Resposta (resumida)

200 OK · application/json
{
  "responseStatus": "PAGE_FOUND",
  "responseMessage": "Page successfully found!",
  "videoId": "kJQP7kiw5Fk",
  "comments": [
    {
      "commentId": "UgzKrZFVw83H4eLGQWR4AaABAg",
      "text": "17 september despacito ? 😂😂😂",
      "publishedTimeText": "2 days ago",
      "authorName": "@IRAQ2025_iraqia",
      "authorChannelId": "UCk9iiXHQBA6oC0WsAmaOsIg",
      "authorIsVerified": false,
      "authorIsCreator": false,
      "likeCount": 979,
      "likeCountText": "979",
      "replyCount": 67,
      "isHearted": false,
      "isPinned": false,
      "replyLevel": 0,
      "repliesCursor": "Eg0SC2tKUVA3a2l3NUZrGAYygwEaUBIaVWd6S3JaRlZ3ODNINGVMR1FXUjRBYUFCQWciAggAKhhVQ0xw…"
    },
    {
      "commentId": "UgzZfEnq23bUSeNQLX54AaABAg",
      "text": "who's here after 9 billion??",
      "publishedTimeText": "4 months ago",
      "authorName": "@YouTube",
      "authorChannelId": "UCBR8-60-B28hp2BmDPdntcQ",
      "authorIsVerified": true,
      "authorIsCreator": false,
      "likeCount": 83000,
      "likeCountText": "83K",
      "replyCount": 973,
      "isHearted": false,
      "isPinned": false,
      "replyLevel": 0,
      "repliesCursor": "Eg0SC2tKUVA3a2l3NUZrGAYygwEaUBIaVWd6WmZFbnEyM2JVU2VOUUxYNTRBYUFCQWciAggAKhhVQ0xw…"
    }
  ],
  "cursor": "Eg0SC2tKUVA3a2l3NUZrGAYylAMK1wJnZXRfcmFua2VkX3N0cmVhbXMtLUNxWUJDSUFFRlJlMzBUZ2Ftd0VLbGdFSTJGOFFnQVFZQnlLTEFYdEVnQ3FZVmZxMUJJajhxRDlySm9XX1lxb19IaU5YbWJNZGxDZHJ5c1VIaHJBU2s2UUlnV2xVdTMxdzhTaVpxaG1ZblF…"
}

A paginação funciona em dois eixos. O cursor de primeiro nível avança pela seção de comentários – envie-o de volta como ?id=kJQP7kiw5Fk&cursor=… para receber o próximo lote e pare quando a resposta não tiver cursor. O repliesCursor de um comentário abre a thread dele: passe-o como parâmetro cursor, e os comments[] retornados contêm as respostas com replyLevel 1. Cursores são tokens opacos vinculados ao vídeo; guarde-os apenas durante um crawl.

publishedTimeText é um rótulo relativo, porque é só isso que o YouTube exibe na seção de comentários. Se você precisar de datas absolutas, registre o horário da sua requisição e converta "2 days ago" do seu lado. likeCount é exato para números pequenos; para contagens grandes, o YouTube mostra um valor arredondado (83K), e likeCount reflete esse arredondamento, como se vê no segundo comentário do exemplo.

Vídeos com comentários desativados retornam um array comments[] vazio com PAGE_FOUND, e não um erro. Vídeos privados ou removidos retornam 404. Conte com cerca de 20 comentários por página; um crawl completo de um vídeo com 4,3 milhões de comentários, portanto, não é algo para fazer sem pensar – a maioria das análises usa uma amostra das primeiras centenas de comentários principais mais as respostas dos que têm mais likes.

Endpoints relacionados

GET/ytb/youtube-video-comments

Comentários do vídeo. Comentários paginados.

GET/ytb/youtube-video-details

Detalhes do vídeo. Metadados de um vídeo por ID ou URL.

GET/ytb/youtube-search-videos

Buscar vídeos. Busca por palavra-chave com paginação por cursor.

Referência completa da API
Preços

Pague por requisição, todas as plataformas incluídas

Cada página de comentários – de primeiro nível ou de respostas – é uma requisição. Amostrar as cinco primeiras páginas de 200 vídeos custa 1.000 requisições, bem dentro do plano Starter (5.000 requisições, € 30). Estudos maiores cabem no Production (50.000, € 80), com 100 requisições por minuto, então um crawl de 50 páginas de um vídeo leva menos de um minuto. Buscas com falha na origem não são cobradas.

Free
100 req. / mês
Starter
5.000 req. · € 30
Production
50.000 req. · € 80
Business
300.000 req. · € 300

API scraper de comentários do YouTube: perguntas frequentes

Como busco as respostas de um comentário específico?

Pegue o repliesCursor desse comentário e chame o mesmo endpoint com id e com cursor definido como esse valor. Os comments[] retornados contêm as respostas com replyLevel 1 e, se a thread for longa, mais um cursor.

Posso ordenar os comentários pelos mais recentes em vez dos principais?

O endpoint retorna a ordem que o YouTube exibe publicamente por padrão – Principais comentários, com os fixados primeiro. A ordenação pelos mais recentes não está disponível como parâmetro.

Há timestamps exatos para os comentários?

Não. O YouTube mostra apenas rótulos relativos na seção de comentários (publishedTimeText, como "2 days ago"). Registre o horário da busca e calcule uma data absoluta aproximada, se precisar.

O que acontece quando os comentários estão desativados?

Você recebe responseStatus PAGE_FOUND com um array comments[] vazio e sem cursor. Esse é o sinal confiável de que o criador desativou os comentários do vídeo.

Fazer scraping de comentários do YouTube é permitido?

A everydata.io retorna apenas comentários visíveis publicamente, sem fazer login nem contornar qualquer restrição. Textos de comentários e nomes de autores são dados pessoais em muitas jurisdições, então agregue e anonimize os dados para análises em vez de republicar threads.

Leia sua primeira thread de comentários

Cadastre-se gratuitamente, chame GET /ytb/youtube-video-comments?id=kJQP7kiw5Fk e percorra as respostas com o cursor – sem credenciais do Google.