Skip to main content
Por que essa rota existeA Consulta Síncrona ao Datalake é recomendada para buscas por CPF, CNPJ, OAB ou Nome — ou seja, para descobrir quais processos existem vinculados a uma pessoa ou empresa. Para consultas por número de processo (CNJ), o dado no datalake pode estar desatualizado (ou o processo pode nem existir ainda em nossa base), então essa busca por si só não é recomendada quando você precisa de garantia de atualidade sobre um processo específico.A Consulta On-Demand resolve exatamente esse caso: no mesmo POST síncrono, ela pode engatilhar uma extração em tempo real no tribunal quando o processo estiver ausente ou desatualizado na nossa base, de acordo com as regras que você configurar.
A Consulta On-Demand usa o mesmo endpoint da Consulta Síncrona ao DatalakePOST /lawsuits — buscando por search_type: "lawsuit_cnj". A diferença é o uso de dois parâmetros novos, search.on_demand e search.cache_ttl_in_days, que decidem se vale a pena ir ao tribunal antes de responder.
🤖 Endpoint: POST https://lawsuits.production.judit.io/lawsuits. Continua sendo uma resposta síncrona (HTTP 200 com o JSON pronto) — porém, quando a extração no tribunal é engatilhada, o timeout sobe para até 3 minutos. Nos testes realizados, o tempo médio de atualização foi de 13 segundos, mas em horários de pico ou instabilidade do tribunal esse tempo pode se prolongar.

Como funciona

cache_ttl_in_days só funciona com on_demand: trueSem esse parâmetro, o gatilho para o tribunal depende apenas de o processo existir ou não em nossa base — não do quão antigo ele está.

Regras de gatilho para o tribunal

on_demand: true, sem cache_ttl_in_days

A ida ao tribunal só acontece se o número do processo não for encontrado em nossa base de dados.

on_demand: true, com cache_ttl_in_days

Se a última atualização do processo tiver menos dias que o valor informado, respondemos direto do datalake (sem ir ao tribunal). Se tiver mais dias — ou o processo não existir na base — disparamos a extração em tempo real.

Exemplo de requisição

Consulta on-demand por CNJ
No exemplo acima: se o processo 9999999-99.9999.9.99.9999 foi atualizado em nossa base há menos de 1 dia, a resposta vem do datalake. Caso contrário, disparamos a extração no tribunal antes de responder.

Exemplo de requisição (POST)

Ajuste o timeout do seu cliente HTTPQuando a extração no tribunal é engatilhada, a resposta pode levar até 3 minutos. Se o timeout do seu cliente for menor que isso (muitas bibliotecas usam 10-30s por padrão), a conexão será encerrada antes da resposta chegar. Configure explicitamente um timeout de pelo menos 180 segundos para essa rota.

Lendo a resposta

Pequena diferença em relação ao Hot StorageA resposta usa o mesmo padrão da Consulta Síncrona ao Datalakehas_lawsuits + request_id — mas a lista de processos vem no campo lawsuits (em vez de response_data). Não há campo indicando se o dado veio do cache ou de uma extração nova no tribunal; se isso for necessário para sua aplicação, utilize a Consulta Assíncrona, que expõe cached_response.
Processos em segredo de justiçaSe alguma instância do processo estiver sob sigilo, o item correspondente em lawsuits vem com secrecy_level maior que 0 e a maior parte dos campos vazios ou ausentes (parties: [], steps: [], etc.), preservando apenas os dados não sigilosos (tribunal, comarca, cidade).

Exemplo completo de resposta

Estrutura completa de cada item do array lawsuits: veja Schema Lawsuit. Note que o mesmo CNJ pode retornar mais de um item (um por instância) e que instâncias em segredo de justiça vêm com a maioria dos campos vazios.

Quando usar

CobrançaCada requisição enviada é contabilizada e cobrada normalmente, conforme estabelecido em contrato. Quando a resposta exige ida ao tribunal (nova extração), o custo é o mesmo de uma Consulta Assíncrona.

Erros comuns

Próximos passos