Extrair afirmações de um texto
O extrator de afirmações separa, em qualquer texto, o que é fato checável do que é opinião: cada alegação vira um item de lista, com o trecho original ao lado. É o primeiro passo da checagem de discursos, matérias, posts e páginas de vendas — via API, pago por uso.
Rode online
Rode nos nossos servidores com a sua conta. As ferramentas grátis rodam no seu navegador; esta aqui é descontada do seu saldo do KIT pelo preço acima.
O que conta como afirmação
Afirmação, aqui, é frase que pode ser confrontada com a realidade: "a entrega leva três dias úteis", "o produto tem certificação do Inmetro", "a taxa caiu 12% em 2025". Opinião ("o melhor atendimento da cidade") e promessa vaga ("qualidade que você sente") ficam de fora ou são marcadas como tal. O resultado é uma lista em que cada item traz a alegação isolada e o trecho exato de onde ela saiu — sem parafrasear, para você julgar pela fonte.
Checar fica rápido quando a lista já existe
O trabalho lento da checagem não é verificar: é achar o que precisa ser verificado no meio de vinte parágrafos. Com a lista pronta, cada alegação vira uma linha de trabalho — quem confirma, qual a fonte, qual o veredito. Serve para a redação que apura uma entrevista, para o jurídico que revisa material publicitário antes de a peça ir ao ar e para quem confere se a página de vendas prometeu algo que a operação não cumpre.
De um discurso a um lote de páginas
Cada chamada de API aceita até 20.000 tokens — um discurso inteiro, um artigo longo, o texto completo de uma landing page. Para revisar um site inteiro ou o histórico de posts de um perfil, o mesmo endpoint roda em série: seu script envia os textos um a um e junta as listas. O resultado chega estruturado, pronto para virar planilha de apuração ou alimentar um fluxo interno de revisão.
Preço por uso — e um aviso honesto de beta
Custa US$ 0,003 por chamada mais US$ 0,0135 por 1.000 palavras enviadas. Não tem mensalidade: quem checa um texto por semana paga por um texto por semana. A capacidade está em beta — o critério do que entra ou não na lista ainda recebe ajustes, e casos de fronteira entre fato e opinião podem mudar de classificação entre versões. Para trabalho editorial isso importa, então está dito aqui, antes de você integrar.
Casos de uso
Apurar uma entrevista antes de publicar
Juliana Nascimento, repórter em Belo Horizonte, transcreve 40 minutos de entrevista com um secretário municipal. Antes de fechar a matéria, extrai as afirmações: números de orçamento, datas de inauguração, comparações com a gestão anterior. Cada item vira uma linha na planilha de checagem da redação.
Revisar a página de vendas antes da campanha
Rafael Almeida Costa cuida do marketing de uma loja de colchões em Curitiba. Antes de subir a campanha, passa a landing page pelo extrator: "entrega em 48h", "10 anos de garantia", "espuma certificada". A lista vai para a operação confirmar item por item — promessa que não se cumpre vira reclamação no Procon.
Conferir descrições de produto no e-commerce
Um marketplace de artigos esportivos processa milhares de descrições enviadas por lojistas. As alegações extraídas ("couro legítimo", "impermeável", "homologado pela federação") são cruzadas com a documentação de cada fornecedor, e as descrições sem comprovação voltam para revisão antes de ir ao ar.
Relatório de sustentabilidade sob escrutínio
A Distribuidora Horizonte Verde prepara seu relatório anual. O time de comunicação extrai todas as afirmações verificáveis — percentuais de redução de emissão, metas cumpridas, certificações — e anexa a evidência de cada uma antes da publicação, porque alegação ambiental sem prova é risco jurídico.
Perguntas frequentes
Como a ferramenta decide o que é fato e o que é opinião?
Pelo critério da checabilidade: se a frase pode, em tese, ser confirmada ou desmentida com evidência (número, data, certificação, evento), entra como afirmação. Juízo de valor e adjetivo promocional ficam de fora. Casos de fronteira existem, e por isso cada item vem com o trecho original para você bater o olho.
Ele diz se a afirmação é verdadeira ou falsa?
Não — e isso é proposital. A ferramenta extrai e organiza o que precisa ser checado; a verificação em si continua sendo trabalho humano (ou de outra etapa do seu fluxo), com fontes de verdade que só você tem.
O que muda por estar em beta?
O contrato de uso é o mesmo (preço publicado, chamada de API), mas o critério de classificação ainda está sendo refinado. Se o seu fluxo editorial depende de consistência absoluta entre versões, vale acompanhar os resultados nas primeiras semanas de uso.
Quanto sai a análise de um discurso de 5.000 palavras?
US$ 0,003 da chamada mais US$ 0,0675 pelas palavras: US$ 0,0705 no total, em dólar. Um mês de sessões da câmara municipal custa menos que um café.
Posso enviar texto de terceiros sem ferir a LGPD?
Texto público (discurso, matéria, página de vendas) não é o caso sensível. Se o material contiver dados pessoais — nomes de fontes, contatos —, o cuidado é seu enquanto controlador: remova o que não for necessário à análise antes de enviar. O texto é processado para gerar a lista e o resultado volta para você; não existe conta acumulando seus envios.
Dá para plugar no fluxo da redação?
Sim: é uma chamada de API com resposta estruturada, então o texto pode sair do seu CMS, passar pelo extrator e cair numa planilha ou painel de apuração sem etapa manual. O preço não muda com o volume.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/text/extract-claims \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"…"}'const res = await fetch("https://api.kit.forhosting.com/text/extract-claims", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/extract-claims",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/extract-claims", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/extract-claims", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"text": "…"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.extract_claims",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_tokens | 20000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
422 | task_failed | A tarefa falhou do nosso lado. Você não paga nada por ela. |