Skip to main content
taskType seleciona o mecanismo. O envelope em volta do resultado é idêntico para todos; o que muda é o objeto response dentro dele.
Há nove superfícies de resposta disponíveis: CHATGPT, GEMINI, PERPLEXITY, BING_COPILOT, GOOGLE, AIMODE, BING_SEARCH, NAVER_AI_BRIEF e NAVER_AI_TAB. GOOGLE_SERP retorna resultados do Google sem o AI Overview, NAVER_SERP retorna os resultados web do Naver e REDDIT retorna posts e comentários do Reddit.

Qual campo do payload cada mecanismo lê

A validação aceita prompt ou query, e cada mecanismo recorre ao outro, então uma requisição enviada com a chave “errada” ainda é executada. Os dois cartões abaixo mostram o campo que cada mecanismo lê primeiro: o que a referência da API documenta e o que o Playground do painel envia para aquele mecanismo.

Lê prompt

CHATGPT PERPLEXITY GEMINI BING_COPILOTRecorre a query se prompt estiver ausente.

Lê query

GOOGLE AIMODE GOOGLE_SERP NAVER_AI_BRIEF NAVER_AI_TAB NAVER_SERP BING_SEARCH REDDITRecorre a prompt se query estiver ausente.

Opções de resposta

As respostas brutas vêm incluídas por padrão em todos os mecanismos de resposta. Defina payload.include.rawResponse como false para omiti-las. As demais opções variam por mecanismo:
rawResponse contém eventos de stream já interpretados. Google AI Overviews, AI Mode e Bing Search retornam o HTML completo da página renderizada como rawContent; o Naver retorna o stream de eventos original como string rawContent. Esses campos podem ser grandes. Use include.rawResponse: false quando precisar só do resultado estruturado. GOOGLE_SERP é a exceção: só retorna o HTML da página quando você define include.rawResponse: true.
markdown não é uma flag em todo mecanismo que o retorna: o Naver envia markdown sempre, porque para ele esse é o formato real da resposta, e não uma cópia de text.
Uma flag não respeitada é ignorada em silêncio: sem erro e sem campo. Em especial, html só é gerado pelo CHATGPT, embora vários mecanismos aceitem a flag.

Formatos de resposta

