Autenticação
Ao se cadastrar como nosso parceiro, você recebeu um usuário e senha para acessar a plataforma.
Por exemplo:
- Usuário:
test@aboutcar.com.br
- Senha:
@boutCar!2021
Esses são os dados que vai precisar para fazer a autenticação e recuperar o token que libera acesso as próximas requisições.
Montando a requisição
Método da requisição
POST
Endereço da requisição
Homologação:
https://apipreview.aboutcar.com.br/v1/integration/security/auth
Produção:
https://api.aboutcar.com.br/v1/integration/security/auth
Cabeçalho da requisição
{
"Content-Type": "application/json"
}
Corpo da requisição
{
"username": "test@aboutcar.com.br",
"password": "@boutCar!2021"
}
Respostas da requisição
200 - Sucesso
{
"user": {
"name": "Test AboutCar",
"document": "766.098.460-81",
"username": "test@aboutcar.com.br",
"discountTable": 1,
"inquiries": [],
"payday": 25,
"paymentType": "CARD",
"email": "test@aboutcar.com.br",
"mobile": "31999999999",
"address": {
"street": "Rua Juiz Achilles Velloso",
"number": "121",
"complement": "",
"neighborhood": "Estoril",
"postalCode": "30494180",
"city": "Belo Horizonte",
"state": "MG"
},
"balance": 0,
"credit": 0,
"ordered": 0,
"flow": [
{
"mobile": "5531999999999",
"name": null
}
],
"roles": [],
"products": [],
"partner": true,
"prepaid": false,
"minimumConsumption": null,
"impersonate": true,
"termAgree": true,
"emailVerified": true,
"marketing": true,
"createdAt": "2021-08-20T03:32:04.366Z"
},
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI2MTFmYThlMWQ3NTZmYmNmYmNkZDE2NGMiLCJlbWFpbCI6InRlc3RAYWJvdXRjYXIuY29tLmJyIiwiaWF0IjoxNzAyNjU3MTExLCJleHAiOjE3MDI2ODU5MTF9.nw3W7jBulG_QW5cF_KTMdsCy-sB_c-FE47FUAgOzbFQ"
}
O valor da propriedade token é o que deve ser utilizado nas próximas requisições.
401 - Não autorizado
{
"message": "Unauthorized!"
}
403 - Acesso negado
{
"message": "Forbidden!"
}
Exemplos da requisição
HTTP
POST /v1/integration/security/auth HTTP/1.1
Host: apipreview.aboutcar.com.br
Content-Type: application/json
Content-Length: 78
{
"username": "test@aboutcar.com.br",
"password": "@boutCar!2021"
}
cURL
curl --location 'https://apipreview.aboutcar.com.br/v1/integration/security/auth' \
--header 'Content-Type: application/json' \
--data-raw '{
"username": "test@aboutcar.com.br",
"password": "@boutCar!2021"
}'
JavaScript
const myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
const raw = JSON.stringify({
"username": "test@aboutcar.com.br",
"password": "@boutCar!2021"
});
const requestOptions = {
method: 'POST',
headers: myHeaders,
body: raw,
redirect: 'follow'
};
fetch("https://apipreview.aboutcar.com.br/v1/integration/security/auth", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
NodeJs
const axios = require('axios');
const data = JSON.stringify({
"username": "test@aboutcar.com.br",
"password": "@boutCar!2021"
});
const config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://apipreview.aboutcar.com.br/v1/integration/security/auth',
headers: {
'Content-Type': 'application/json'
},
data
};
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://apipreview.aboutcar.com.br/v1/integration/security/auth',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"username": "test@aboutcar.com.br",
"password": "@boutCar!2021"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Java
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("https://apipreview.aboutcar.com.br/v1/integration/security/auth")
.header("Content-Type", "application/json")
.body("{\"username\": \"test@aboutcar.com.br\", \"password\": \"@boutCar!2021\"}")
.asString();