CNH V1 - Dados da CNH por CPF
Esta API retorna os dados da CNH incluindo Cursos, Exames e até Infrações.
Montando a requisição
Método da requisição
GETEndereço da requisição
Principal:
https://api.activethread.com.br/detran/v1/cnh/12345678910Secundário:
https://api.detran.app.br/detran/v1/cnh/12345678910Parâmetros da requisição
Via URL
https://api.detran.app.br/detran/v1/cnh/12345678910?at=XPTO
Via Cabeçalho
Authorization: XPTO
Respostas da requisição
200 - Sucesso
Observação: Os dados abaixo são apenas demonstrativos, com a finalidade de mapeamento da estrutura. Por isso, de forma alguma representam a realidade.
{
"status": "DONE",
"result": {
"dadosCondutor": {
"nome": "INFORMACAO OCULTADA",
"registro": "INFORMACAO OCULTADA",
"tipoChave": "CPF",
"numero": "INFORMACAO OCULTADA",
"nomeSocial": "",
"filiacaoAfetiva1": "",
"filiacaoAfeitva2": "",
"dataNascimento": "25/01/1961",
"sexo": "1 - MASCULINO",
"nomeMae": "INFORMACAO OCULTADA",
"nomePai": "",
"tipoDocumento": "1 - CARTEIRA DE IDENTIDADE",
"numeroDocumento": "INFORMACAO OCULTADA",
"orgaoExpedidor": "SSP",
"ufOrgaoExpeditor": "SP",
"cpf": "INFORMACAO OCULTADA",
"localidadeNascimento": "07107 - SAO PAULO",
"logradouro": "INFORMACAO OCULTADA",
"numeroEndereco": "INFORMACAO OCULTADA",
"complemento": "INFORMACAO OCULTADA",
"bairro": "INFORMACAO OCULTADA",
"cep": "INFORMACAO OCULTADA",
"municipioEndereco": "INFORMACAO OCULTADA",
"ufEndereco": "INFORMACAO OCULTADA",
"pgu": "INFORMACAO OCULTADA",
"nacionalidade": "1 - BRASILEIRO",
"dataCadastramento": "00/00/0000",
"dataPrimeiraHabilitacao": "08/06/1979",
"ufPrimeiraHabilitacao": "SP",
"ufDominio": "SP",
"telefoneCelular": "00 000000000",
"email": "",
"situacaoCNH": "4 - CONFIRMADA",
"situacaoCNHAnterior": "A - CANCELADA - ERRO DETRAN",
"requerimento1": "-",
"requerimento2": "-",
"requerimento3": "-",
"requerimento4": "-",
"permissionado": "2 - Não",
"codigoTransacaoUltimaAtualizacao": "181",
"renach": "INFORMACAO OCULTADA",
"cnh": "INFORMACAO OCULTADA",
"cancelamento": "",
"categoriaAtual": "D",
"categoriaRebaixada": "",
"categoriaAutorizada": "D",
"dataValidadeCnh": "00/00/0000",
"observacao": "",
"dataInicioCategoriaX": "00/00/0000",
"dataInicioCategoriaA": "00/00/0000",
"dataInicioCategoriaB": "00/00/0000",
"dataInicioCategoriaC": "00/00/0000",
"dataInicioCategoriaD": "00/00/0000",
"dataInicioCategoriaE": "00/00/0000",
"proximoMotivoRequerimento": "- </p> -",
"cnpjLaboratorioToxicologico": "08.075.074/0001-07",
"numerodoLaudo": "INFORMACAO OCULTADA",
"dataColetaToxicologico": "29/09/2017",
"dataValidadeToxicologico": "28/11/2017",
"situacaExameToxicologico": "1",
"prazoRealizacaoToxicologico": "27/03/2020",
"dataColetaNovoExame": "00000000",
"dataUltimaEmissaoHistorico": "00/00/0000",
"quantidadePartesConsulta": "00"
},
"cursos": [],
"exames": [
{
"tipoAtualizacao": "S-SUBSTITUIÇÃO",
"codigoExame": "03-APTIDÃO FÍSICA E MENTAL",
"dataExame": "12/08/2024",
"resultado": "1-APTO",
"dataValidade": "12/08/2034",
"cpfExaminador1": "008.826.246-44",
"cpfExaminador2": "000.000.000-00",
"cnpjEntCredenciada": "09.267.902/0001-63",
"municipioExame": "07107 - SAO PAULO",
"ufExame": "SP",
"categoriaPretendida": "B",
"categoriaPermitida": "B",
"observacoes": "99",
"restricoes": ""
},
{
"tipoAtualizacao": "S-SUBSTITUIÇÃO",
"codigoExame": "04-AVALIAÇÃO PSICOLÓGICA",
"dataExame": "06/08/2004",
"resultado": "1-APTO",
"dataValidade": "00/00/0000",
"cpfExaminador1": "000.000.000-90",
"cpfExaminador2": "000.000.000-00",
"cnpjEntCredenciada": "17.504.036/0001-05",
"municipioExame": "07107 - SAO PAULO",
"ufExame": "SP",
"categoriaPretendida": "B",
"categoriaPermitida": "B",
"observacoes": "99",
"restricoes": ""
}
],
"infracoes": [],
"bloqueios": [
{
"tipoAtualizacao": "I - INCLUSÃO",
"ufDetranBloqueio": "SP",
"motivoBloqueio": "4 - MORTE",
"dataBloqueio": "21/11/2009",
"orgaoResponsavelBloqueio": "26 - DETRAN - SÃO PAULO",
"documentoGeradorBloqueio": "OBITO EM 06/03/09-INSS-(01680)",
"descricaoBloqueio": "CONF.AUTORIZ.DO DETRAN P/PROCESSAMENTO DO ARQUIVO INSS:04/09",
"tipoDecisaoBloqueio": "2-DECISÃO ADMINISTRATIVA",
"recolhimentoCNH": "2 - Não",
"prazoPenalidade": "00001",
"tipoPrazo": "1-Dia",
"prazoPenalidadeTotal": "00001",
"tipoPrazoTotal": "1",
"dataInicioPenalidadeBloqueios": "99/99/9999",
"dataFimPenalidadeBloqueios": "99/99/9999",
"requisitosLiberacao": ""
}
],
"bloqueiosLiberados": [],
"ocorrencias": []
}
}400 - Requisição inválida
Exemplo:
{
"message": "Por favor, informe um documento válido."
}401 - Não autorizado
{
"message": "Não autorizado."
}403 - Acesso negado
{
"message": "Acesso negado!"
}Exemplos da requisição - Autenticação via URL
HTTP
GET /detran/v1/cnh/12345678910 HTTP/1.1
Host: api.activethread.com.brcURL
curl --location 'https://api.activethread.com.br/detran/v1/cnh/12345678910JavaScript
const requestOptions = {
method: "GET",
redirect: "follow",
};
fetch(
"https://api.activethread.com.br/detran/v1/cnh/12345678910?at=XPTO",
requestOptions
)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));NodeJs
const axios = require("axios");
let config = {
method: "get",
maxBodyLength: Infinity,
url: "https://api.activethread.com.br/detran/v1/cnh/12345678910?at=XPTO",
headers: {},
};
axios
.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.activethread.com.br/detran/v1/cnh/12345678910?at=XPTO',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;Java
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.get("https://api.activethread.com.br/detran/v1/cnh/12345678910?at=XPTO")
.asString();Python
import requests
url = "https://api.activethread.com.br/detran/v1/cnh/12345678910?at=XPTO"
payload = {}
headers = {}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)Exemplos da requisição - Autenticação via Cabeçalho
HTTP
GET /detran/v1/cnh/12345678910 HTTP/1.1
Host: api.activethread.com.br
Authorization: XPTOcURL
curl --location 'https://api.activethread.com.br/detran/v1/cnh/12345678910' \
--header 'Authorization: XPTO'JavaScript
const myHeaders = new Headers();
myHeaders.append("Authorization", "XPTO");
const requestOptions = {
method: "GET",
headers: myHeaders,
redirect: "follow",
};
fetch(
"https://api.activethread.com.br/detran/v1/cnh/12345678910",
requestOptions
)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));NodeJs
const axios = require("axios");
let config = {
method: "get",
maxBodyLength: Infinity,
url: "https://api.activethread.com.br/detran/v1/cnh/12345678910",
headers: {
Authorization: "XPTO",
},
};
axios
.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.activethread.com.br/detran/v1/cnh/12345678910',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: XPTO'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;Java
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.get("https://api.activethread.com.br/detran/v1/cnh/12345678910")
.header("Authorization", "XPTO")
.asString();Python
import requests
url = "https://api.activethread.com.br/detran/v1/cnh/12345678910"
payload = {}
headers = {
'Authorization': 'XPTO'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)