Lê prompt. Sempre retorna text e sources[].
Extras opcionais quando o Perplexity os exibe: videos, images, hotels, places, shopping_cards.
Lê prompt. Sempre retorna text e sources[].
Quando a resposta mostra produtos, shoppingCards (os cartões de produto que o Gemini desenha dentro da resposta) e inlineProducts (nomes de produto com link nas frases) os trazem com os mesmos campos da visão geral do GOOGLE. Os nomes dos cartões ficam em text e os links de produto apontam para a página de produto do Google.
Lê query. Não é um objeto de AI Overview isolado: é um envelope de resultados de busca que traz o AI Overview como um membro anulável.
aioverview: null é o sinal documentado de que o Google não exibiu um AI Overview para aquela consulta. Não é erro, e os campos de SERP ao redor continuam preenchidos.
text e sources de nível superior são aliases obsoletos que duplicam aioverview.text e aioverview.sources. Eles existem para que quem consome o antigo formato de AIO isolado continue funcionando. Em código novo, leia aioverview.*.Os painéis da SERP são omitidos quando ausentes, em vez de vir como null ou []: trate cada um como opcional.aioverview.shoppingCards e aioverview.inlineProducts só aparecem quando a visão geral mostra produtos. Os cartões são os blocos de produto que o Google desenha ao lado da resposta; os produtos inline são os nomes de produto com link dentro das frases. Os títulos dos cartões também ficam em aioverview.text. price.currency é o símbolo como exibido ($, ₩, 円), reviews mantém a abreviação do Google (2.3K) e productLink é a página de produto do Google.
Lê query. Formato fixo, sem markdown.
shoppingCards e inlineProducts só aparecem quando a resposta mostra produtos, com os mesmos campos da visão geral do GOOGLE.
Lê query. Retorna uma página de resultados do google.com no mesmo envelope do GOOGLE, mas sem o AI Overview: não há aioverview, text nem sources. Como não espera pelo overview, responde mais rápido que o GOOGLE e custa 1 crédito. Defina payload.page (1-10) para páginas mais profundas.
organicResults está sempre presente. position conta através das páginas, então o primeiro resultado da página 2 é o 11, e cada linha traz a page de onde veio. Um organicResults vazio significa que o próprio Google não retornou resultados para a consulta. Os outros painéis são omitidos quando a página não os tem. Defina include.rawResponse: true para receber também o HTML da página como rawContent.
Lê query e busca posts do Reddit por 1 crédito. Adicione subreddit (o nome sem r/) para buscar em um único subreddit.
Envie a url de um post (https://www.reddit.com/r/{subreddit}/comments/{postId}/...) em vez de query para ler o post com a primeira página de comentários, cerca de 20-25. commentSort (top por padrão, ou new, controversial, old, qa) ordena essa página e commentMaxDepth descarta respostas mais profundas (0 mantém só os comentários de primeiro nível).
post.commentCount é o total de comentários do post; comments traz a página que foi lida. archived é estimado pela idade do post (o Reddit bloqueia comentários depois de uns 180 dias). "action": "feed" lista os posts mais recentes de subreddit (r/popular se não for informado), e "action": "user_posts" com username lista o que esse usuário publicou; ambos retornam results como uma busca, até limit (padrão 25).Um results vazio em uma tarefa concluída significa que o Reddit não encontrou nada. Este mecanismo não retorna payload bruto, então as flags include não têm efeito.
Lê prompt. A resposta mais rica da API e a única em que todas as flags include funcionam. Todas as flags vêm ligadas por padrão.
O ChatGPT também suporta conversas com vários turnos; veja a seção Vários turnos mais abaixo.
Lê prompt. Retorna a resposta do chat do Copilot em copilot.com, com a busca na web sempre ligada. Não há conta nem login envolvidos. COPILOT continua aceito e é executado como BING_COPILOT.
sources são as páginas que o Copilot citou; perguntas de compras muitas vezes não citam nada e retornam cartões de produto, então sources: [] é uma resposta normal. shoppingCards, map e searchQueries estão sempre presentes e vazios quando o Copilot não os gerou. As posições dos produtos seguem em sequência por todos os cartões. markdown é retornado quando include.markdown é true.
Lê query. Retorna a página de resultados do bing.com no mesmo envelope do GOOGLE: resultados orgânicos, anúncios e buscas relacionadas, com o resumo de IA que o Bing mostra acima deles como aioverview. Não há conta nem login envolvidos. BING e BING_COPILOT_SEARCH continuam aceitos e são executados como BING_SEARCH.
aioverview: null significa que o Bing não exibiu um resumo de IA para aquela consulta. Não é erro, e os campos de resultados ao redor continuam preenchidos.
Em aioverview.text, [n] se refere a sources[n-1]. Cada entrada de citationPills[] é uma fonte por trás de uma citação inline; fontes citadas juntas compartilham um citationPillId. O campo é omitido quando o resumo não tem citações inline. markdown preserva títulos, listas e tabelas e é retornado quando include.markdown é true.Quando o Bing mostra um resumo, ele move a maior parte dos resultados orgânicos para a página seguinte, então espere dois ou três organicResults com resumo e uns nove sem. ads e relatedSearches são omitidos quando a página não os tem. rawContent é a página de resultados inteira; defina include.rawResponse: false para omiti-la. text e sources de nível superior são cópias obsoletas de aioverview.text e aioverview.sources (vazias quando não há resumo).O Bing não escreve um resumo para toda consulta. Perguntas do tipo busca (“como funciona uma bomba de calor no frio”) recebem resumo com muito mais frequência do que instruções (“Explique dois benefícios…”), e a cobertura fora do inglês é limitada.

Vários turnos (ChatGPT)

O ChatGPT consegue manter uma conversa. Omita os dois campos para o comportamento padrão de turno único.
1

Inicie uma conversa

Envie newConversation: true. A resposta traz um conversationId.
2

Continue

Envie esse conversationId de volta no próximo turno.
As conversas ficam vinculadas ao dispositivo que as criou e expiram após cerca de duas horas. Um conversationId expirado não pode ser retomado.

Guias dos mecanismos