1

Criação de Request

Para realizar a consulta por documento, é necessário criar uma requisição ao endpoint de consulta correspondente. Essa consulta pode ser realizada em nossa base de dados ou diretamente no tribunal. Vale destacar que os dados disponíveis em nossa base podem estar sujeitos a um atraso de atualização de até 30 dias.

Payload da Solicitação

A solicitação POST deve incluir um payload com as seguintes propriedades:

search_type: Este campo define o tipo de entidade que será buscada. Os valores possíveis são: cpf, cnpj, oab, name, lawsuit_cnj ou lawsuit_id. Para buscas processuais, utilizaremos especificamente cpf, cnpj ou oab, que correspondem ao número do processo.

Obs: - O formato da OAB é sempre UF mais 7 digitos do numero da OAB, adicionar zeros a esquerda até atingir 7 dígitos.

Exemplo:


DF0012345

Caso a OAB tenha apenas 4 dígitos, adicionar mais um zero:

DF0001234
  • search_key: O número do processo (Código CNJ), CPF, CNPJ, OAB ou Name que você deseja buscar;

  • cache_ttl_in_days (opcional): Número inteiro que define até quantos dias o resultado da busca pode considerar um cache válido;

  • search_params: Um objeto que contém alguns parâmetros da busca como: - lawsuit_instance (opcional): Este parâmetro permite definir a instância em que deseja buscar o processo; - masked_response Define se a resposta virá minificada. Este parâmetro é aplicável apenas a consultas (simples ou completas) por documento no contexto de busca processual. - masked_response = true: retornará uma consulta completa - masked_response = false: retornará uma consulta simples

    *Obs Consulte as condições comerciais desses diferentes tipos de consultas por documento.

Filtros poderão ser adicionados à requisição, permitindo um retorno mais assertivo com base nos valores desejados. Para isso, o parâmetro filter deve ser incluído dentro de search_params, com os seguintes filtros disponíveis:

  • filter (opcional): Um objeto que contém os filtros para a busca, como:

  • side (opcional): Permite buscar por tipos de participantes do processo, podendo ser: ‘Passive’, ‘Active’, ‘Interested’, ‘Unknown’;

  • amount_gte (opcional): Filtra processos com valor da causa maior ou igual ao especificado em amount_gte;

  • amount_lte (opcional): Filtra processos com valor da causa menor ou igual ao especificado em amount_lte;

  • tribunals (opcional): Um objeto que contém os filtros de tribunais:

    • keys (opcional): Lista de códigos de tribunais disponíveis na lista de tribunais. Este filtro permite restringir a busca a processos que tenham ou não esses códigos específicos;
    • not_equal (opcional): Valor booleano que define se o filtro incluirá ou excluirá os valores especificados em keys.
  • subject_codes (opcional): Um objeto que contém os filtros de assuntos:

    • keys (opcional): Lista de códigos de assuntos. Este filtro permite restringir a busca a processos que tenham ou não esses códigos específicos;
    • not_equal (opcional): Valor booleano que define se o filtro incluirá ou excluirá os valores especificados em keys.
  • classification_codes (opcional): Um objeto que contém os filtros de classes processuais:

    • keys (opcional): Lista de códigos de classes processuais. Este filtro permite restringir a busca a processos que tenham ou não esses códigos específicos;
    • not_equal (opcional): Valor booleano que define se o filtro incluirá ou excluirá os valores especificados em keys.
  • distribution_date_gte (opcional): Permite especificar uma data mínima de distribuição. Este filtro localiza processos distribuídos após a data informada.

  • credential (opcional): Objeto para o uso do cofre de credenciais:

  • customer_key (opcional): Permite passar a chave do usuário cadastrada no cofre de credenciais. Caso não seja informada, a API tentará encontrar uma credencial cadastrada para uma customer_key vazia.

Exemplo da criação da request por documento com filtros:

 curl --location 'https://requests.prod.judit.io/requests' \
 --header 'api-key: <API-KEY>' \
 --header 'Content-Type: application/json' \
 --data '{
     "search": {
         "search_type": "cnpj",
         "search_key": "99.999.999/0009-99",
         "search_params": {
             "filter": {
                 "side": "Passive",
                 "tribunals": {
                     "keys": ["TJBA"],
                     "not_equal": false
                 },
                 "subject_codes": {
                     "keys": ["10433"],
                     "not_equal": false
                 },
                 "classification_codes": {
                     "keys": ["985"],
                     "not_equal": false
                 }
             }
         }
     }    
 }
 '

