Jurisprudência e explicação de decisões
Pesquise decisões e ementas sem gerar conteúdo com IA. Depois, solicite a explicação de uma decisão específica. O texto oficial fica preservado e cada conclusão da análise aponta para um trecho literal da fonte.
Endpoints e preços
| Operação | Endpoint | Preço-base |
|---|---|---|
| Pesquisar | GET /v1/jurisprudencia | R$ 0,10 por página concluída |
| Conferir cobertura | GET /v1/jurisprudencia/cobertura | Gratuito |
| Ler o documento original | GET /v1/jurisprudencia/{id} | Gratuito |
| Explicar a decisão | POST /v1/jurisprudencia/{id}/analise | R$ 0,16 por decisão e versão, por conta |
Use x-api-key ou Authorization: Bearer a partir do backend. Descontos de plano e preços negociados podem alterar o débito; confira meta.creditsCharged.
Fontes e cobertura
fonte=ACERVO, padrão, pesquisa o conteúdo já indexado: espelhos de acórdãos dos conjuntos abertos do STJ e publicações decisórias coletadas do DJEN. A busca local exige a presença dos termos significativos; não é pesquisa semântica. O histórico cresce conforme as importações e consultas. Consulte /cobertura para ver fontes, tribunais, contagens e datas dos documentos presentes. As datas não comprovam coleta completa do intervalo.
fonte=DJEN consulta diretamente as comunicações oficiais no período informado e armazena as publicações em que o classificador textual identifica conteúdo decisório. A classificação é inferida e pode precisar de conferência. Uma simples intimação para tomar ciência de um acórdão não é tratada como o próprio acórdão.
O acervo não é integral. Ausência de resultado não comprova ausência de decisão. Ementa, dispositivo e publicação não equivalem ao inteiro teor. data_publicacao e data_julgamento são diferentes; a segunda permanece null quando não informada pela fonte. O STJ pode fornecer número processual próprio sem CNJ.
Busca no acervo
curl --get 'https://api.buscaprocessos.app.br/v1/jurisprudencia' \
--data-urlencode 'q=dano moral' \
--data-urlencode 'tribunal=STJ' \
--data-urlencode 'limit=20' \
--header 'x-api-key: bp_live_SUA_CHAVE'
| Parâmetro | Descrição |
|---|---|
q | Obrigatório, entre 3 e 300 caracteres |
fonte | ACERVO ou DJEN; padrão ACERVO |
tribunal | Sigla exata, como STJ, TJSP, TRT1 |
tipo | ACORDAO, SENTENCA ou DECISAO |
relator | Parte do nome, até 150 caracteres; somente ACERVO, quando informado pela fonte |
data_publicacao_inicio / data_publicacao_fim | Datas inclusivas YYYY-MM-DD; envie ambas. Obrigatórias no DJEN, intervalo máximo de 366 dias |
page | Inicia em 1; máximo 10.000 no acervo e 100 no DJEN |
limit | Acervo: padrão 20, máximo 50. DJEN: somente 100, que representa comunicações examinadas |
Parâmetros desconhecidos ou repetidos são recusados. O filtro por data é de publicação, não de julgamento.
Buscar no DJEN e ampliar o acervo
curl --get 'https://api.buscaprocessos.app.br/v1/jurisprudencia' \
--data-urlencode 'q=negativação indevida' \
--data-urlencode 'fonte=DJEN' \
--data-urlencode 'tribunal=TJSP' \
--data-urlencode 'data_publicacao_inicio=2026-09-01' \
--data-urlencode 'data_publicacao_fim=2026-09-30' \
--header 'x-api-key: bp_live_SUA_CHAVE'
O retorno usa data.items, data.paginator, data.links e data.cobertura. Cada decisão contém id, fonte, id_oficial, tribunal, numero_processo, classe, orgao_julgador, relator, datas, tipo, classificacao, conteudo_disponivel, trecho, link_oficial e analise_url.
No DJEN, a página percorre 100 comunicações da fonte e retorna apenas as decisões identificadas que atendem aos filtros. Pode haver uma página com zero decisões e links.next preenchido: continue paginando. paginator.total é null e total_exato=false; cobertura.total_comunicacoes_fonte conta comunicações, não decisões. Ao atingir o limite da fonte, reduza o intervalo e faça a coleta em janelas menores. No acervo, o total se refere exclusivamente ao índice local.
Cada página de busca concluída custa R$ 0,10, inclusive quando vazia. A busca nunca gera análise com IA automaticamente.
Explicação sob demanda
Use o id retornado pela pesquisa. Consulte gratuitamente /v1/jurisprudencia/{id} para receber também texto_original. Solicite a análise com corpo vazio ou {}:
curl --request POST \
'https://api.buscaprocessos.app.br/v1/jurisprudencia/ID_DA_DECISAO/analise' \
--header 'x-api-key: bp_live_SUA_CHAVE' \
--header 'Content-Type: application/json' \
--data '{}'
data.analise contém questao_juridica, contexto, entendimento, resultado e fundamento. Cada campo é null quando a fonte não sustenta a informação, ou um objeto com texto (explicação) e trecho (citação literal verificada contra o documento). A validação da citação não substitui a revisão da interpretação pelo advogado.
O modelo usa somente o documento disponível. Uma segunda etapa de IA confere a interpretação contra a fonte, incluindo a distinção entre o ato atual e precedentes citados; essa verificação não elimina a necessidade de revisão pelo advogado. A análise não confirma jurisprudência consolidada, força vinculante, trânsito em julgado nem vigência do entendimento. Esta versão explica a decisão e não aceita contexto particular do caso. Documentos acima de 48.000 caracteres retornam 422 DOCUMENT_TOO_LONG; não são truncados silenciosamente.
Cache e cobrança
A explicação é reutilizada entre consultas. O débito ocorre somente após geração, validação e persistência bem-sucedidas. A mesma conta não paga novamente pela mesma decisão e versão da análise, mesmo usando outra API Key. meta.cobranca_reutilizada=true e meta.creditsCharged=0 indicam reutilização de uma cobrança concluída.
Se a fonte ou a versão de processamento mudar, uma nova análise pode ser cobrada. A primeira solicitação de outra conta custa R$ 0,16 mesmo quando a ficha já está em cache. Falha de geração, persistência ou validação não gera débito.
Processamento e erros
Uma busca ou análise demorada pode retornar 202 Accepted. Siga Location ou data.statusUrl com a mesma API Key e respeite Retry-After. O polling é gratuito. Respostas recuperadas pelo polling mantêm os metadados da operação original; isso não representa nova cobrança.
400: parâmetros, identificador ou corpo inválidos.401: chave ausente ou inválida.403: saldo insuficiente ou acesso bloqueado.404 DECISION_NOT_FOUND: decisão indisponível.409 ANALYSIS_IN_PROGRESSouDECISION_UPDATED: respeiteRetry-Aftere repita a solicitação.422: documento longo ou sem suporte suficiente para a análise.429: limite de requisições.502 INVALID_AI_ANALYSIS: conteúdo gerado rejeitado, sem cobrança.503: serviço ou fonte indisponível, sem cobrança.
Preserve meta.requestId e meta.searchLogId para auditoria. Consulte preços, erros e paginação.