Ninguém acha nada nos PDFs?
Indexa documentos inteiros — PDF nativo ou escaneado — para busca por significado. Cada página é interpretada por um modelo visual, que enxerga texto, tabelas e layout, e depois vetorizada. Serve para escritórios, contabilidades e equipes que guardam a memória da empresa em PDFs onde ninguém acha mais nada.
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.
Por que o Ctrl+F não resolve
A busca comum dentro de um PDF só encontra a palavra digitada tal e qual — e em PDF escaneado não encontra nada, porque ali só existe imagem. O resultado todo mundo conhece: abrir arquivo por arquivo, folhear no olho, desistir e perguntar para quem “deve saber”. Indexar inverte a lógica: os documentos são processados uma vez, e a partir daí qualquer pergunta em linguagem natural leva direto às páginas que tratam do assunto.
Uma leitura que enxerga a página
Cada página é lida como imagem por um modelo visual antes de virar vetor. Isso significa que o conteúdo pesquisável não se limita ao texto corrido: tabelas, títulos, campos de formulário e a organização visual da página entram na leitura. E significa também que o documento escaneado — o contrato assinado que passou pelo scanner da esquina — é indexado sem precisar de conversão prévia.
Quanto custa indexar seus arquivos
O preço é US$ 0,010 por chamada mais US$ 0,059 por página. Um contrato de 12 páginas sai por US$ 0,72; um manual de 80 páginas, por US$ 4,73. É mais caro que indexar texto puro — a leitura visual página a página custa processamento de verdade —, então vale priorizar: indexe primeiro os documentos que as pessoas realmente procuram e sofrem para achar.
Do índice à resposta
Com os documentos indexados, você consulta pelo mesmo caminho das outras bases do KIT: busca semântica para localizar as páginas relevantes, ou as tarefas de resposta com IA para perguntar em linguagem natural e receber a resposta montada a partir do que está nos arquivos. O índice aceita até 10.000 trechos; acervos maiores podem ser divididos por cliente, por ano ou por tipo de documento.
Casos de uso
Contratos do escritório
Um escritório de advocacia de São Paulo indexou 200 contratos de prestação de serviço. A pergunta “rescisão com multa reduzida” encontra as cláusulas certas — inclusive nos contratos antigos, escaneados a 200 dpi.
Contabilidade sem pilha de papel
Um escritório contábil de Curitiba indexa balancetes, atas e comprovantes dos clientes. Quando a Receita pede um documento de 2023, ninguém mais abre pasta por pasta: a busca acha a página em segundos.
Manuais técnicos da operação
A Distribuidora Horizonte Verde S.A. indexou manuais de empilhadeira e normas internas de segurança. O supervisor pergunta “inspeção diária da bateria” e recebe a página exata do manual — no celular, no meio do galpão.
Perguntas frequentes
Funciona com PDF escaneado?
Sim — e esse é justamente o ponto forte. Como cada página é lida como imagem, o documento escaneado não precisa ter camada de texto nem passar por conversão antes de ser indexado.
Tabelas e carimbos entram na busca?
O modelo visual considera a página como um todo: tabelas, campos preenchidos e anotações fazem parte da leitura, não só o texto corrido. Um valor dentro de uma tabela de preços é conteúdo pesquisável como qualquer parágrafo.
Indexar um arquivo de 300 páginas custa quanto?
300 páginas × US$ 0,059 = US$ 17,70, mais US$ 0,010 da chamada: US$ 17,71. O preço é por página, então a conta é sempre transparente antes de enviar.
Por que custa mais que indexar texto puro?
Porque cada página passa por leitura visual, que exige muito mais processamento do que texto que já chega pronto. Se os seus arquivos já viraram texto limpo, use a indexação de texto — sai bem mais barato.
Meus contratos têm dados pessoais. Como fica a LGPD?
Os documentos são processados para montar um índice que só as suas chamadas de API consultam. Envie o que precisa estar pesquisável, controle quem na sua equipe usa a integração e trate o índice com o mesmo critério de acesso dos arquivos originais.
Existe limite de tamanho para o índice?
Até 10.000 trechos por índice. Para um acervo grande, divida por cliente, por ano ou por tipo de documento — a organização ajuda a busca e mantém cada índice dentro do limite.
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/search/index-document \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/search/index-document", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/search/index-document",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/search/index-document", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/search/index-document", 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
{
"input": "…"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "search.index_document",
"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_chunks | 10000 |
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. |
413 | input_too_large | A entrada passou do tamanho máximo desta tarefa. Confira os limites publicados. |
422 | task_failed | A tarefa falhou do nosso lado. Você não paga nada por ela. |