Registo de alterações da API
Todas as alterações à API REST e às ferramentas MCP, as mais recentes primeiro.
-
2026-10
Ligações a entidades Google agrupadas à parte. As ligações do Google AI Mode e do AI Overviews para o visualizador de entidades da Google (
google.com/searchviewer/...) mantêm o respetivourl, mas passam a indicargoogle-entity.invalidcomodomainehost, em vez degoogle.com, emGET /metrics/top_sources,GET /dimensions/sources, nos endpoints de inteligência de citações e nas exportações. Nunca contam como citações próprias ou de concorrentes, pelo que um projeto ou concorrente com um domínio da Google deixa de ser creditado por elas. Na aplicação, o grupo é apresentado como «Google (entidade)». -
2026-09-30
As chaves de API deixam de funcionar abaixo do plano Scale. As chaves de API são uma funcionalidade do plano Scale e passam agora a deixar de funcionar enquanto a conta estiver num plano inferior ao Scale, por exemplo, após uma descida de plano: todos os pedidos REST e pedidos a
/mcpfeitos com uma chave devolvemERR_PLAN_REQUIRED(403). As chaves não são revogadas: continuam listadas, podem continuar a ser revogadas e voltam a funcionar quando a conta regressa ao plano Scale ou superior. O MCP através de OAuth não é afetado. -
2026-09-29 (v1.52.0)
Editar os ficheiros de relatórios llms.txt através da API.
PATCH /technical_geo_reports/:id/contentsubstitui os ficheiros llms.txt e llms-full.txt de um relatório llms.txt concluído: enviereport_type=llms_txt, um objetoeditscom o texto integral novo dellms_txte/oullms_full_txt, e ocontent_versionque leu da última vez. Os detalhes do relatório passam agora a devolverresult_data.content_version. Umcontent_versiondesatualizado ou em falta, um ficheiro vazio, um ficheiro com mais de 200 000 caracteres ou um relatório ainda não concluído devolveERR_INVALID_PARAM, e a resposta da atualização passa a incluirchanged_files. A primeira edição guarda os ficheiros gerados emoriginal_llms_txt_contenteoriginal_llms_full_txt_content, ePOST /technical_geo_reports/:id/revert_contentrepõe esses ficheiros. Duas ferramentas MCP correspondem aos endpoints:update_technical_geo_report_contenterevert_technical_geo_report_content. Ambas as operações de escrita requerem uma chave com âmbito de escrita e, para membros da equipa, permissão de criação em GEO Optimization. -
2026-09-29 (v1.52.0)
Idioma de saída automático nos relatórios llms.txt.
output_language_codeemPOST /technical_geo_reportsecreate_technical_geo_reportpassa também a aceitarauto, que mantém os ficheiros llms.txt no idioma usado pelo próprio site. A resposta de criação devolveautoe, em seguida, o relatório devolveoutput_language_code: null. -
2026-09-28 (v1.51.1)
Quota de relatórios de GEO técnico.
POST /technical_geo_reportsecreate_technical_geo_reportpassam a contabilizar cada relatório criado com êxito como uma unidade diária. A opção «Executar tudo» tenta criar nove relatórios e só começa quando restam pelo menos nove unidades diárias. Os relatórios que não forem criados não consomem unidades. As alocações diárias variam consoante a conta. -
2026-09-28 (v1.51.0)
Os esquemas das respostas correspondem ao que a API envia. As respostas não mudam no formato transmitido; o documento OpenAPI e os SDKs oficiais passam agora a descrevê-las corretamente. Os pontos de
GET /metrics/timeseries,GET /metrics/summarye da sérieover_timedeGET /metrics/sov(TimeseriesPoint) passam a conter uma data de calendário, como2026-09-01(o primeiro dia do período quando a granularidade é semanal ou mensal), em vez de um carimbo temporal, evalueénullpara métricas de taxa, posição e sentimento nos dias sem respostas. Antes, os SDKs de Go, Java, Kotlin, Rust e C# não conseguiam descodificar estes pontos. Nos SDKs tipados,datepassa a ser um tipo de data, por exemploLocalDateem Java e Kotlin,DateOnlyem C#,NaiveDateem Rust,dateem Python e uma string em Go. Os campos que a API pode devolver comonullpassam agora a ser declarados anuláveis, o que antes era rejeitado pelo SDK de C#:brand_name,url,description,business_model,target_audience,brand_voice,goals,google_play_ideapp_store_idemGET /dimensions/projects/{id};matching_names,google_play_id,app_store_idecoloremGET /dimensions/competitors/{id};domainno objeto do projeto emGET /metrics/timeseries,GET /metrics/summaryeGET /metrics/sov, e na linha da marca própria deGET /dimensions/competitors, quando o projeto não tem URL;response,executed_at,success,duration_msefan_out_queriesemGET /answers/{id};result_datanas tarefas de GEO Writer; elast_delivered_atnas subscrições de webhooks.duration_msé um número com uma casa decimal, não um número inteiro. No SDK de Go, os campos que não são arrays usam agora os tipos wrapperNullable*. -
2026-09-28 (v1.50.1)
Paridade no acesso a sentimentos.
GET /sentimentseGET /dimensions/sentimentspassam agora a exigir o plano Growth. As ferramentas MCP correspondentes aplicam o mesmo requisito de plano e devolvemERR_PLAN_REQUIREDa chamadas diretas feitas abaixo desse nível. -
2026-09-28 (v1.50.0)
Configuração de projetos com menos chamadas.
POST /projectse a ferramenta MCPcreate_projectaceitamcollections, uma lista de{name, prompts}que cria etiquetas de prompts com o projeto e atribui etiquetas aos prompts do mesmo pedido com base no respetivo texto, e a resposta passa a incluircollectionsesame_domain_projects(projetos que já pode ver no mesmo domínio; a criação nunca é bloqueada).industryaceita uma chave ou um array na criação, em rascunho e na atualização, e uma chave desconhecida passa agora a indicar quais são as válidas.PATCH /projects/:ideupdate_projectaceitamname. Os períodos deGET /metrics/sovpassam a incluirconfidenceemargin_of_error, além de umsamplede nível superior.GET /accounteget_account_usagepassam a incluirplan_name. Apenas no MCP:get_sovaceitaview=compactelist_promptsaceitafields. -
2026-09
Código para exigir um plano nas ferramentas MCP com acesso condicionado. Uma chamada direta a
tools/callpara uma ferramenta não incluída no plano passa agora a devolvercode: "ERR_PLAN_REQUIRED"junto aerror, o mesmo código que os endpoints REST devolvem quando o plano não dá acesso. O texto deerrornão muda. -
2026-09 (v1.49.0)
As menções em páginas são apresentadas por projeto. Os campos de menções em páginas de
GET /citation_intelligence/groups,GET /citation_intelligence/urls/{url_sha256}e/content, incluindo as contagens de menções por domínio e anfitrião e o filtrocontent_gap, passam a descrever a análise da página citada para o projeto que faz o pedido. Uma página ainda não analisada para o projeto, incluindo uma guardada antes de o projeto a citar, devolvenullparabrand_mentionedecompetitor_mentionedem vez defalse,content_gap_status: mentions_not_processedepage_cache.mentions_processed: false, e as contagens de menções de um grupo sãonullquando nenhuma das respetivas páginas foi analisada. A mesma regra aplica-se apage_detailsemGET /answers/{id}, ao filtromention_filteremGET /dimensions/sourcese às ferramentas MCP correspondentes.mentions_not_processedjá era devolvido antes desta versão e passa agora a estar documentado. -
2026-09 (v1.48.0)
Ligações para a aplicação. As respostas (
GET /answers,GET /answers/{id},GET /dimensions/prompt_executions), os prompts (GET /dimensions/prompts,GET /metrics/prompt_summary) e os relatórios técnicos GEO (GET /technical_geo_reports,GET /technical_geo_reports/{id}) passam a devolverapp_url, a ligação que abre o registo na aplicação.POST /technical_geo_reportsdevolveapp_urls, uma ligação por relatório criado, identificada pelo tipo de relatório. Cada ligação termina em?project_id=, pelo que abre o projeto para qualquer utilizador com acesso. As ferramentas MCP devolvem as mesmas ligações. -
2026-09 (v1.47.0)
Idioma de saída e edições manuais de llms.txt.
POST /technical_geo_reportse a ferramenta MCPcreate_technical_geo_reportpassam a aceitaroutput_language_code(ISO 639-1, com o idioma do projeto como valor predefinido) para o relatório llms.txt do conjunto. Os resumos dos relatórios passam a exporoutput_language_codee umresult_datallms.txt concluído acrescentamanually_edited_at,original_llms_txt_content,original_llms_full_txt_contentemetadata.output_language_code: quando os ficheiros são editados na aplicação,llms_txt_contentellms_full_txt_contentdevolvem o texto editado. -
2026-09 (v1.46.0)
O parâmetro
filtersdo Search Console passa a estar disponível nos SDK oficiais. O parâmetro aceita a lista completa como um único valor JSON,filters=[{"dimension":"page","operator":"contains","expression":"/blog/"}], porque não existe um formato de parâmetro de consulta para arrays de objetos que um cliente gerado consiga produzir. A codificação existente com parênteses retos,filters[][dimension]=page, não muda e continua a funcionar. -
2026-09 (v1.45.0)
Os filtros de modelo passam a aceitar
naver_aiebaidu_aipara contas que tenham ativado esses suplementos em regime de autosserviço. -
2026-09
Compatibilidade do diretório MCP. As descrições das ferramentas passam a indicar apenas a respetiva operação, entradas, limites e efeitos secundários. Foram removidas as instruções de orquestração entre ferramentas e sobre o comportamento do modelo. Os guias de análise orientada continuam disponíveis através da funcionalidade de prompts MCP iniciada pelo utilizador, mas deixam de ser expostos por
get_analysis_playbook, uma vez que as ferramentas não devem injetar instruções comportamentais dinamicamente. -
2026-09 (v1.44.0)
Os URLs citados mantêm as métricas de citação quando o conteúdo da página está indisponível. Quando não se sabe se uma página contém menções, a API passa a devolver null; content_gap_status passa a incluir content_unavailable. Os resultados vazios do rastreio deixam de ser apresentados como páginas analisadas. Os estados 404 e 410 observados continuam visíveis.
-
2026-09
Códigos legíveis por máquina nos erros das ferramentas MCP. Uma chamada
tools/callcom falha continua a devolverisError: truee o respetivo texto passa a incluircodejunto deerrorsempre que esse estado tenha um equivalente REST, usando o mesmo valor devolvido pelo endpoint REST:ERR_PROJECT_NOT_FOUND,ERR_INVALID_PARAM,ERR_INVALID_RANGE, os três códigos Search Console (ERR_SEARCH_CONSOLE_NOT_CONNECTED,ERR_SEARCH_CONSOLE_ACCESS_REVOKED,ERR_SEARCH_CONSOLE_UPSTREAM) eERR_AI_TRAFFIC_NOT_CONNECTED/ERR_AGENT_TRAFFIC_NOT_CONNECTED. O texto deerrornão muda. -
2026-09
Webhook para edições manuais de GEO Writer (v1.43.0). É criado um novo tipo de evento,
intelligence_task.updated, quando o texto de uma tarefa concluída é editado manualmente ou reposto para a versão de IA. Os dois payloads de eventos GEO Writer passam a incluirmanually_edited_at, que énullnuma tarefa nunca editada ou acabada de repor. Subscreva-o comPOST /webhooks, como qualquer outro evento;GET /webhooks/sample/intelligence_task.updateddevolve payloads de exemplo. Os conectores Zapier, Make e n8n expõem-no como um novo acionador. -
2026-09
Editar o resultado de GEO Writer depois da geração (v1.42.0).
PATCH /intelligence_tasks/:idedita diretamente o texto de uma tarefa concluída: envie um objetoeditscujas chaves sejam caminhos separados por pontos dentro deresult_data(por exemplo,sections.0.contentoutitle) e cujos valores sejam o texto de substituição. Só podem ser alterados campos de texto que já existam; um caminho não resolvido, umtitlevazio ou um valor com mais de 20 000 caracteres devolveERR_INVALID_PARAM. A primeira edição guarda uma cópia do resultado gerado ePOST /intelligence_tasks/:id/revertrepõe essa versão. Os payloads das tarefas passam a incluirmanually_edited_at(lista e detalhes) eedited_by_user_id(detalhes); a resposta da atualização acrescentachanged_paths. Duas ferramentas MCP reproduzem os endpoints:update_intelligence_task_contenterevert_intelligence_task_content. Ambas as escritas exigem uma chave com âmbito de escrita e, para membros da equipa, permissão de edição em GEO Writer. -
2026-09
Filtros do cálculo da quota de menções por domínio citado (v1.42.0).
GET /citation_intelligence/mentions_by_domaine a ferramenta MCPget_mentions_by_citing_domainpassam a aceitarbrand_kind(brand,brand_otherounon_brand) e a aplicar esse filtro ao universo de respostas do projeto, em conjunto com os filtros de modelo, país, idioma e coleção. Se o parâmetro for omitido, mantém-se o comportamento anterior, que inclui todos os tipos de marca. O endpoint REST rejeita valores inválidos comERR_INVALID_PARAM; a ferramenta MCP devolve um erro de validação. -
2026-09
Duas correções Search Console (v1.41.0). Uma
dimensiondesconhecida passa a devolverERR_INVALID_PARAM, em vez de ser ignorada sem aviso; os valores das divisõespageequerymantêm as maiúsculas e minúsculas devolvidas pelo Google, em vez de serem convertidos para minúsculas, uma vez que os URLs das páginas distinguem maiúsculas de minúsculas. -
2026-09
Os endpoints Search Console passam a aceitar todo o vocabulário de consultas Google (v1.41.0). Os quatro endpoints
/search_console/*e as respetivas ferramentas MCP passam a aceitar três novos parâmetros da consulta Search Analytics disponibilizada pelo Google:search_type(web,image,video,news,discover,googleNews),filters(um array de objetos{dimension, operator, expression}combinados com AND; dois dos seis operadores são expressões regulares RE2) edata_state(finalpor predefinição, ouallpara incluir os dias mais recentes, ainda incompletos).GET /search_console/summarypassa também a apresentar divisões porpage,queryesearchAppearance, além decountryedevice, com um limite definido porlimit(predefinição e máximo: 1000). Os intervalos de datas passam de 400 para 487 dias, os 16 meses de retenção aplicados pelo Google. -
2026-09
Correções dos intervalos de datas e das agregações (v1.40.0). Um valor
toque contém apenas uma data (por exemplo,to=2026-09-01) passa a abranger esse dia inteiro. Antes, era interpretado como meia-noite, excluindo o último dia e encurtando todos os intervalos em um dia. Os clientes que já enviam uma data e hora completas não são afetados. Os períodos semanais e mensais emGET /reports/ai_model_insights/*passam a dividir o total do período, em vez de calcular a média das percentagens diárias, para que um dia de maior atividade não conte o mesmo que um dia mais calmo. As médias de posições passam a ponderar cada linha pelo número de posições que contém, em vez de tratarem todas as linhas da mesma forma. As linhas removidas de um projeto deixam de contar para menções, citações, origens ou sentimentos em qualquer endpoint de leitura. -
2026-09
Moeda nas linhas dos resultados de compras.
GET /dimensions/shoppingcomview=merchantspassa a devolver um campocurrencyque indica a moeda em que são expressos os valores demin_price,max_priceeavg_price. Os fornecedores definem os preços de cada mercado na respetiva moeda e não enviam um campo próprio para a identificar; por isso, um comerciante que venda em mais de uma moeda passa a apresentar a moeda usada na maioria dos seus preços, em vez de calcular uma média entre moedas, e um intervalo de preços nunca mistura moedas diferentes. O valor énullquando não foi possível identificar a moeda de nenhum preço. Emview=products,currencypassa a identificar a moeda demax_price, e um novo campocurrency_countindica em quantas moedas o produto tinha preços: um valor superior a 1 significa que a linha apresenta a oferta com o preço mais alto e quemin_pricepode estar noutra moeda.totals.avg_pricepassa a ser calculado numa única moeda, em vez de resultar de uma média entre moedas, etotals.avg_price_currencyidentifica essa moeda. Não há novos endpoints nem códigos de erro. -
2026-09
Detalhes de erro mais claros e filtro de modelo mais rigoroso nas respostas (v1.38.0). Os erros com detalhes em
error.meta.messagepassam a incluir também esses detalhes emerror.message.error.metanão muda. Os erros sem detalhes continuam a usar tokens de mensagem predefinidos, comomissing_authorization. Use sempreerror.codepara decidir como tratar o erro, nunca o texto da mensagem.GET /answerspassa a rejeitar valoresmodelque a conta não monitoriza, devolvendo422 ERR_INVALID_PARAMem vez de ignorar o filtro. As descrições deERR_LIMIT_REACHEDeERR_QUOTA_EXCEEDEDpassam a indicar todos os limites abrangidos por cada código. -
2026-09
Chaves revogadas e respostas de âmbito de escrita (v1.37.1). Uma chave de API revogada passa agora a devolver
403 ERR_REVOKED_API_KEY, conforme documentado, em vez de401 ERR_INVALID_API_KEY. A chave de um membro da equipa é recusada da mesma forma enquanto o titular da conta estiver bloqueado ou com a eliminação pendente.POST /intelligence_tasks,PATCH /project_drafts/:idePOST /project_drafts/:id/finalizepassam a documentar a resposta403 ERR_INSUFFICIENT_SCOPErecebida por uma chave só de leitura, em linha com as restantes operações de escrita. -
2026-09
Códigos de erro Search Console e contrato de leitura em tempo real (v1.37.0). Quando as leituras em tempo real estão ativadas, os quatro endpoints
/search_console/*devolvemERR_SEARCH_CONSOLE_ACCESS_REVOKED(403) se o acesso Google tiver sido revogado; volte a ligar a propriedade em Preferências > Definições do projeto > Ligações de dados. DevolvemERR_SEARCH_CONSOLE_UPSTREAM(503) quando o Google Search Console está indisponível ou excede a quota; aguarde o número de segundos indicado emRetry-Afterantes de tentar novamente. As ferramentas MCP comunicam estas situações como erros de ferramenta. O cabeçalho de respostaX-Search-Console-Backendidentifica as leiturasstoredoulive. As leituras armazenadas usam dados sincronizados, sem contactar o Google. Para consultas e páginas,totalconta as chaves distintas disponíveis no período: chaves das linhas diárias sincronizadas nas leituras armazenadas ou até 25 000 linhas de um pedido ao Google nas leituras em tempo real. As respostas em tempo real incluemtruncated: truequando atingem esse limite. A ordenação e a paginação aplicam-se ao conjunto disponível. -
2026-09
Correspondência de URLs de citações por concorrente (v1.36.0).
POST /competitorsePATCH /competitors/:idpassam a aceitar o campo opcionalcitation_match_modecom os valoresdomain,hostoupath_prefix.citation_match_pathé obrigatório quando se usapath_prefix.PATCH /competitors/:idpassa também a permitir alterardomain, que guarda o domínio do site ou o anfitrião exato usado pela regra. As respostas de leitura dos concorrentes passam a devolver os campos da regra. A alteração do site ou de qualquer uma das definições da regra volta a classificar citações históricas em segundo plano, para que as métricas históricas e a atribuição de origens reflitam a nova configuração. -
2026-08 (final do mês)
A referência pública da API passa a ter uma página por recurso.
https://llmpulse.ai/api-docspassa a incluir os primeiros passos (chaves, primeira chamada, utilização da conta) e ligações para uma página por recurso:/api-docs/projects,/api-docs/metrics,/api-docs/prompts,/api-docs/webhooks,/api-docs/core-concepts(filtros partilhados, formatos de saída, códigos de erro),/api-docs/integrations(exemplos de código, Postman, MCP),/api-docs/oauthe as restantes, acessíveis a partir de todas as outras páginas. As ligações antigas para secções específicas, como/api-docs#webhooks, passam a encaminhar para a página onde a secção se encontra agora.llms.txtlista o URL da documentação de cada grupo de recursos, juntamente com os respetivos endpoints. Os utilizadores com sessão iniciada e Scale+ continuam a ter a referência completa numa só página, com a área de testes interativos, na aplicação, em API Keys. Nenhum endpoint, parâmetro, payload ou código de erro mudou. -
2026-08 (final do mês)
Enumerações do perfil do projeto atualizadas (v1.35.0).
business_modelpassa a descrever um único aspeto, a forma como uma marca vende, em vez de combinar o canal e o setor. As chaves aceites sãoB2B_SAAS,B2C_SUBSCRIPTION,ECOMMERCE,RETAIL,MARKETPLACE,LEAD_GENERATION,SERVICES,ENTERPRISE_SOFTWARE,MEDIA_ADVERTISING,EDUCATION_TRAINING,NONPROFIT_PUBLICeOTHER. As chaves descontinuadas (B2B_CLOUD_SERVICES,B2C_SMART_HOME,B2C_STREAMING,B2C_GAMING) são convertidas para o valor atual mais próximo emPOST /projectsePATCH /projects/:id, em vez de serem rejeitadas, para manter a compatibilidade com as integrações existentes; as chaves realmente desconhecidas continuam a devolverERR_INVALID_PARAM.industrypassa a aceitar 34 chaves em vez de 19, incluindo setores que antes tinham de usarOTHER. Os valores armazenados foram migrados, pelo que um projeto criado antes desta alteração passa a devolver a nova chave quando consultado. O campo complementar de texto livrebusiness_model_otherpassa a fazer parte da API: envie-o juntamente combusiness_model: OTHERemPOST /projectsouPATCH /projects/:id(e nas ferramentas MCPcreate_project/update_project) para que seja devolvido no payload do projeto. Se for enviado com outra chave, devolveERR_INVALID_PARAM; é eliminado automaticamente quando o modelo de negócio deixa de serOTHER. -
2026-08 (final do mês)
Filtros de análise com vários valores (v1.34.0).
collection_id,country_code,language_codeeprompt_typepassam a aceitar um valor ou uma lista separada por vírgulas nos endpoints de métricas, dimensões, respostas, Citation Intelligence e AI Model Insights que já suportam esses filtros.GET /sentimentspassa também a aceitar vários valoresanalysis. Os valores dentro do mesmo filtro são combinados com OR; filtros diferentes são combinados com AND. Os pedidos com um único valor continuam a funcionar sem alterações, e as ferramentas MCP correspondentes seguem o mesmo contrato. -
2026-08 (final do mês)
Consulta de relatórios técnicos GEO (v1.33.0).
GET /technical_geo_reportslista relatórios porproject_idereport_type, enquantoGET /technical_geo_reports/:iddevolve o estado atual e oresult_datacompleto quando o relatório estiver concluído. As novas ferramentas MCPlist_technical_geo_reportseget_technical_geo_reportoferecem o mesmo acesso, ecreate_technical_geo_reportpassa a devolver os IDs dos relatórios e a indicar aos clientes que os consultem. Claude e outros clientes MCP podem agora iniciar, aguardar e consultar relatórios técnicos GEO na mesma conversa, sem passos de copiar e colar. -
2026-08 (final do mês)
Registos sentinela de ausência de resposta passam a ser expostos como
no_result. Quando um fornecedor não devolve uma resposta a um prompt após todas as tentativas, o texto armazenado é um marcador e não uma resposta real da IA; estas linhas já eram excluídas de todas as métricas da plataforma, mas não se distinguiam através da API. Os itens deGET /answerseGET /answers/:idpassam a incluir um valor booleanono_result, eGET /answers(bem como a ferramenta MCPlist_answers) passa a aceitar o filtro opcionalno_result:false= apenas respostas reais (recomendado para calcular as suas próprias métricas),true= apenas marcadores, omitido = ambos (formato anterior mantido). -
2026-08 (meados do mês)
Atualizações do perfil do projeto e Brand Book na criação (v1.31.0). O novo endpoint
PATCH /api/v1/projects/:idatualiza o perfil de um projeto depois da criação, com os mesmos campos das Definições do projeto:brand_name,description,industry,business_model,target_audience,brand_voice,goals,primary_productsematching_names. Os campos do Brand Book (description,industry,brand_voice,target_audience) alimentam o GEO Writer, as sugestões de prompts e as recomendações, permitindo a sincronização programática do contexto da marca por sistemas externos. Envie apenas os campos que pretende alterar; os campos desconhecidos devolvemERR_INVALID_PARAM. A alteração dematching_names(lista de substituição completa) volta a executar a correspondência de menções/citações em todo o histórico do projeto em segundo plano (rematching: true; não são aceites novas alterações durante o processo), enquanto uma alteração debrand_namesó se aplica a execuções futuras.POST /api/v1/projects(e a ferramenta MCPcreate_project) passam a aceitarbusiness_model,target_audience,brand_voice,goalseprimary_productsna criação. A ferramenta MCPupdate_projectexistente e o novo endpoint REST passam a partilhar exatamente o mesmo serviço. É necessária uma chave com âmbitoread_write; os membros da equipa precisam da permissão de atualização de Projects. -
2026-08 (meados do mês)
Correções de filtros nas novas listas (v1.30.0). Os filtros que estavam documentados, mas eram ignorados sem aviso, passam a funcionar.
store(meios próprios) estatus(tópicos do Reddit) chegam à consulta em vez de serem descartados; assim,store=app_storeestatus=archiveddeixam de devolver linhas sem filtro.owned=truepassa a ser aplicado aGET /dimensions/shopping?view=merchants, que antes devolvia todos os comerciantes, incluindo concorrentes, e aGET /dimensions/owned_media?provider=mobile_apps, cujas linhas passam a incluir o indicadoryours, já devolvido por todos os outros fornecedores. Para este fornecedor,totalpassa a ser a contagem total do ranking (com o limite de 500) em vez do tamanho da página, que levava os clientes com paginação a concluir que não havia resultados após a página 1.direction=descpassa a ordenar alfabeticamente em sentido descendente os campos de texto deGET /dimensions/query_fan_outs(order=query_text,order=prompt_text), que antes eram sempre ascendentes; ambos passam a usar a ordenação descendente por predefinição, tal como as restantes ordenações. O parâmetroviewde cada endpoint passa finalmente a poder ser combinado comoutput=flatououtput=csv(por exemplo,?view=merchants&output=csv), combinação que antes devolviaERR_INVALID_PARAM; as respostas planas passam a devolverview,providerestore.GET /accountpassa a indicar o limite de pedidos da chave usada, em vez do valor predefinido, e o respetivo blocosubscriptionfica limitado a quem pode aceder a Faturação e planos. Os estudos passam a estar limitados aos projetos a que o utilizador pode aceder. -
Agosto de 2026 (meados): Seis novas áreas de produto (v1.29.0). Cartões de produtos disponíveis para compra e anúncios pagos em respostas de IA:
GET /api/v1/dimensions/shoppingeGET /api/v1/dimensions/ads(Scale+). Canais próprios e comunidades:GET /api/v1/dimensions/owned_media(YouTube, Instagram, Facebook, TikTok, LinkedIn, lojas de aplicações) eGET /api/v1/dimensions/reddit(Growth+). Relatórios de análise com vários modelos:GET /api/v1/reputation/reports,GET /api/v1/reputation/reports/:id,GET /api/v1/studies,GET /api/v1/studies/:ideGET /api/v1/studies/:id/reports/:report_id(requer monitorização da reputação). Os endpoints de produtos e anúncios são deliberadamente independentes do modelo, em vez de terem o nome de um assistente específico, uma vez que os dados subjacentes sempre usaram a enumeração padrão de modelos. Nove ferramentas MCP correspondentes:list_shopping_products,list_ads,list_reddit_citations,list_owned_media,list_reputation_reports,get_reputation_report,list_studies,get_study,get_study_report. Todos os nove endpoints suportamoutput=flateoutput=csv. -
2026-08
Expansão de consultas na API e no MCP (v1.28.0). O novo endpoint
GET /api/v1/dimensions/query_fan_outsexpõe as subconsultas que um modelo efetivamente fez ao responder aos prompts monitorizados, que muitas vezes diferem da formulação escrita por si.view=query(predefinição) devolve uma linha por subconsulta distinta, com a contagem de ocorrências e a respetiva quota;view=promptdevolve uma linha por prompt, com o número de subconsultas distintas que originou. Aceita os filtros de prompts habituais e aindaquery(pesquisa parcial),order,directioneoutputpara saída plana/CSV; uma ordenação incompatível com a vista escolhida devolveERR_INVALID_PARAM. A ferramenta MCP correspondente élist_query_fan_outs. A expansão de consultas é comunicada sobretudo pelo ChatGPT, pelo que um resultado vazio costuma indicar que os modelos abrangidos não disponibilizam esses dados, e não que não tenha havido pesquisas. O endpoint devolve apenas os agregados: para comparar períodos, faça duas chamadas comfrom/toexplícitos. As duas interfaces estão sujeitas à mesma permissão de membro da equipa Query Fan Out que a página na aplicação. -
2026-08
Utilização da conta, cabeçalhos de limite de pedidos e glossário MCP (v1.27.0). O novo endpoint
GET /api/v1/accountdevolve o plano, a frequência de monitorização, o período da subscrição, o consumo de quotas (prompts, projetos, concorrentes por projeto, tarefas GEO Writer mensais e membros da equipa) e os limites aplicáveis à chave, para que uma integração possa consultar o saldo disponível sem ter de ultrapassar o limite. Uma quota ilimitada devolvelimiteremainingcomonulleunlimited: true. A ferramenta MCP correspondente éget_account_usage, disponível em todos os planos. Os limites são determinados pela conta do titular, pelo que um membro da equipa vê a capacidade que lhe é aplicável. Todas as respostas/api/v1passam a incluirX-RateLimit-Limit,X-RateLimit-RemainingeX-RateLimit-Reset(a resposta429 ERR_RATE_LIMITEDinclui-os juntamente comRetry-After); os dois limites, 300 pedidos por minuto no total e 60 por minuto para escritas, passam a estar documentados. O servidor MCP passa também a disponibilizar o novo recursollmpulse://glossary, que define cada métrica, unidade, dimensão e ressalva de interpretação (visibility face a AI Visibility Score, denominadores de Share of Voice, foco na marca, períodos parciais e amostras reduzidas), para que um assistente possa consultar as definições em vez de as inferir. Nenhum endpoint, parâmetro, payload ou código de erro existente mudou. -
2026-08
Agent Readiness integrado no conjunto de relatórios técnicos GEO (v1.26.0).
POST /technical_geo_reportspassa também a criar um relatórioagent_readinessque avalia a preparação do domínio para agentes de IA, pelo quecreated_reportsereport_idspassam a incluir a nova chaveagent_readiness(9 relatórios por execução, em vez de 8). A ferramenta MCPcreate_technical_geo_reportcria o mesmo conjunto. As chaves e os formatos das respostas existentes não mudam. -
2026-08
Monitorização semanal de Grok e DeepSeek. Os valores de filtro
modelgrokedeepseekpassam a devolver dados reais de visibilidade semanal nas contas com esses suplementos ativados, em todos os endpoints de métricas, dimensões, respostas, sentimentos e citações (antes eram aceites como valores de filtro, mas não correspondiam a execuções). As respostas do Grok provêm da respetiva pesquisa Web nativa, pelo que incluem origens e citações como as dos restantes modelos. As respostas de DeepSeek não incluem origens nem citações: o DeepSeek não disponibiliza pesquisa Web, pelo que as respostas refletem o conhecimento do próprio modelo. As linhas DeepSeek devolvemcitations: 0e uma lista de origens vazia, por conceção;visibility,mention_rate, Share of Voice e sentimento funcionam normalmente. O formato das respostas não muda e os modelos que o utilizador da chave de API não ativou continuam a ser descartados sem aviso. -
2026-08
Cartão público do servidor MCP. O novo endpoint
GET /api/v1/mcp/server-carddevolve um cartão de servidor Model Context Protocol com a descrição do endpoint, o transporte HTTP com streaming, as versões do protocolo aceites e o cabeçalho Authorization que o cliente deve enviar. Não requer autenticação, pois é um documento que o cliente consulta antes de obter credenciais, e não contém credenciais. O cartão é anunciado no catálogo Agentic Resource Discovery em/.well-known/ai-catalog.json, cuja entrada MCP passa a usar o tipo de media corretoapplication/mcp-server-card+jsone aponta para o cartão, em vez de apontar para o endpoint de transporte. O cartão não é servido deliberadamente em/.well-known/mcp/server-card.json: a especificação MCP exclui esse local. A LLM Pulse passa também a publicar um catálogo da API em/.well-known/api-catalog(RFC 9727) e um índice de competências de agentes em/.well-known/agent-skills/index.json. -
2026-08
Referência da API reorganizada por recurso. A documentação em
/api-docs, as especificações OpenAPI e Swagger, o índice legível por máquinallms.txte a coleção Postman passam a agrupar cada endpoint pelo recurso a que pertence (Projects, Metrics, Competitors, Prompts, Collections & Tags, Answers, Mentions & Citations, Sentiments, Sources & Citation Intelligence, AI Model Insights, AI & Agent Traffic, Search Console, Recommendations, GEO Writer, Technical GEO Reports, Annotations, Webhooks, MCP), apresentando leituras e escritas em conjunto e na mesma ordem em todas as superfícies. A lista de etiquetas OpenAPI passa a declarar todas as etiquetas utilizadas: Projects, Competitors, Collections, Annotations, Reports e OAuth estavam em falta, pelo que Swagger UI e Redoc apresentavam esses endpoints no fim, sem descrição.POST /projectse o assistente/project_drafts, que antes não constavam dellms.txt, passam a ser listados, e a coleção Postman passa a abranger todos os endpoints, em vez das duas pastas originais. Nenhum endpoint, parâmetro, payload ou código de erro mudou. -
2026-08
Amazon Rufus passa a chamar-se Alexa for Shopping. A Amazon mudou o nome do seu assistente de compras, pelo que o modelo passa a chamar-se Alexa for Shopping na aplicação, no site e na documentação. As integrações não mudam: o valor da API continua a ser
amazon_rufusno filtromodele em todas as respostas, e os dados históricos mantêm-se. Não é necessária qualquer ação. -
2026-08
CLI Rust nativa e SDK oficiais. A CLI v2 substitui a implementação JavaScript por binários nativos para macOS, Linux e Windows, mantendo o formato de configuração e perfis existente. Os comandos tipados abrangem as 71 operações REST, com saída JSON, tabela e CSV, além de um comando REST direto. Passam a ser mantidos clientes oficiais gerados para TypeScript, Python, Go, Java, Kotlin, C#, PHP, Ruby, Rust, Swift, Dart e R. O documento OpenAPI usa campos anuláveis compatíveis com OpenAPI 3.0, para que todos os clientes possam ser gerados com a mesma cadeia de ferramentas fixada.
-
2026-08
Anotações automáticas e acesso em todos os planos (v1.23.0). As anotações passam a estar disponíveis em todos os planos, incluindo Starter e contas em período de teste. As linhas devolvidas por
GET /annotationse pela ferramenta MCPlist_annotationsincluemorigin:manual,automation,geo_testouplatform. As anotações automáticas do projeto registam alterações diárias ao conjunto de prompts, aos modelos de IA ativados e à frequência de monitorização. Os campos e o comportamento de escrita existentes não mudam. -
2026-08
Tamanho da amostra de Share of Voice e agrupamento por modelo (v1.22.0).
GET /metrics/sovpassa a devolver um arrayperiodsque indica, por intervalo, o total dementionsusado para calcular as quotas (tamanho da amostra: um intervalo com 1-3 menções apresenta quotas de 100/50/33.33 e deve ser interpretado como uma amostra reduzida) e uma indicaçãopartialque assinala intervalos ainda a recolher dados ou limitados pelo período pedido. Cada linhacurrentinclui também diferenças pré-calculadas:previous_share(último intervalo completo) eavg_share(média dos intervalos completos com dados; os intervalos parciais são excluídos). Os campos existentes não mudam. A ferramenta MCPget_sovpassa a aceitargroup_by=model, devolvendo numa chamada uma comparação compacta das quotas por modelo (adicioneinclude_series=truepara obter séries de tendência por modelo). Todas as ferramentas MCP com âmbito de projeto passam a aceitar o domínio do projeto ou o nome/nome de marca exato emproject_id, além do ID numérico. As respostas de métricas MCP passam a incluir uma ligação de origemapp_url, e as ferramentas de métricas MCP passam a apresentar widgets interativos nos ambientes que os suportam: gráfico circular de Share of Voice, cartão-resumo de visibilidade, gráfico de linhas das métricas ao longo do tempo (get_timeseries) e principais domínios citados (get_top_sources). -
2026-07 (final do mês)
Correção da resposta de criação de projetos (v1.21.1).
POST /projectsePOST /project_drafts/:id/finalizepassam a devolvercompetitors.processing: false, porque a configuração de concorrentes termina dentro da transação do projeto. As respostas anteriores indicavam incorretamentetrue. Os URLs dos sites dos projetos passam a devolverERR_INVALID_PARAMse incluírem credenciais, endereços IP privados ou especiais, localhost ou nomes de anfitrião internos. Continuam a ser aceites nomes de anfitrião DNS públicos, nomes de domínio internacionalizados e endereços IP públicos literais. Um corpo JSON malformado enviado para um endpoint de escrita passa a devolver o erro de análise JSON (da famíliaERR_INVALID_PARAM), em vez deERR_PROJECT_NOT_FOUND. -
2026-07 (final do mês)
Filtros de menções e citações (v1.21.0).
GET /answers,GET /dimensions/prompt_executionseGET /dimensions/sourcespassam a aceitarmention_filtere, nos dois primeiros,citation_filter, a mesma matriz de dois eixos apresentada nas páginas Responses e Citations: a sua marca em relação aos concorrentes, com cada eixo presente, ausente ou indiferente. As opções predefinidas sãomentions_you,not_mentions_you,mentions_competitor,not_mentions_competitor,you_and_competitor,competitor_not_you,you_not_competitoreno_brands(não aparece nenhuma marca monitorizada), com as opções equivalentes para citaçõescites_you,not_cites_you,cites_competitor,not_cites_competitorecites_no_brands. Combine qualquer uma delas comcompetitorspara limitar o eixo dos concorrentes a rivais específicos; numa opção negativa, significa «nenhum destes». Em/dimensions/sources, o filtro aplica-se ao conteúdo rastreado de cada página citada. As opções desconhecidas devolvemERR_INVALID_PARAM. Os mesmos argumentos estão disponíveis nas ferramentas MCPlist_answers,list_prompt_executionselist_sources. -
2026-07 (final do mês)
Saída plana e CSV para ferramentas de BI (v1.20.0). Os endpoints de leitura passam a aceitar um parâmetro opcional
output:output=flatdevolve os mesmos metadados e as colunas retangularescolumnserows;output=csvdevolve essas linhas comotext/csv. Assim, Tableau (através do respetivo REST API Connector), Excel, Google Sheets e carregadores de data warehouse podem ler a API sem código para percorrer JSON aninhado./metrics/sovtambém aceitaview=over_time|current|breakdown. Se omitiroutput, recebe exatamente a resposta que as integrações existentes já recebem. Os erros são sempre JSON, as percentagens mantêm-se na escala de 0 a 100, os endpoints paginados expõem os cabeçalhosX-Total-Count,X-PageeX-Per-Page, e a saída plana tem um limite de 200 000 linhas. -
2026-07 (final do mês)
Períodos de consulta mais longos para métricas. O período máximo nos endpoints de métricas (
/metrics/*), nas listas/dimensions/*, em Citation Intelligence e em AI Model Insights (REST e respetivas ferramentas MCP) aumenta de 400 para 1500 dias, permitindo consultas de todo o histórico. Os endpoints Search Console mantêm o limite de 400 dias, correspondente ao período de retenção dos dados GSC que armazenamos. O conector Looker Studio passa a incluir as opções «Últimos 365 dias», «Todo o período» e «Seguir o intervalo de datas do relatório», além de três novos tipos de relatório (desempenho dos Prompts, Share of Voice, principais origens) baseados nestes endpoints. -
2026-07 (final do mês)
Expansão da API de escrita: iniciar, atualizar, eliminar (v1.19.0). As recomendações podem agora ser iniciadas através da API:
POST /recommendations(MCPlaunch_recommendations) inicia a geração assíncrona e devolve a execução para consulta; a ferramenta MCP deixa de exigir o cartão de confirmação da conversa na aplicação (os clientes externos iniciam diretamente, enquanto o agente de conversação na aplicação continua a pedir confirmação). Novos endpoints de gestão, cada um com uma ferramenta MCP equivalente:DELETE /prompts/:id,PATCH/DELETE /competitors/:id,PATCH/DELETE /collections/:ide um conjunto completo para anotações (GET /annotations,PATCH/DELETE /annotations/:id, Growth+). As eliminações são irreversíveis: as linhas desaparecem imediatamente e os dados históricos são eliminados em segundo plano. Todos os endpoints de escrita exigem uma chave de API com âmbitoread_writee respeitam a matriz de permissões dos membros da equipa. -
2026-07 (final do mês)
Revisão de qualidade do MCP (com base numa auditoria externa de agentes). Os valores
modeldesconhecidos e os períodosfrom/toinvertidos passam a devolverERR_INVALID_PARAM, em vez de serem ignorados sem aviso.GET /metrics/agent_trafficdevolve o novoERR_AGENT_TRAFFIC_NOT_CONNECTEDquando não há uma origem de tráfego de agentes ligada. EmGET /metrics/top_sources,avg_visibilitypassa a ser a percentagem de respostas que citam o domínio (limitada a 0-100). Os camposduration_mspassam a indicar milissegundos reais. Campos adicionais:url_sha256+created_atnas linhas de origem,matching_namesnas linhas da lista de concorrentes,scorenas categorias de sentimento,created_atnas anotações criadas edata_throughnas respostas Search Console (o GSC publica com um atraso de 2-3 dias). Ferramentas MCP: as ferramentas de listagem aceitamrange;list_answerslimita as respostas a 1500 caracteres por predefinição (full_text=truedevolve mais); a vista de URLs delist_citation_groupsé compacta, salvo seinclude_page_details=true; as ferramentas de URLs citados aceitamurlcomo alternativa aourl_sha256;get_sovpassa a incluir todos os concorrentes configurados por predefinição;list_promptsganha o parâmetro de pesquisaquery; e os erros de recurso não encontrado passam a incluir o ID pedido. -
2026-07 (final do mês)
As subscrições expiradas perdem acesso à API. Quando uma subscrição self-service (Starter, Growth ou Scale) é cancelada e termina o período já pago, após um breve período de tolerância, as chaves de API dessa conta devolvem
403 ERR_ACCOUNT_INACTIVE. As subscrições ativas não são afetadas, tal como os planos pagos por fatura e os planos negociados (Scale+ personalizado, Partner, Enterprise), que continuam a funcionar enquanto a faturação é tratada manualmente. Volte a subscrever na página de faturação para restaurar o acesso. Novo código de erro:ERR_ACCOUNT_INACTIVE(403). -
2026-07 (final do mês)
Correção da visibilidade em Top Sources.
avg_visibility(e o seu aliasavg_mention_rate) emGET /metrics/top_sourcespassa a indicar a percentagem de respostas válidas que citam o domínio: respostas distintas que citam o domínio divididas por todas as respostas válidas do período. Antes, contavam-se as linhas de origem, pelo que uma resposta que citasse um domínio três vezes contava três vezes, e só se dividia pelas respostas que tinham pelo menos uma origem, o que podia produzir valores acima de 100%. As percentagens passam a ser mais baixas e corretas.total_responsesnão muda. -
2026-07 (final do mês)
Modelo Amazon Rufus (v1.18.0). O novo modelo de IA
amazon_rufus(o assistente de compras da Amazon, então chamado Amazon Rufus e entretanto renomeado Alexa for Shopping) foi lançado como suplemento Enterprise e passa agora a ser um suplemento pago em todos os planos. O filtromodelnos endpoints de métricas, dimensões, respostas e sentimentos passa a aceitaramazon_rufus. Tal como nos outros modelos suplementares, os dados só aparecem nas contas em que o modelo está ativado. -
2026-07 (final do mês)
API do assistente de rascunhos de projeto (v1.17.0). Criação de projetos em várias etapas com sugestões de IA:
POST /project_draftsinicia um rascunho e sugere nome/descrição/setor com base no URL;PATCH /project_drafts/:idenvia cada etapa (detalhes, prompts, concorrentes, meios próprios) mediante validação rigorosa da sequência e devolve sugestões para a etapa seguinte;GETlê o estado (sugestões apenas a partir da cache, para permitir consultas seguras) ePOST .../finalizecria o projeto com os mesmos efeitos exatos do modo rápido, de forma idempotente. Novos códigos de erro:ERR_DRAFT_NOT_FOUNDeERR_DRAFT_STATE. Os rascunhos expiram após 24 horas. São lançadas cinco ferramentas MCP equivalentes:create_project,start_project_draft,get_project_draft,update_project_draftefinalize_project_draft, que partilham exatamente os mesmos serviços REST. -
2026-07 (final do mês)
API de criação de projetos (v1.16.0). O novo
POST /projectscria um projeto completo numa única chamada (modo rápido): campos do projeto, prompts (na fila para execução e classificação imediatas), concorrentes e subscrição de email semanal. Repetir um pedido de forma idempotente através deexternal_identifier(em contas com embed ativado) devolve o projeto existente comidempotent: true. A opçãoexecute_prompts_immediately: falseadia a primeira execução até ao próximo período de monitorização agendado. Aplicam-se os mesmos limites de plano e quotas do assistente na aplicação (ERR_LIMIT_REACHED,ERR_QUOTA_EXCEEDED,ERR_PLAN_REQUIRED). -
2026-07 (final do mês)
Orientações de utilização do MCP e detalhes de projeto mais completos (v1.15.6). Na inicialização, o servidor MCP passa a enviar instruções de utilização aos clientes de IA ligados: o fluxo de trabalho recomendado, os nomes das métricas, sugestões de eficiência e a regra
brand_kind=non_brandpara comparações justas entre marca e concorrentes (em conformidade com o valor predefinido da Vista geral na aplicação). Os filtrosbrand_kindeprompt_typeforam adicionados aos três endpointsGET /reports/ai_model_insights/*e às respetivas ferramentas MCP (get_ai_model_summary,get_ai_model_position_distribution,get_ai_overview_results); os valores inválidos devolvemERR_INVALID_PARAM.GET /dimensions/projects/:id(e a ferramenta MCPget_project_details) passam a incluirstats.prompts_by_brand_kinde um blocodata_coverageque enumera os modelos, países e idiomas com dados, substituindo várias consultas separadas de modelos/locales por uma só chamada. -
2026-07 (meados do mês)
Consistência das métricas de citações (v1.15.4). As citações e a Citation Rate passam a incluir citações visíveis e referências de origem em segundo plano na Vista geral, em AI Model Insights, no REST e no MCP. As citações em segundo plano não têm uma posição visível e continuam excluídas de
avg_positione das distribuições de posições. A identificação da propriedade das origens passa a aplicar de forma consistente a correspondência exata de subdomínios. A vista By Domain continua a agregar por domínio registável. O formato das respostas não muda. -
2026-07 (meados do mês)
As notificações MCP Streamable HTTP passam a devolver uma resposta 202 vazia. Os clientes rigorosos, como Claude e Codex, conseguem concluir a inicialização sem falhar ao interpretar uma resposta JSON
null. -
2026-07 (meados do mês)
As ligações OAuth MCP passam a expirar após um ano. As credenciais de acesso e de atualização partilham o mesmo prazo fixo de autorização. As respostas de atualização devolvem o mesmo token de atualização reutilizável, para evitar a perda de credenciais e falhas de concorrência nos clientes MCP.
-
2026-07 (meados do mês)
REST e MCP passaram a usar a mesma camada de consulta partilhada. Os endpoints de métricas (
/metrics/timeseries,summary,sov,prompt_summary,top_sources,agent_traffic,ai_traffic) e todas as listagens/dimensions/*passam a executar o mesmo código de consulta que as ferramentas MCP equivalentes, para que as duas interfaces devolvam sempre dados idênticos. As ferramentas MCP receberam os filtros que lhes faltavam:prompt_type/brand_kindemget_prompt_summary,get_top_sourcese nas ferramentas de listagem, além desource_typeemlist_sources(cujas linhas passam a incluirsource_typee indicadores de ligações para lojas de aplicações, como no REST). A validação de dados de entrada do MCP passa a corresponder à do REST: IDs desconhecidos emcollection_id/prompt, datas com formato inválido e intervalos superiores a 400 dias passam a devolver erros, em vez de serem ignorados sem aviso. As linhas delist_promptspassam a incluircollection_ids, e as linhas de resumo do REST passam a incluir o campometric, que o MCP já devolvia. Mantém-se uma diferença intencional: na granularidade semanal ou mensal, o MCP deixa como null os períodos anteriores ao primeiro ponto de dados nas métricas de taxas e posições, para que não reduzam as médias; o REST continua a preencher esses períodos com0.0. -
2026-07
Comércios locais nos detalhes das respostas.
GET /answers/:id(e a ferramenta MCPget_answer) passam a incluir um arraylocal_businesses: os estabelecimentos que o ChatGPT apresenta no widget de resultados locais para prompts com intenção local, com nome, morada, telefone, número de avaliações, classificação, domínio do site e posição no ranking; cada um é associado à sua marca ou a um concorrente monitorizado através deis_owned/competitor_id. -
2026-07
Correções de erros. As ferramentas MCP
get_timeserieseget_summarypassam a devolver valores reais paranet_sentiment, as cinco desagregaçõessentiment_*eavg_mention_position(antes, todos os pontos de dados eram nulos no MCP; o REST não era afetado), em conformidade com a semântica das métricas REST.GET /dimensions/all_mentionseGET /dimensions/all_citationspassam a paginar na base de dados, com ordenação determinística quando há empates emcreated_at, para que as páginas posteriores dos resultados paginados sejam rápidas e estáveis em projetos grandes; o formato da resposta não muda. Os limites de pedidos definidos para cada chave passam a ser respeitados no limite global da API (o valor predefinido continua a ser 300 pedidos por minuto; contacte-nos para obter limites superiores). -
2026-06 (final do mês)
API AI Traffic (Scale+). O novo endpoint
GET /metrics/ai_trafficexpõe o tráfego proveniente de referências de IA, medido pelo fornecedor de análises Web ligado ao projeto (Google Analytics 4, Adobe Analytics, PostHog, Plausible ou Piano): utilizadores, sessões e conversões por dia, agrupados por origem de IA (ChatGPT, Perplexity, Gemini, Claude e outras), com totais e taxa de conversão. Nova ferramenta MCP:get_ai_traffic. Requer o plano Scale ou superior e um fornecedor ligado; os projetos sem um fornecedor devolvem o novo códigoERR_AI_TRAFFIC_NOT_CONNECTED(404). -
2026-06 (final do mês)
API Search Console (Growth+). Os novos endpoints expõem os dados de desempenho do Google Search Console que já sincronizamos para projetos com uma propriedade GSC ligada:
GET /search_console/summary(impressões, cliques, CTR e posição média, com divisão opcional porcountry/device),GET /search_console/timeseries(séries diárias, semanais ou mensais),GET /search_console/querieseGET /search_console/pages(principais consultas/páginas ordenadas por impressões, cliques, CTR ou posição, com paginação).ctré uma fração entre 0 e 1 epositioné a média ponderada pelas impressões, em conformidade com a API Search Console. Novas ferramentas MCP:get_search_console_summary,get_search_console_timeseries,get_search_console_queries,get_search_console_pages. Os projetos sem uma propriedade ligada devolvem o novo códigoERR_SEARCH_CONSOLE_NOT_CONNECTED(404). -
2026-06 (final do mês)
Quota de menções por domínio citado e filtros de origens em lote. Novo endpoint
GET /citation_intelligence/mentions_by_domain(e ferramenta MCPget_mentions_by_citing_domain): para as respostas em que é citado cada domínio de origem indicado, devolve a quota de menções da marca face à dos concorrentes, normalizada para que os intervenientes de cada domínio totalizem 100%.GET /metrics/top_sourceseGET /citation_intelligence/groups(e as respetivas ferramentas MCP) passam a aceitar um arraydomains(lista exata de domínios permitidos) e um arraycollection_ids(filtra várias etiquetas de uma só vez), permitindo obter numa chamada uma matriz ampla de domínios por etiqueta em vez de uma chamada por célula. -
2026-06 (final do mês)
A matriz de permissões dos membros da equipa passa a ser aplicada à API e ao MCP. Uma chave de API (ou sessão MCP/agente de conversação) pertencente a um membro de equipa com restrições fica sujeita à mesma matriz de funcionalidades da aplicação Web: os endpoints e ferramentas fora das funcionalidades concedidas devolvem
403 ERR_INSUFFICIENT_PERMISSION(novo código de erro). As chaves dos titulares das contas e dos administradores não são afetadas, pelo que as integrações existentes continuam a funcionar. Os webhooks passam a ser uma funcionalidade de permissão independente, ainda disponível apenas no Scale+. -
2026-06 (final do mês)
Agregados por período corretos para métricas de taxas em
GET /metrics/summary. O campototaldas métricas percentuais (visibility/mention_rate,citation_rate,ai_visibility_score/weighted_visibility, percentagens de sentimento) passa a ser a média das taxas por período, em vez da soma, que podia ultrapassar 100%. As métricas de contagem (mentions,citations,responses) continuam a ser somadas. Cada linha do resumo passa a incluir um campoaggregation("sum"ou"average") que indica como foi calculadototal. A mesma correção aplica-se à ferramenta MCPget_summary, que deixa também de repetir aseriescompleta juntamente com o resumo (useget_timeseriespara obter dados de séries) e passa a aceitar o argumentogroup_by(modeloucollection), devolvendo um resumo por grupo numa só chamada.GET /answers(e a ferramenta MCPlist_answers) passam a aceitar um parâmetroquerypara pesquisa de texto integral, sem distinção entre maiúsculas e minúsculas, nas respostas de IA:totalpassa a ser a contagem exata de correspondências e as linhas devolvemsnippetematch_countem vez do texto completo da resposta. -
2026-06 (final do mês)
Permissão de membros da equipa para gerir prompts e limites por projeto. Os titulares da conta podem agora impedir um membro da equipa de adicionar ou eliminar prompts. Quando essa permissão está desativada,
POST /promptse a ferramenta MCPcreate_promptsdevolvem403 ERR_INSUFFICIENT_SCOPEpara a chave desse membro (os endpoints de leitura não são afetados). Os titulares também podem definir um limite de prompts por projeto em Definições do projeto; quando o projeto atinge esse limite,POST /promptsecreate_promptsdevolvemERR_LIMIT_REACHEDa todos, incluindo ao titular, juntamente com a verificação da quota global da conta já existente, até que o limite seja aumentado. Não há novos códigos de erro nem endpoints. -
2026-06 (final do mês)
Nova ferramenta MCP
get_webhook_sample(Scale+), equivalente MCP deGET /webhooks/sample/:event_type, que permite aos clientes MCP pré-visualizar os payloads dos eventos antes de subscreverem. As restrições por plano foram alinhadas no catálogo de bots de IA: o endpoint RESTGET /dimensions/agent_botspassa a exigir Scale ou superior (abaixo desse nível devolveERR_PLAN_REQUIRED), enquanto a ferramenta MCPlist_agent_botspassa a estar disponível em todos os planos. -
2026-06 (final do mês)
Webhooks de saída (Scale+, v1.9). Novos endpoints:
POST /webhooks(subscrever um URL HTTPS público para receber eventos de um projeto),GET /webhooks(listar subscrições),DELETE /webhooks/:id(cancelar subscrição) eGET /webhooks/sample/:event_type(exemplos de payloads para editores de integrações). Sete tipos de evento:mention.created,competitor_mention.created,citation.created,prompt_execution.completed,sentiment.negative_detected,recommendation.completed,intelligence_task.completed. As entregas têm assinatura HMAC-SHA256, através deX-LLMPulse-Signature, e são tentadas até cinco vezes no total, com intervalos crescentes; as subscrições são desativadas automaticamente após 20 falhas consecutivas. Para criar ou eliminar subscrições é necessária uma chave com âmbitoread_write. Novas ferramentas MCP:create_webhook_subscription,list_webhook_subscriptions,delete_webhook_subscription. Os webhooks permitem usar os novos conectores Zapier, Make e n8n. -
2026-06
Content Intelligence passa a chamar-se GEO Writer. A funcionalidade e a respetiva secção da API passam a ter o nome GEO Writer na aplicação e na documentação. A alteração é apenas de apresentação: os endpoints da API (
POST/GET /intelligence_tasks,GET /intelligence_tasks/:id), os formatos dos pedidos/respostas, os códigos de erro e os nomes das ferramentas MCP (create_intelligence_task,list_intelligence_tasks,get_intelligence_task) não mudam. A página de marketing passou de/features/content-intelligencepara/features/geo-writer, com um redirecionamento 301. -
2026-05 (final do mês)
MCP disponível em todos os planos através de OAuth. O endpoint MCP (
POST /api/v1/mcp) passa a aceitar tokens de acesso OAuth 2.1 emitidos através de Dynamic Client Registration (RFC 7591) e PKCE-S256. Qualquer utilizador LLM Pulse, incluindo quem tem Starter, Growth ou uma avaliação, pode ligar ChatGPT, Claude, Gemini, Cursor ou qualquer outro cliente compatível com MCP à sua conta, colando o URLhttps://api.llmpulse.ai/api/v1/mcpnas definições MCP/de conectores do cliente; este orienta o utilizador pelo início de sessão OAuth, sem exigir uma chave de API. Continuam a aplicar-se as restrições por plano a cada ferramenta: as ferramentas de escrita e as ferramentas avançadas de leitura que exigem Growth ou Scale continuam excluídas detools/listpara quem não tem acesso. A autenticação por chave de API (Authorization: Bearer …) não muda e continua a ser a opção recomendada para integrações sem interface, como Data Studio, Zapier e scripts de CI (plano Scale ou superior). Os endpoints de descoberta (/.well-known/oauth-authorization-server,/.well-known/oauth-protected-resource,/oauth/jwks.json) e os endpoints de registo/autorização/token encontram-se em/oauth/*. -
2026-05 (final do mês)
Novo tipo de recomendação: Sentiment & Reputation (Scale+). O parâmetro
recommendation_typeemGET /recommendations(e na ferramenta MCPlaunch_recommendations) passa a aceitarsentiment_reputation, além deai_visibility,social_communityebrand_building. Converte o sentimento da marca nos últimos 30 dias (alargando para 90 se houver poucos dados), temas negativos, lacunas comparativas em que um concorrente é elogiado, as origens citadas nas respostas negativas e dimensões de reputação fracas em recomendações práticas. Requer o plano Scale ou superior; quem não tiver acesso recebe errosERR_INVALID_PARAMou de plano. -
2026-05 (final do mês)
Filtros de classificação de Prompts. Cada prompt é agora classificado automaticamente por
prompt_type(intenção de pesquisa:informational,navigational,commercial,transactional) ebrand_kind(brand= a sua própria marca/produtos,brand_other= concorrentes ou outras marcas,non_brand= genérico, sem referência a uma marca). Ambos são aceites como filtros opcionais em/metrics/timeseries,/metrics/summary,/metrics/sov,/metrics/prompt_summary,/metrics/top_sourcese/dimensions/prompts(que passa também a devolver os dois campos por prompt). Os valores inválidos devolvemERR_INVALID_PARAM. Os mesmos filtros estão disponíveis como argumentosprompt_type/brand_kindnas ferramentas MCPget_timeseries,get_summary,get_sovelist_prompts. -
2026-05 (meados do mês)
Endpoints de escrita para agentes (v1.5). As chaves de API passam a expor um
scope(readouread_write); as chaves existentes tratamfullcomo sinónimo deread_write. Os endpoints de alteração (POST/PATCH/PUT/DELETE) passam a exigir uma chave com âmbitoread_writee, caso contrário, devolvem403 ERR_INSUFFICIENT_SCOPE. Além do limite global de 300 pedidos por minuto por chave, as escritas passam a ter um segundo limite de 60 por minuto por chave. Novos endpoints REST:POST /competitors,POST /collections,POST /prompts/assign_tags(atribuição de etiquetas em lote idempotente),POST /annotations(Growth+) ePOST /technical_geo_reports(conjunto GEO completo). Novas ferramentas de escrita MCP:create_competitor,create_collection,assign_prompt_tags,create_annotation,launch_recommendations(com confirmação prévia do utilizador no agente de conversação) ecreate_technical_geo_report(idem). Novos códigos de erro:ERR_INSUFFICIENT_SCOPE(403) para chaves só de leitura usadas em operações de escrita eERR_PLAN_REQUIRED(403) para anotações no plano Starter. -
2026-05
Os projetos passam a expor
brand_nameseparadamente denamenas respostas da API e do MCP.brand_nameé o nome da marca enviado aos LLM e apresentado nos gráficos para clientes;namecontinua a ser o nome interno do projeto.namecontinua a ser devolvido para manter a compatibilidade com versões anteriores.mention_rateé aceite como sinónimo devisibilitynos parâmetros de/metrics/*e nas ferramentas MCP de séries temporais, resumos e principais origens. As definições de modelos de IA por utilizador passam a aplicar-se a todos os endpoints de leitura: as respostas da API, métricas, dimensões, respostas, sentimentos e citações excluem silenciosamente os modelos que não estão ativados para o utilizador da chave de API. Na data desta versão, os suplementos pagos ativos eram Copilot, Claude, Grok, DeepSeek e Alexa for Shopping; a execução recorrente de Meta AI ainda não estava ativa. As métricas agrupadas por data passam a usarEurope/Madridnos períodos diários, semanais e mensais, corrigindo os registos atribuídos ao dia errado perto da meia-noite UTC. -
2026-04 (final do mês)
API Agent Analytics (Scale+, Beta):
GET /metrics/agent_trafficeGET /dimensions/agent_botsapresentam o tráfego de crawlers de bots de IA (GPTBot, PerplexityBot, ClaudeBot, OAI-SearchBot, Google-Extended e cerca de 25 outros) obtido a partir da Cloudflare ou de carregamentos CSV. Nova ferramenta MCP:get_agent_traffic. A listatools/listdo MCP passa a ser filtrada pelo plano: as ferramentas a que não tem acesso deixam de aparecer no catálogo e as chamadas diretas a ferramentas sujeitas a restrições devolvemERR_PLAN_REQUIRED, sem expor o esquema. Os limites de autenticação do MCP foram reforçados para o acesso de membros de contas de outros utilizadores. -
2026-04 (meados do mês)
API Citation Intelligence:
GET /citation_intelligence/groups(grupos de URLs citados, com filtros de origem/tipo),GET /citation_intelligence/urls/:url_sha256,/occurrencese/contentpara consultar cada URL em detalhe. API de relatórios AI Model Insights:GET /reports/ai_model_insights/summary,/position_distributione/ai_overview_results. API Recommendations:GET /recommendationseGET /recommendations/:id. Novas ferramentas MCP: list_citation_groups, get_cited_url_details, list_cited_url_occurrences, get_cited_url_content, get_ai_model_summary, get_ai_model_position_distribution, get_ai_overview_results, list_recommendations, get_recommendation, list_competitor_mentions, list_competitor_citations, list_prompt_executions, list_tags. A validação de enumerações ficou mais rigorosa emview,order,direction,granularity,model,source_type,sentiment,content_gap,recommendation_typeestatus; os valores desconhecidos passam agora a devolverERR_INVALID_PARAM, em vez de serem ignorados sem aviso. O filtrosource_typeaceitaowned,competitorethird_party, além das listas de classificação. Os resultados de AI Overview são agrupados porexecuted_at(e nãocreated_at), para que as linhas repetidas ou repostas em backfill sejam atribuídas ao dia correto. -
2026-04
Novo endpoint
POST /promptspara criar prompts em lote (até 100 por pedido). Nova API Content Intelligence:POST /intelligence_taskspara criar tarefas,GET /intelligence_taskspara listar com filtros eGET /intelligence_tasks/:idpara consultar detalhes e resultados. Novas ferramentas MCP: create_prompts, create_intelligence_task, list_intelligence_tasks, get_intelligence_task. Novos códigos de erro:ERR_LIMIT_REACHED(quota de prompts),ERR_QUOTA_EXCEEDED(quota de tarefas de inteligência),ERR_NOT_FOUND(recurso não encontrado). -
2026-03
Novo endpoint
GET /metrics/prompt_summarypara métricas paginadas por prompt (respostas, menções, citações, visibilidade, citation_rate) num único pedido -
2026-02
Adicionada a métrica
ai_visibility_score(visibilidade ponderada pela posição). Novas ferramentas MCP: list_answers, get_answer, list_detailed_sentiments, get_project_details, get_competitor_details. Novos endpoints da API: /answers, /sentiments, /dimensions/projects/:id, /dimensions/competitors/:id. Adicionada a métricaresponses(contagem de execuções de prompts) e a métricacitation_rate(citações / respostas x 100). Os limites da API aumentaram de 100 para 300 pedidos por minuto. Adicionado o filtroprompta todos os endpoints de métricas e dimensões. -
2026-01
Adicionado o endpoint MCP (Model Context Protocol) para integrações de IA com Claude, ChatGPT e outros assistentes de IA
-
2025-12
Métricas de sentimento adicionadas a /metrics/timeseries (sentiment_very_positive/positive/neutral/negative/very_negative) e semântica documentada
-
2025-09
Métricas alinhadas com a Vista geral (totais por período com repetição do último valor disponível, razão entre as somas dos períodos para visibility e propagação em avg_position), repartição de SOV, filtro
queryem Top Sources, notas sobre a cache, transferência do Postman e secção sobre o ambiente. -
2025-08
Documentação pública inicial da API (v1)