Exemplo da criação da request por documento em nossa base de dados:

curl --request POST
  --url 'https://requests.prod.judit.io/requests'
  --header 'Content-Type: application/json'
  --header 'api_key: SUA-API-KEY'
  --data '{
    "search": {
       "search_type": "cpf",
       "search_key": "999.999.999-99"
     }
   }
   '

Exemplo de criação da request por documento diretamente no tribunal:

curl --request POST
   --url 'https://requests.prod.judit.io/requests'
   --header 'Content-Type: application/json'
   --header 'api_key: <API-KEY>'
   --data '{
       "search": {
           "search_type": "cpf",
           "search_key": "999.999.999-99",
           "on_demand": true
       }
   }
   '

Em consultas diretamento no tribunal é adicionado a propriedade on-demand com o booleano true.

A resposta dessa requisição será um objeto JSON com os dados de criação da Request.

Abaixo, apresentamos um exemplo de resposta da requisição POST de uma busca realizada em nossa base de dados sem filtros aplicados:

{
  "request_id": "05ee9825-b2b4-480b-b29e-f071ca7d9c72",
  "search": {
    "search_type": "cpf",
    "search_key": "99999999999",
    "response_type": "lawsuits",
    "search_params": {
      "filter": {},
      "pagination": {}
    }
  },
  "origin": "api",
  "origin_id": "8c8bc14b-9f46-4e52-bc05-25a8af855690",
  "user_id": "6dc91e78-400e-489c-b30c-61789e323d7c",
  "status": "pending",
  "created_at": "2024-02-16T13:14:09.645Z",
  "updated_at": "2024-02-16T13:14:09.645Z",
  "tags": {}
 }

Na consulta por documento o search_type pode ser “oab”, “cpf” e “cnpj”.

2

Consultar o status da request

Esta é uma etapa importante para saber quando a consulta terminou, já que as respostas serão adicionadas de forma incremental por tribunal.

 curl --request GET
   --url 'https://requests.prod.judit.io/requests/05ee9825-b2b4-480b-b29e-f071ca7d9c72'
   --header 'api_key: SUA-API-KEY'
   --header 'Content-Type: application/json'

Retorno:

{
  "request_id": "05ee9825-b2b4-480b-b29e-f071ca7d9c72",
  "search": {
     "search_type": "cpf",
     "search_key": "99999999999",
     "response_type": "lawsuits",
     "search_params": {
       "filter": {},
       "pagination": {}
     }
  },
  "origin": "api",
  "origin_id": "46fac09a-b34f-4dfd-a24f-b358bf04dfd4",
  "user_id": "82082593-c664-4d7b-b174-2f0dc4791daf",
  "status": "completed",
  "created_at": "2024-02-21T17:33:22.876Z",
  "updated_at": "2024-02-21T17:33:26.316Z",
  "tags": {
     "dashboard_id": null
  }
}

Através da propriedade status é possível saber se a requisição está completa.

3

Consultar o conteúdo da resposta

Na URL vai o request_id retornado na primeira requisição.

curl --request GET \
  --url 'https://requests.prod.judit.io/responses/?request_id=cb97f8ba-7736-43c7-a961-436b151cd65c&page=1&page_size=10'
  --header 'api_key: SUA-API-KEY'
  --header 'Content-Type: application/json'
1

Processo encontrado

2

Processo não encontrado

Exemplo de retorno quando o processo não foi encontrado em nossa base de dados ou tribunal:

{
    "request_status": "completed",
    "page": 1,
    "page_count": 0,
    "all_pages_count": 0,
    "all_count": 0,
    "page_data": []
}

Verifique o parâmetro request_status para garantir que a resposta foi processada com sucesso. O valor deve ser completed. Caso contrário, a solicitação ainda está em processamento.

Os parâmetro page e page_size são opcionais, porém necessários para percorrer as páginas com os processos, caso venham mais de uma, o que é comum no caso de consulta por documento.

request_status
string

Define o status da resposta.

page
integer

Define a página atual da busca.

page_count
integer

Total de processos na página.

all_count
integer

Total de processos encontrados

all_pages_count
integer

Quantidade de páginas de processos

page_data
array

Array com as respostas e dentro da propriedade response_data o conteúdo do processo.

O significado de cada campo pode ser encontrado no glossário:

https://docs.judit.io/essentials/glossary