api-multas

💵 API de Multas Brasil

A ideia desse repositório é centralizar e obter dados de Multas de todos os Detrans, através da técnica de Web Scraping e retornar os dados das multas em JSON

Status do Scrap

Você pode acompanhar o status de cada scrap no link abaixo

https://status.apibrasil.com.br

Consumindo com Javascript

yarn add api-multas
import ApiMultas from 'api-multas'

(async () => {

    const host = 'http://localhost:2222'; // seu localhost
    const token = '1234567890'; // você deve criar qualquer token

    const api = new ApiMultas();

    const request = await api.multas('mg', host, token, {
        placa: 'ABC1234',
        renavam: '123456789'
    });

    console.log(request);

})();

Alguns detalhes específicos por estado

Observações para o estado de PI, PA que por ter captcha é necessário obter uma chave do 2captcha

import ApiMultas from 'api-multas'

(async () => {

    const host = 'http://localhost:2222';
    const token = '1234567890';

    const api = new ApiMultas();

    //use o webhook.site para visualizar o retorno
    const request = await api.multas('mg', host, token, {
        placa: "ABC1234",
        renavam: "0000000000",
        twocaptchaapikey: "abc1234abc1234abc1234abc1234",
        webhook: "https://webhook.site/3545dc20-14ff-4c74-bee0-755762fd834a"
    });

    console.log(request);

})();

Link do pacote https://www.npmjs.com/package/api-multas

Estados suportados

Ainda não suportamos todos os estados, em breve iremos adicionar mais estados, se quiser sugerir um estado, abra uma PR

DETRAN SITUAÇÃO DISPONIBILIDADE OBSERVAÇÕES
Detran MG DISPONÍVEL Operacional  
Detran AL DISPONÍVEL Operacional  
Detran PB DISPONÍVEL Operacional  
Detran GO DISPONÍVEL Operacional  
Detran MA DISPONÍVEL Operacional  
Detran DF DISPONÍVEL Operacional  
Detran MS DISPONÍVEL Operacional  
Detran PE DISPONÍVEL Operacional  
Detran SE DISPONÍVEL Operacional  
Detran PR DISPONÍVEL Operacional  
Detran PI DISPONÍVEL Operacional Necessário informar 2Captcha/Webhook
Detran PA DISPONÍVEL Operacional Necessário informar 2Captcha/Webhook
Detran SC DISPONÍVEL Operacional Necessário informar 2Captcha
Detran AC Em desenvolvimento    
Detran AM Em desenvolvimento    
Detran BA Em desenvolvimento    
Detran CE Em desenvolvimento    
Detran ES Em desenvolvimento    
Detran MT Em desenvolvimento    
Detran RJ Em desenvolvimento    
Detran RN Em desenvolvimento    
Detran RO Em desenvolvimento    
Detran RR Em desenvolvimento    
Detran RS Em desenvolvimento    
Detran SP Em desenvolvimento    
Detran TO Em desenvolvimento    

Dependencias (Linux)

apt update -y && apt upgrade -y && apt install git curl -y 

Instalando Node 18 (Linux)

curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash  && source ~/.profile  && nvm install 18 && nvm use 18

Instalando Yarn (Linux)

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - && echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list && sudo apt update -y && sudo apt install yarn -y && yarn global add pm2

Instalando Node e Yarn (Windows)

Você irá precisar do Node 18+ para utilizar essa API

Dowload Yarn

https://classic.yarnpkg.com/lang/en/docs/install/#windows-stable

Download Node

https://nodejs.org/pt-br/download

Instalação API (Linux)

cd /opt/
git clone https://github.com/APIBrasil/api-multas.git && cd /api-multas
cp .env-exemplo .env && yarn && yarn start

Rodando em Background

yarn add pm2 --global
pm2 start dist/index.js --name=API-MULTAS

Exemplos de requests e respostas

[POST] https://localhost:2222/multas/mg
[POST] https://localhost:2222/multas/al

Payloads de request padrão

O payload pode variar de acordo com o estado.

{ 
    "placa":"ABC1234",
    "renavam":"00000000000"
}

Response da request padrão

O response pode variar de acordo com o estado.

{
    "placa": "ABC1234",
    "renavam": "00000000000",
    "multas": [
        {
            "sequencia": "1",
            "processo": "00000000",
            "descricao": "TRANSITAR EM VELOCIDADE SUPERIOR A MAXIMA PERMITIDA EM ATE 2",
            "local": "AV. RISOLETA NEVES  A 138M DA RUA RAIMUNDA FERREIR",
            "valor": 152.11
        },
        {
            "sequencia": "2",
            "processo": "00000000",
            "descricao": "DIRIGIR VEICULO SEGURANDO TELEFONE CELULAR",
            "local": "AVE AFONSO SILVA ESQUINA RUA ESPIRITO DE LUZ",
            "valor": 299.54
        }
    ]
}

Observações importantes

⚠️ Essa API é apenas parte de um estudo pessoal, use em produção por sua conta e risco, lembre-se essa API se basea em técnicas de web scrap para obter os dados em transformar em JSON, se o DETRAN do seu estado alterar algo nos avise para que possamos corrgir.

License

MIT © APIBrasil