Skip to Content
IntegracaoConsultarAssincronaChamada de Forma assíncrona

Chamada de Forma assíncrona

A segunda — e mais utilizada — opção para consumir um de nossos produtos é atráves de uma chamada assíncrona. Isso significa que ao realizar a requisição, logo em seguida receberá uma resposta parcial com um ID (identificador) para recuperar a resposta completa quando o processamento dos dados estiver finalizado.

Nesse paradigma, a resposta parcial é recebida em menos de 1 segundo.
No entanto, é necessária a utilização da Chamada de Status ou Dados para verificar a conclusão do processamento dos dados.

Recomendamos a utilização dessa chamada em todos casos que seja possível fazer o controle de conclusão em um fluxo alternativo.

Montando a requisição

Método da requisição

GET

Endereço da requisição

Homologação:

https://apipreview.aboutcar.com.br/v1/integration/inquiries/ESPECIAL/ABC1234

Produção:

https://api.aboutcar.com.br/v1/integration/inquiries/ESPECIAL/ABC1234

Cabeçalho da requisição

{ "Authorization": "Bearer token", "Content-Type": "application/json" }

No parâmetro Authorization você vai informar o valor do token recuperado anteriormente.

Por exemplo:

{ "Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI2MTFmYThlMWQ3NTZmYmNmYmNkZDE2NGMiLCJlbWFpbCI6InRlc3RAYWJvdXRjYXIuY29tLmJyIiwiaWF0IjoxNzAyNjU3MTExLCJleHAiOjE3MDI2ODU5MTF9.nw3W7jBulG_QW5cF_KTMdsCy-sB_c-FE47FUAgOzbFQ", "Content-Type": "application/json" }

Respostas da requisição

200 - Sucesso

{ "id": "657caf08255ca770829ae3d0", "plate": "ABC1234", "partner": true, "quick": false, "integration": true, "type": "ESPECIAL", "tags": [], "photos": [], "status": "PROCESSING", "notifiedAt": "2023-12-15T19:54:48.348Z", "executedAt": "2023-12-15T19:54:48.349Z", "createdAt": "2023-12-15T19:54:48.350Z", "updatedAt": "2023-12-15T19:54:48.350Z", "product": { "name": "Especial", "code": "ESPECIAL", "value": 47.9 } }

As propriedades id e status são importantes aqui. O status informa o estágio da execução e o id é necessário na chamada de Status ou Dados para conseguir verificar a conclusão do processamento dos dados.

401 - Não autorizado

{ "message": "Unauthorized!" }

Exemplos da requisição

HTTP

GET /v1/integration/inquiries/ESPECIAL/ABC1234 HTTP/1.1 Host: apipreview.aboutcar.com.br Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI2MTFmYThlMWQ3NTZmYmNmYmNkZDE2NGMiLCJlbWFpbCI6InRlc3RAYWJvdXRjYXIuY29tLmJyIiwiaWF0IjoxNzAyNjU3MTExLCJleHAiOjE3MDI2ODU5MTF9.nw3W7jBulG_QW5cF_KTMdsCy-sB_c-FE47FUAgOzbFQ

cURL

curl --location 'https://apipreview.aboutcar.com.br/v1/integration/inquiries/ESPECIAL/ABC1234' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI2MTFmYThlMWQ3NTZmYmNmYmNkZDE2NGMiLCJlbWFpbCI6InRlc3RAYWJvdXRjYXIuY29tLmJyIiwiaWF0IjoxNzAyNjU3MTExLCJleHAiOjE3MDI2ODU5MTF9.nw3W7jBulG_QW5cF_KTMdsCy-sB_c-FE47FUAgOzbFQ'

JavaScript

const myHeaders = new Headers(); myHeaders.append("Authorization", "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI2MTFmYThlMWQ3NTZmYmNmYmNkZDE2NGMiLCJlbWFpbCI6InRlc3RAYWJvdXRjYXIuY29tLmJyIiwiaWF0IjoxNzAyNjU3MTExLCJleHAiOjE3MDI2ODU5MTF9.nw3W7jBulG_QW5cF_KTMdsCy-sB_c-FE47FUAgOzbFQ"); const requestOptions = { method: 'GET', headers: myHeaders, redirect: 'follow' }; fetch("https://apipreview.aboutcar.com.br/v1/integration/inquiries/ESPECIAL/ABC1234", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));

NodeJs

const axios = require('axios'); const config = { method: 'get', maxBodyLength: Infinity, url: 'https://apipreview.aboutcar.com.br/v1/integration/inquiries/ESPECIAL/ABC1234', headers: { 'Authorization': 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI2MTFmYThlMWQ3NTZmYmNmYmNkZDE2NGMiLCJlbWFpbCI6InRlc3RAYWJvdXRjYXIuY29tLmJyIiwiaWF0IjoxNzAyNjU3MTExLCJleHAiOjE3MDI2ODU5MTF9.nw3W7jBulG_QW5cF_KTMdsCy-sB_c-FE47FUAgOzbFQ' } }; 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/inquiries/ESPECIAL/ABC1234', 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: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI2MTFmYThlMWQ3NTZmYmNmYmNkZDE2NGMiLCJlbWFpbCI6InRlc3RAYWJvdXRjYXIuY29tLmJyIiwiaWF0IjoxNzAyNjU3MTExLCJleHAiOjE3MDI2ODU5MTF9.nw3W7jBulG_QW5cF_KTMdsCy-sB_c-FE47FUAgOzbFQ' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;

Java

Unirest.setTimeouts(0, 0); HttpResponse<String> response = Unirest.get("https://apipreview.aboutcar.com.br/v1/integration/inquiries/ESPECIAL/ABC1234") .header("Authorization", "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI2MTFmYThlMWQ3NTZmYmNmYmNkZDE2NGMiLCJlbWFpbCI6InRlc3RAYWJvdXRjYXIuY29tLmJyIiwiaWF0IjoxNzAyNjU3MTExLCJleHAiOjE3MDI2ODU5MTF9.nw3W7jBulG_QW5cF_KTMdsCy-sB_c-FE47FUAgOzbFQ") .asString();
Last updated on