IntegraCar
Esta página fornece a documentação de como obter o seu estoque de veiculos do IntegraCar via API REST.
Obtendo a Chave de Acesso
Antes de mais nada, você irá precisar de uma chave de acesso. A mesma pode ser obtida entrando em contato com o seu atendimento.
Esta chave será usada em todas as requisições feitas para a API e identifica o seu cadastro dentro dos sistemas da alpes.
A sua chave irá possuir este formato:
D7C43A9C70FF71693B87144D6ED68FF4443644C4
Iremos utilizar esta chave em todos os exemplos abaixo, mas a mesma não é válida e irá retornar um erro caso tente usa-la:
{
"data": [],
"status": "error",
"message": "Company not found with key D7C43A9C70FF71693B87144D6ED68FF4443644C4"
}
URL Base
Todas as chamadas da API serão feitas através da URL básica:
GET https://hub.alpes.one/api/v1/integrator/{apiKey}
JSON de Resposta
Todas as requisições de sucesso seguirão o seguinte padrão de resposta:
{
"data": [], //array de veículos
"total": 0, //total de veículos no seu estoque
"filters": { //dados para montar os filtros da sua busca
"brands": [], //retorna a lista de marcas do seu estoque
"models": [], //retorna a lista de marcas de modelos
"versions": [], //retorna a lista de versões do seu estoque
"years_model": [], //retorna a lista de anos de modelo do seu estoque
"years_build": [], //retorna a lista de anos de fabricação do seu estoque
"colors": [], //retorna a lista de cores do seu estoque
"fuels": [], //retorna a lista de tipos de combustível do seu estoque
"transmissions": [], //retorna a lista de transmissões do seu estoque
"doors": [ //retorna a lista de portas do seu estoque
2,
4
],
"units": [], //retorna a lista de unidades do seu estoque
"km": {
"min": null, //retorna a km mínima registrada no seu estoque
"max": null //retorna a km máxima registrada no seu estoque
},
"price": {
"min": 0, //retorna o preço mínimo registrado no seu estoque
"max": 0 //retorna o preço máximo registrado no seu estoque
}
},
"totalWithFilters": 0, //retorna o total de veículos aplicando a busca atual
"pagination": {
"currentPage": 1, //página atual
"totalPages": 0 //número total de páginas de acordo com o limite definido
},
"status": "success" //status da requisição
}
Em caso de erro, o padrão será o seguinte:
{
"data": [],
"status": "error",
"message": "Motivo do erro/exception"
}
Listando Veículos
Para listar os veículos cadastrados, você pode apenas fazer uma chamada à url base:
GET https://hub.alpes.one/api/v1/integrator/D7C43A9C70FF71693B87144D6ED68FF4443644C4
Um exemplo de retorno:
{
"data": [
{
"color": {
"id": 11,
"name": "Preto"
},
"status": 1,
"stamps": [
{
"name": "KM",
"photos": "http://127.0.0.1:8000/storage/app/uploads/public/5a6/f1e/09d/5a6f1e09d9ce2256890757.png"
}
],
"year_build": "2009",
"year_model": "2010",
"new": false,
"fuel": {
"id": 5,
"name": "GASOLINA_E_ALCOOL"
},
"brand": {
"id": 7,
"name": "Audi"
},
"km": "94188",
"transmission": {
"id": 3,
"name": "AUTOMATICA"
},
"version": {
"id": 74,
"name": "A1 Sportback 1.4 TFSI 5p S-tronic"
},
"id": 1234,
"model": {
"id": 79,
"name": "A1"
},
"unit": {
"id": 1,
"name": "Loja 1",
"address": "Rua XXX"
},
"photos": [
"http://127.0.0.1:8000/storage/app/uploads/public/5e9/626/c3e/5e9626c3e1fd2432510649.jpg",
"http://127.0.0.1:8000/storage/app/uploads/public/5e9/626/c4a/5e9626c4a78b8070587217.jpg",
"http://127.0.0.1:8000/storage/app/uploads/public/5e9/626/c57/5e9626c57d292387737276.jpg"
],
"board": "AAA0A00",
"doors": "4",
"price": 14990.00,
"portals": {
"AUTO_LINE": {
"plan": "1234",
"active": "1"
},
"I_CARROS": {
"plan": "priority3Qty",
"active": "1"
}
},
"published_portals": {
"project": {
"Site": {
"active": "0",
"publicado": "false"
},
"Landing Page": {
"active": "0",
"publicado": "false"
},
},
"autocerto": {
"publicado": "true",
"url": "https://showautomallbh.com.br/Veiculo/-/2523367/detalhes"
},
"olx": {
"publicado": "false",
"portal_reference": "olx"
}
},
"optionals": [
"Banco do motorista com ajuste de altura",
"Desembaçador traseiro",
"Direção hidráulica",
"Limpador traseiro",
"Travas elétricas",
"Vidros elétricos"
],
"description": ""
},
{},
{},
...
],
"total": 15,
"filters": {
"brands": [
{
"id": 7,
"name": "Audi"
},
{
"id": 8,
"name": "BMW"
}
],
"models": [
{
"id": 110,
"name": "118i"
},
{
"id": 140,
"name": "535i"
},
{
"id": 79,
"name": "A1"
},
{
"id": 81,
"name": "A3"
}
],
"versions": [
{
"id": 277,
"name": "118iA/ Urban/Sport 1.6 TB 16V 170cv 5p"
},
{
"id": 370,
"name": "535iA 3.0 24V 306cv Bi-Turbo"
},
{
"id": 74,
"name": "A1 Sportback 1.4 TFSI 5p S-tronic"
},
{
"id": 75,
"name": "A1 Sportback 1.8 TFSI 192cv 5p S-tronic"
},
{
"id": 98,
"name": "A3 Sedan 1.4 TFSI Flex Tiptronic 4p"
},
],
"years_model": [
"2003",
"2007",
"2008",
"2009",
"2010",
"2011"
],
"years_build": [
"2003",
"2007",
"2008",
"2009",
"2010",
"2011",
"2012"
],
"colors": [
{
"id": 2,
"name": "Azul"
},
{
"id": 3,
"name": "Bege"
},
{
"id": 4,
"name": "Branco"
}
],
"fuels": [
{
"id": 3,
"name": "DIESEL"
},
{
"id": 1,
"name": "GASOLINA"
},
{
"id": 5,
"name": "GASOLINA_E_ALCOOL"
}
],
"transmissions": [
{
"id": 3,
"name": "AUTOMATICA"
},
{
"id": 4,
"name": "CVT"
},
{
"id": 1,
"name": "MANUAL"
},
{
"id": 2,
"name": "SEMI_AUTOMATICA"
}
],
"doors": [
2,
4
],
"units": [
{
"id": "1",
"name": "Loja 1"
},
{
"id": "2",
"name": "Loja 2"
}
],
"km": {
"min": 0,
"max": 235000
},
"price": {
"min": 14990,
"max": 277990
}
},
"totalWithFilters": 15,
"pagination": {
"currentPage": 1,
"totalPages": 2
},
"status": "success"
}
Paginação e Ordenação
Você pode definir a paginação dos resultados da maneira que achar mais conveniente. Por padrão, são limitados a 12 itens por página. Mas você pode customizar como preferir.
Alterando a Página
Supondo que o seu estoque possua 15 veículos, por padrão, com um limite de 12 por página, você possui 2 páginas para listar.
A página atual é o segundo parâmetro da URL após a apiKey:
GET https://hub.alpes.one/api/v1/integrator/D7C43A9C70FF71693B87144D6ED68FF4443644C4/{page}
Definindo um limit
O limite pode ser definido também pela URL, logo após a página:
GET https://hub.alpes.one/api/v1/integrator/D7C43A9C70FF71693B87144D6ED68FF4443644C4/1/{limit}
A alteração do limite influencia diretamente no número de páginas totais. Portanto, sempre que mudar este valor, é necessário que na sua interface você reflita esta mudança.
Definindo uma ordenação
Você pode escolher como deseja ordenar o resultado. Para isso, informe logo após o {limit} da URL o nome do campo que deseja ordenar:
GET https://hub.alpes.one/api/v1/integrator/D7C43A9C70FF71693B87144D6ED68FF4443644C4/1/12/{order}
Você informar uma das seguintes opções para ordenação:
[
'id',
'value',
'year_model',
'year_build',
'km'
]
A direção da ordenação, por padrão, é ASC. Mas você pode mudar isso informando na URL um novo segmento logo após {order}.
Por exemplo, para listar os veículos ordenados pelo preço em ordem decrescente, use:
GET https://hub.alpes.one/api/v1/integrator/D7C43A9C70FF71693B87144D6ED68FF4443644C4/1/12/value/DESC
Os valores possíveis para a direção da ordenação, são:
[
'ASC',
'DESC'
]
Filtrando resultados
Todos os filtros são feitos via queryString na url base.
GET https://hub.alpes.one/api/v1/integrator/D7C43A9C70FF71693B87144D6ED68FF4443644C4/1/12/value/DESC?brand=1&price_max=98000
Você pode usar os seguintes itens para filtrar seu estoque:
[
'brand': int,
'model': int,
'version': int,
'year_model': int,
'year_build': int,
'year_min': int,
'year_max': int,
'value_min': double,
'value_max': double,
'color': int,
'fuel': int,
'transmission': int,
'unit': int,
'board': string,
'id': int,
'doors': int,
'km_min': int,
'km_max': int,
'query': string
]
A alteração dos filtros influencia diretamente no número de páginas totais. Portanto, sempre que mudar este valor, é necessário que na sua interface você reflita esta mudança.
Os possíveis valores para os itens estão retornados no item filters
do json de resposta da consulta.
Suporte
Em caso de dúvidas técnicas, você pode entrar em contato através do e-mail matheus.rocha@alpes.one