1. Consulta:
POST
{base_url}/api/servicos/consulta/
Realiza consultas na base civil ou criminal com os parâmetros de pesquisa enviados no corpo da requisição. Estes parâmetros são:
- nome: String, contendo o nome do indivíduo no qual se deseja realizar a consulta.
- rg: String, contendo o número do RG do indivíduo no qual se deseja realizar a consulta.
- cpf: String, cuja formatação é 99999999999. Número do CPF do indivíduo no qual se deseja realizar a consulta.
- nomePai: String, contendo o nome do pai do indivíduo no qual se deseja realizar a consulta.
- nomeMae: String, contendo o nome da mãe do indivíduo no qual se deseja realizar a consulta.
- tipoConsulta: Número, sendo o valor 0 indicando uma consulta civil, e 1 indicando uma consulta criminal.
A mensagem JSON contendo o corpo da requisição deve seguir o padrão indicado pelos exemplos abaixos:
A requisição não possui nenhum campo obrigatório, desde que ao menos um campo esteja preenchido. Isso significa que uma requisição pode ser realizada contendo apenas uma única informação, ou contendo uma combinação destas informações.
No caso de sucesso, a operação retorna uma mensagem JSON contendo os seguintes campos:
- sucesso: Boolean. Indica se há algum erro na requisição ou se ocorreu erro na consulta (recebendo o valor false) ou se a consulta foi bem sucedida (recebendo o valor true)
- erros: Array. No caso de uma requisição com o campo sucesso preenchido como false, Conterá aqui a descrição dos erros ocorridos.
- dados: Array. Resultado das consultas contendo as informações referente aos documentos encontrados. Caso este campo esteja vazio enquanto o campo sucesso estiver preenchido como true, isso significa que não houve nenhum resultado encontrado para as informações dadas. Os campos contidos neste array são:
- nome: String. Nome do indivíduo
- nomePai: String. Nome do pai do indivíduo
- nomeMae: String. Nome da mãe do indivíduo
- rg: String. RG do indivíduo
- cpf: String. CPF do indivíduo
- dataNascimento: String. Data de nascimento do indivíduo no formato dd/mm/yyyy
- endereço: String. Endereço do indivíduo no formato RUA - NÚMERO - BAIRRO - CIDADE
- telefone: String. Telefone cadastrado na base civil/criminal
- dataAtendimento: Data do atendimento realizado no sistema, no formato dd/mm/yyyy
- alcunha: String. Alcunha do indivíduo (para consultas do tipoConsulta = 1)
- fotoUrl: String. URL para download da foto do resultado encontrado. Deverá ser feita uma requisição GET para o link indicado, utilizando a mesma autenticação Basic da consulta.
Um exemplo de resposta bem sucedida pode ser visto abaixo:
Um exemplo de resposta em que a requisição foi bem sucedida, mas não houveram resultados encontrados pode ser visto abaixo:
Um exemplo de resposta em que a requisição foi bem sucedida, mas a busca encontrou erros pode ser visto abaixo, tendo os erros contidos dentro do campo erros:
Outros exemplos de resposta que podem ocorrer no caso de falha são:
- Status da requisição 404: "Usuário e/ou senha incorretos.". Indica que o nome de usuário (Basic - username) não foi encontrado no banco de dados da API e/ou a senha (Basic - password) está incorreta.
- Status da requisição 403: "Esse usuário não tem acesso a esse recurso da API."
- Status da requisição 401: "Usuário inativo." Nome de usuário encontrado na API porém, o usuário não está ativo no sistema.
2. Glossário:
Convenções:
- Caller - Aplicação cliente.
- Request - Requisição do cliente.
- Response - Resposta da API.
- Status - Código status HTTP de response.
- Todos os requests/responses devem estar no formato JSON.
Todos os códigos status de response utilizados seguem os códigos padrões HTTP. Abaixo estão as descrições de alguns deles.
- 2XX - Sucesso
- 4XX - Erro do lado cliente
- 5XX - Erro do lado servidor
Status Code |
Descrição |
200 |
OK |
201 |
Created |
202 |
Accepted (Request accepted, and queued for execution) |
400 |
Bad request |
401 |
Authentication failure |
403 |
Forbidden |
404 |
Resource not found |
405 |
Method Not Allowed |
409 |
Conflict |
412 |
Precondition Failed |
413 |
Request Entity Too Large |
500 |
Internal Server Error |
501 |
Not Implemented |
503 |
Service Unavailable |