Documentation Index
Fetch the complete documentation index at: https://docs.judit.io/llms.txt
Use this file to discover all available pages before exploring further.
Novo CNPJ (IN 2229/24)A Judit já aceita o novo formato de CNPJ alfanumérico em conformidade com a Instrução Normativa RFB nº 2229/2024.
- Zero esforço: nenhuma alteração é necessária na sua integração.
- Ambiente de teste: utilize o documento
A1B2C3D4/E5F6-68para validar o fluxo e receber um processo fictício de resposta.
🤖 Endpoint: POST https://lawsuits.production.judit.io/lawsuits. A resposta é síncrona (HTTP 200 com o JSON pronto). Esta rota não vai ao tribunal — ela lê o datalake da Judit, então pode haver um pequeno atraso em relação ao estado mais atual do processo. Se precisar de dados atualizados em tempo real, use POST /requests (assíncrono).
Síncrono vs. assíncrono — qual escolher?
| Característica | Síncrono (Hot Storage) | Assíncrono (Requests) |
|---|---|---|
| Latência | ms (resposta imediata) | segundos a minutos |
| Fonte | Datalake JUDIT (cache) | Tribunal em tempo real |
| Atualidade | Última coleta da JUDIT | Estado atual do tribunal |
| Webhook | Não aplicável | Sim, opcional |
| Custo | Mais barato | Mais caro |
| Caso ideal | Validação rápida, dashboards, busca interativa | Diligência, atualização forçada, consulta sob demanda |
Quando usar
Validação em tempo real
Onboarding, KYC, autocomplete — sempre que precisar de uma resposta imediata para a UI.
Dashboards interativos
Dashboards e BI que listam processos vinculados a um cliente sem precisar atualizar o tribunal.
Pré-filtragem de risco
Antes de disparar uma consulta assíncrona cara, descubra rapidamente se vale a pena.
Estatísticas e contagens
Combine com
/lawsuits/count e /lawsuits/synthetic para análises agregadas.Passo 1: Criar a Consulta Síncrona (POST)
Para iniciar a consulta síncrona, faça uma requisiçãoPOST enviando o documento desejado.
POST https://lawsuits.production.judit.io/lawsuits
Exemplos de consultas síncronas
Parâmetros do Payload
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
search.search_type | string | Sim | Tipo da entidade buscada: "cpf", "cnpj", "oab" ou "name". |
search.search_key | string | Sim | O valor a ser buscado (ex.: "999.999.999-99", "João Silva"). |
search.search_params.filter | object | Não | Filtros estruturais (tribunal, valor, classes, partes, datas). Mesma estrutura da consulta histórica. |
Filtros mais comuns (search_params.filter)
A consulta síncrona aceita os mesmos filtros da consulta histórica. Veja exemplos práticos:
Lista completa de tribunais aceitos: veja Filtros da consulta histórica.
Exemplo de Requisição (POST)
Passo 2: Ler a resposta
A resposta vem no corpo do mesmo POST (não há polling). Os campos principais:| Campo | Tipo | Descrição |
|---|---|---|
has_lawsuits | boolean | true se foram encontrados processos no datalake. |
request_id | string | Identificador único da consulta — útil para auditoria. |
response_data | array | Lista de processos. Cada item segue o Schema Lawsuit. |
response_data[].phase | string | Fase atual do processo — ver tabela abaixo. |
response_data[].status | string | Status atual do processo — ver tabela abaixo. |
Exemplo completo de resposta
Ver exemplo de resposta
Ver exemplo de resposta
A resposta dessa requisição será um objeto JSON com os dados retornados:
Estrutura completa de cada item do array response_data: veja Schema Lawsuit.
Erros comuns
| HTTP | Quando acontece | Como tratar |
|---|---|---|
400 | search_type ou search_key inválidos / formato incorreto. | Validar o documento antes de enviar (ex.: 11 dígitos para CPF, 14 para CNPJ). |
401 | API Key ausente ou inválida. | Conferir o header api-key. |
404 | Nenhum processo encontrado. A resposta vem com has_lawsuits: false mesmo assim. | Tratar como ausência de exposição judicial — não é necessariamente erro. |
429 | Rate limit excedido (500 req/min). | Implementar exponential backoff lendo X-RateLimit-Reset. |
500 | Erro interno transitório. | Repetir com backoff. Se persistir, abrir ticket no suporte. |
Próximos passos
- Para listar e filtrar com mais profundidade (filtros avançados, polo, classes): Consulta Histórica por documento.
- Para agregação (contagens por tribunal/área/fase): Consulta Agrupada.
- Para forçar leitura em tempo real no tribunal: Consulta Assíncrona.