{"openapi":"3.1.0","info":{"title":"Robô Jurídico — API de Consulta de Processos","description":"Consulta processos judiciais nas bases públicas do CNJ e devolve tudo em JSON: capa, partes, advogados, movimentações e publicações do diário com o teor completo.\n\nFontes: **Comunica / DJEN** (diário oficial) e **Datajud** (histórico processual).","version":"1.0.0"},"paths":{"/api/v1/processos/{numero}":{"get":{"tags":["Processos"],"summary":"Processo completo: dados, partes, advogados, movimentações e publicações","operationId":"processo_api_v1_processos__numero__get","parameters":[{"name":"numero","in":"path","required":true,"schema":{"type":"string","description":"Número CNJ, com ou sem pontuação.","examples":["5072917-22.2020.8.13.0024"],"title":"Numero"},"description":"Número CNJ, com ou sem pontuação."},{"name":"publicacoes","in":"query","required":false,"schema":{"type":"boolean","description":"false = pula o diário oficial.","default":true,"title":"Publicacoes"},"description":"false = pula o diário oficial."},{"name":"historico","in":"query","required":false,"schema":{"type":"boolean","description":"false = pula o Datajud (resposta em ~1 s, só com o diário).","default":true,"title":"Historico"},"description":"false = pula o Datajud (resposta em ~1 s, só com o diário)."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaProcesso"}}}},"400":{"description":"Número fora do padrão CNJ","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"404":{"description":"Não encontrado","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"401":{"description":"Chave de API inválida","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"402":{"description":"Cota mensal esgotada (clientes com plano)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"403":{"description":"Conta suspensa","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"429":{"description":"Limite diário ou por minuto atingido","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"503":{"description":"Fonte pública fora do ar — tente de novo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/processos/{numero}/existe":{"get":{"tags":["Processos"],"summary":"Só verifica se o processo já aparece nas bases","operationId":"existe_api_v1_processos__numero__existe_get","parameters":[{"name":"numero","in":"path","required":true,"schema":{"type":"string","description":"Número CNJ, com ou sem pontuação.","examples":["5072917-22.2020.8.13.0024"],"title":"Numero"},"description":"Número CNJ, com ou sem pontuação."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaExiste"}}}},"400":{"description":"Número fora do padrão CNJ","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"401":{"description":"Chave de API inválida","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"402":{"description":"Cota mensal esgotada (clientes com plano)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"403":{"description":"Conta suspensa","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"429":{"description":"Limite diário ou por minuto atingido","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"503":{"description":"Fonte pública fora do ar — tente de novo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cnj/{numero}":{"get":{"tags":["Utilitários"],"summary":"Lê o número CNJ: tribunal, Justiça, ano e dígito verificador (não conta no limite)","operationId":"ler_cnj_api_v1_cnj__numero__get","parameters":[{"name":"numero","in":"path","required":true,"schema":{"type":"string","description":"Número CNJ, com ou sem pontuação.","examples":["5072917-22.2020.8.13.0024"],"title":"Numero"},"description":"Número CNJ, com ou sem pontuação."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaCNJ"}}}},"400":{"description":"Número fora do padrão CNJ","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/oab/{uf}/{numero}/processos":{"get":{"tags":["OAB"],"summary":"Processos em que a OAB teve publicação no diário no período","operationId":"processos_oab_api_v1_oab__uf___numero__processos_get","parameters":[{"name":"uf","in":"path","required":true,"schema":{"type":"string","description":"UF da OAB.","examples":["MG"],"title":"Uf"},"description":"UF da OAB."},{"name":"numero","in":"path","required":true,"schema":{"type":"string","description":"Número da inscrição na OAB.","examples":["74175"],"title":"Numero"},"description":"Número da inscrição na OAB."},{"name":"dias","in":"query","required":false,"schema":{"type":"integer","maximum":90,"minimum":1,"description":"Período, em dias (1 a 90).","default":30,"title":"Dias"},"description":"Período, em dias (1 a 90)."},{"name":"tribunal","in":"query","required":false,"schema":{"type":"string","maxLength":10,"description":"Ex.: TJMG.","default":"","title":"Tribunal"},"description":"Ex.: TJMG."},{"name":"paginas","in":"query","required":false,"schema":{"type":"integer","maximum":5,"minimum":1,"description":"Páginas de 100 publicações (1 a 5).","default":1,"title":"Paginas"},"description":"Páginas de 100 publicações (1 a 5)."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaOABProcessos"}}}},"422":{"description":"Parâmetro inválido","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"401":{"description":"Chave de API inválida","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"402":{"description":"Cota mensal esgotada (clientes com plano)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"403":{"description":"Conta suspensa","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"429":{"description":"Limite diário ou por minuto atingido","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"503":{"description":"Fonte pública fora do ar — tente de novo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}}}}},"/api/v1/oab/{uf}/{numero}/publicacoes":{"get":{"tags":["OAB"],"summary":"Publicações da OAB no diário oficial no período (controle de prazos)","operationId":"publicacoes_oab_api_v1_oab__uf___numero__publicacoes_get","parameters":[{"name":"uf","in":"path","required":true,"schema":{"type":"string","description":"UF da OAB.","examples":["MG"],"title":"Uf"},"description":"UF da OAB."},{"name":"numero","in":"path","required":true,"schema":{"type":"string","description":"Número da inscrição na OAB.","examples":["74175"],"title":"Numero"},"description":"Número da inscrição na OAB."},{"name":"inicio","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"description":"AAAA-MM-DD. Padrão: 7 dias antes do fim.","title":"Inicio"},"description":"AAAA-MM-DD. Padrão: 7 dias antes do fim."},{"name":"fim","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"description":"AAAA-MM-DD. Padrão: hoje.","title":"Fim"},"description":"AAAA-MM-DD. Padrão: hoje."},{"name":"paginas","in":"query","required":false,"schema":{"type":"integer","maximum":5,"minimum":1,"description":"Páginas de 100 publicações (1 a 5).","default":1,"title":"Paginas"},"description":"Páginas de 100 publicações (1 a 5)."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaOABPublicacoes"}}}},"422":{"description":"Parâmetro inválido","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"401":{"description":"Chave de API inválida","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"402":{"description":"Cota mensal esgotada (clientes com plano)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"403":{"description":"Conta suspensa","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"429":{"description":"Limite diário ou por minuto atingido","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"503":{"description":"Fonte pública fora do ar — tente de novo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}}}}},"/api/v1/status":{"get":{"tags":["Utilitários"],"summary":"Limite e consultas feitas (não conta no limite)","operationId":"status_api_v1_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaStatus"}}}}}}},"/api/v1/conta":{"get":{"tags":["Utilitários"],"summary":"Plano, consumo do mês e quando a cota renova (exige chave; não conta no limite)","operationId":"conta_api_v1_conta_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaConta"}}}},"401":{"description":"Sem chave ou chave inválida","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}},"403":{"description":"Conta suspensa","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaErro"}}}}}}}},"components":{"schemas":{"Advogado":{"properties":{"nome":{"type":"string","title":"Nome"},"oab_numero":{"type":"string","title":"Oab Numero","default":""},"oab_uf":{"type":"string","title":"Oab Uf","default":""},"oab":{"type":"string","title":"Oab","readOnly":true}},"type":"object","required":["nome","oab"],"title":"Advogado"},"DetalheErro":{"properties":{"codigo":{"type":"string","title":"Codigo"},"mensagem":{"type":"string","title":"Mensagem"}},"type":"object","required":["codigo","mensagem"],"title":"DetalheErro"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"Instancia":{"properties":{"grau":{"type":"string","title":"Grau"},"classe":{"type":"string","title":"Classe","default":""},"orgao_julgador":{"type":"string","title":"Orgao Julgador","default":""},"sistema":{"type":"string","title":"Sistema","default":""},"formato":{"type":"string","title":"Formato","default":""},"data_ajuizamento":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Data Ajuizamento"},"ultima_atualizacao":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Ultima Atualizacao"},"assuntos":{"items":{"type":"string"},"type":"array","title":"Assuntos"},"total_movimentacoes":{"type":"integer","title":"Total Movimentacoes","default":0}},"type":"object","required":["grau"],"title":"Instancia","description":"Cada grau em que o processo tramita/tramitou, como o Datajud registra."},"Movimentacao":{"properties":{"id":{"type":"string","title":"Id","description":"Identificador estável: use para não gravar a mesma duas vezes."},"data":{"type":"string","format":"date-time","title":"Data"},"descricao":{"type":"string","title":"Descricao"},"tipo":{"$ref":"#/components/schemas/TipoMovimentacao","default":"outro"},"origem":{"$ref":"#/components/schemas/Origem"},"grau":{"type":"string","title":"Grau","default":""},"complemento":{"type":"string","title":"Complemento","default":""},"orgao":{"type":"string","title":"Orgao","default":""},"link":{"type":"string","title":"Link","default":""}},"type":"object","required":["id","data","descricao","origem"],"title":"Movimentacao"},"Origem":{"type":"string","enum":["historico_processual","diario_oficial"],"title":"Origem"},"Parte":{"properties":{"nome":{"type":"string","title":"Nome"},"polo":{"$ref":"#/components/schemas/Polo","default":"terceiro"},"advogados":{"items":{"$ref":"#/components/schemas/Advogado"},"type":"array","title":"Advogados"}},"type":"object","required":["nome"],"title":"Parte"},"Periodo":{"properties":{"inicio":{"type":"string","format":"date","title":"Inicio"},"fim":{"type":"string","format":"date","title":"Fim"}},"type":"object","required":["inicio","fim"],"title":"Periodo"},"Polo":{"type":"string","enum":["ativo","passivo","terceiro"],"title":"Polo"},"Processo":{"properties":{"numero":{"type":"string","title":"Numero"},"tribunal":{"type":"string","title":"Tribunal","default":""},"segmento":{"type":"string","title":"Segmento","default":""},"grau":{"type":"string","title":"Grau","default":""},"classe":{"type":"string","title":"Classe","default":""},"assunto":{"type":"string","title":"Assunto","default":""},"assuntos":{"items":{"type":"string"},"type":"array","title":"Assuntos"},"orgao_julgador":{"type":"string","title":"Orgao Julgador","default":""},"comarca":{"type":"string","title":"Comarca","default":""},"sistema":{"type":"string","title":"Sistema","default":""},"link":{"type":"string","title":"Link","description":"Consulta do processo no site do tribunal, quando informada.","default":""},"valor_causa":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Valor Causa"},"data_ajuizamento":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Data Ajuizamento"},"data_ultima_movimentacao":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Data Ultima Movimentacao"},"partes":{"items":{"$ref":"#/components/schemas/Parte"},"type":"array","title":"Partes"},"advogados":{"items":{"$ref":"#/components/schemas/Advogado"},"type":"array","title":"Advogados"},"instancias":{"items":{"$ref":"#/components/schemas/Instancia"},"type":"array","title":"Instancias"},"movimentacoes":{"items":{"$ref":"#/components/schemas/Movimentacao"},"type":"array","title":"Movimentacoes"},"publicacoes":{"items":{"$ref":"#/components/schemas/Publicacao"},"type":"array","title":"Publicacoes"},"origens":{"items":{"$ref":"#/components/schemas/Origem"},"type":"array","title":"Origens"},"valor_causa_formatado":{"type":"string","title":"Valor Causa Formatado","readOnly":true},"polo_ativo":{"items":{"type":"string"},"type":"array","title":"Polo Ativo","readOnly":true},"polo_passivo":{"items":{"type":"string"},"type":"array","title":"Polo Passivo","readOnly":true},"titulo":{"type":"string","title":"Titulo","description":"\"Autor × Réu\", como na capa dos autos.","readOnly":true},"total_movimentacoes":{"type":"integer","title":"Total Movimentacoes","readOnly":true},"total_publicacoes":{"type":"integer","title":"Total Publicacoes","readOnly":true}},"type":"object","required":["numero","valor_causa_formatado","polo_ativo","polo_passivo","titulo","total_movimentacoes","total_publicacoes"],"title":"Processo"},"Publicacao":{"properties":{"id":{"type":"string","title":"Id"},"data_disponibilizacao":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Data Disponibilizacao"},"tipo_publicacao":{"type":"string","title":"Tipo Publicacao","default":""},"tipo_documento":{"type":"string","title":"Tipo Documento","default":""},"tribunal":{"type":"string","title":"Tribunal","default":""},"orgao":{"type":"string","title":"Orgao","default":""},"numero_processo":{"type":"string","title":"Numero Processo","default":""},"classe":{"type":"string","title":"Classe","default":""},"meio":{"type":"string","title":"Meio","default":""},"texto":{"type":"string","title":"Texto","description":"Teor completo do ato, sem HTML.","default":""},"link":{"type":"string","title":"Link","default":""},"partes":{"items":{"$ref":"#/components/schemas/Parte"},"type":"array","title":"Partes"},"advogados":{"items":{"$ref":"#/components/schemas/Advogado"},"type":"array","title":"Advogados"}},"type":"object","required":["id"],"title":"Publicacao"},"RespostaCNJ":{"properties":{"numero":{"type":"string","title":"Numero"},"valido":{"type":"boolean","title":"Valido"},"tribunal":{"type":"string","title":"Tribunal"},"justica":{"type":"string","title":"Justica"},"uf":{"type":"string","title":"Uf"},"ano":{"type":"integer","title":"Ano"},"origem":{"type":"string","title":"Origem"}},"type":"object","required":["numero","valido","tribunal","justica","uf","ano","origem"],"title":"RespostaCNJ"},"RespostaConta":{"properties":{"cliente":{"type":"string","title":"Cliente"},"plano":{"type":"string","title":"Plano"},"preco_mensal":{"type":"number","title":"Preco Mensal","description":"Em reais."},"preco_mensal_formatado":{"type":"string","title":"Preco Mensal Formatado"},"cota_mensal":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cota Mensal","description":"null = ilimitado."},"limite_por_minuto":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Limite Por Minuto"},"mes":{"type":"string","title":"Mes","description":"Mês da cota (AAAA-MM, horário de Brasília)."},"consultas_usadas":{"type":"integer","title":"Consultas Usadas"},"consultas_restantes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Consultas Restantes"},"excedentes":{"type":"integer","title":"Excedentes"},"excedente_permitido":{"type":"boolean","title":"Excedente Permitido"},"preco_excedente":{"type":"number","title":"Preco Excedente","description":"Por consulta acima da cota, em reais."},"valor_excedente":{"type":"number","title":"Valor Excedente","description":"Excedentes do mês × preço do excedente, em reais."},"renova_em":{"type":"string","format":"date","title":"Renova Em"}},"type":"object","required":["cliente","plano","preco_mensal","preco_mensal_formatado","cota_mensal","limite_por_minuto","mes","consultas_usadas","consultas_restantes","excedentes","excedente_permitido","preco_excedente","valor_excedente","renova_em"],"title":"RespostaConta"},"RespostaErro":{"properties":{"erro":{"$ref":"#/components/schemas/DetalheErro"}},"type":"object","required":["erro"],"title":"RespostaErro"},"RespostaExiste":{"properties":{"numero":{"type":"string","title":"Numero"},"existe":{"type":"boolean","title":"Existe"},"origem":{"anyOf":[{"$ref":"#/components/schemas/Origem"},{"type":"null"}]}},"type":"object","required":["numero","existe"],"title":"RespostaExiste"},"RespostaOABProcessos":{"properties":{"oab":{"type":"string","title":"Oab"},"periodo":{"$ref":"#/components/schemas/Periodo"},"tribunal":{"type":"string","title":"Tribunal","default":""},"total":{"type":"integer","title":"Total"},"total_publicacoes":{"type":"integer","title":"Total Publicacoes"},"processos":{"items":{"$ref":"#/components/schemas/Processo"},"type":"array","title":"Processos"}},"type":"object","required":["oab","periodo","total","total_publicacoes","processos"],"title":"RespostaOABProcessos"},"RespostaOABPublicacoes":{"properties":{"oab":{"type":"string","title":"Oab"},"periodo":{"$ref":"#/components/schemas/Periodo"},"total":{"type":"integer","title":"Total","description":"Total de publicações no período, segundo o diário."},"paginas_lidas":{"type":"integer","title":"Paginas Lidas"},"publicacoes":{"items":{"$ref":"#/components/schemas/Publicacao"},"type":"array","title":"Publicacoes"}},"type":"object","required":["oab","periodo","total","paginas_lidas","publicacoes"],"title":"RespostaOABPublicacoes"},"RespostaProcesso":{"properties":{"processo":{"$ref":"#/components/schemas/Processo"},"avisos":{"items":{"type":"string"},"type":"array","title":"Avisos","description":"Fontes que falharam nesta consulta (o resultado pode estar incompleto)."}},"type":"object","required":["processo"],"title":"RespostaProcesso"},"RespostaStatus":{"properties":{"api":{"type":"string","title":"Api"},"versao":{"type":"string","title":"Versao"},"limite_diario":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Limite Diario","description":"Só no acesso por IP; null = sem limite diário."},"consultas_hoje":{"type":"integer","title":"Consultas Hoje"},"consultas_restantes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Consultas Restantes"},"cliente":{"type":"string","title":"Cliente","default":""},"plano":{"type":"string","title":"Plano","default":""},"cota_mensal":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cota Mensal"},"consultas_mes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Consultas Mes"},"consultas_restantes_mes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Consultas Restantes Mes"}},"type":"object","required":["api","versao","limite_diario","consultas_hoje","consultas_restantes"],"title":"RespostaStatus"},"TipoMovimentacao":{"type":"string","enum":["despacho","decisao","sentenca","acordao","audiencia","intimacao","citacao","publicacao_dje","outro"],"title":"TipoMovimentacao"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}