Veículos (Vehicles)
Criar, listar, atualizar e gerenciar veículos do inventário via API.
Veículos (Vehicles)
Gerencie o inventário de veículos da sua loja ou shopping automotivo. Veículos são o core do Ecosys Auto — representam carros, motos, caminhões e qualquer veículo disponível para venda.
GET /api/v1/vehicles
Lista todos os veículos do time.
Query Parameters
| Parâmetro | Tipo | Padrão | Descrição |
|---|---|---|---|
page | number | 1 | Página atual |
limit | number | 20 | Itens por página (máx: 100) |
status | string | - | Filtrar por status |
phase | string | - | Filtrar por fase do kanban |
priority | string | - | Filtrar por prioridade: alta, media, baixa |
brand | string | - | Filtrar por marca (busca parcial) |
client_id | string | - | Filtrar por cliente (proprietário/consignante) |
responsible_id | string | - | Filtrar por responsável |
store_id | string | - | Filtrar por loja |
from | string | - | Data de criação inicial (YYYY-MM-DD) |
to | string | - | Data de criação final (YYYY-MM-DD) |
sort | string | -created_at | Ordenação (prefixo - para descendente) |
search | string | - | Buscar por título, marca, modelo ou placa |
Request
curl -X GET "https://dashboard.ecosysauto.ai/api/v1/vehicles?status=ativo&brand=Honda" \
-H "Authorization: Bearer ea_live_sua_chave_aqui"Response
{
"success": true,
"data": [
{
"id": "uuid-do-veiculo",
"title": "Honda Civic EXL 2.0 2024",
"brand": "Honda",
"model": "Civic",
"version": "EXL 2.0 Flex",
"year_model": 2024,
"year_manufacture": 2023,
"phase": "em-vitrine",
"priority": "alta",
"status": "ativo",
"price": 142900.00,
"purchase_price": 125000.00,
"fipe_price": 148000.00,
"fipe_code": "001004-9",
"mileage": 18500,
"color": "Preto",
"fuel": "flex",
"transmission": "automatico",
"plate": "ABC1D23",
"chassis_number": null,
"renavam": null,
"doors": 4,
"engine": "2.0",
"body_type": "sedan",
"features": null,
"description": "Veículo em excelente estado.",
"tags": ["destaque", "seminovo-premium"],
"store_id": "uuid-da-loja",
"client_id": "uuid-do-cliente",
"client": {
"id": "uuid-do-cliente",
"name": "João da Silva"
},
"entry_date": "2026-01-15",
"days_in_inventory": 20,
"is_published": false,
"thumbnail_url": null,
"created_at": "2026-01-15T10:30:00Z",
"updated_at": "2026-02-04T14:20:00Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 45,
"pages": 3
}
}POST /api/v1/vehicles
Cadastra um novo veículo.
store_id obrigatório
Você precisa informar o store_id da loja onde o veículo será cadastrado. O ID da loja pode ser obtido nas Configurações → Lojas do painel.
Request Body
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
title | string | Sim | Título do anúncio do veículo |
store_id | string | Sim | ID da loja onde o veículo será cadastrado |
brand | string | Não | Marca (Honda, Toyota, VW, etc.) |
model | string | Não | Modelo (Civic, Corolla, Gol, etc.) |
version | string | Não | Versão/acabamento |
year_model | number | Não | Ano modelo |
year_manufacture | number | Não | Ano fabricação |
price | number | Não | Preço de venda |
purchase_price | number | Não | Preço de compra |
fipe_price | number | Não | Valor FIPE de referência |
fipe_code | string | Não | Código FIPE |
mileage | number | Não | Quilometragem |
color | string | Não | Cor do veículo |
fuel | string | Não | Combustível: flex, gasolina, etanol, diesel, eletrico, hibrido |
transmission | string | Não | Câmbio: automatico, manual, cvt, automatizado |
plate | string | Não | Placa do veículo |
chassis_number | string | Não | Número do chassi |
renavam | string | Não | RENAVAM |
doors | number | Não | Número de portas |
engine | string | Não | Motor (ex: "2.0", "1.6 Turbo") |
body_type | string | Não | Carroceria: sedan, hatch, suv, pickup, van, coupe, wagon |
phase | string | Não | Fase inicial no kanban (padrão: "entrada") |
priority | string | Não | Prioridade: alta, media, baixa (padrão: media) |
client_id | string | Não | ID do cliente (proprietário/consignante) |
responsible_id | string | Não | ID do usuário responsável |
description | string | Não | Descrição detalhada do veículo |
tags | array | Não | Array de tags/etiquetas |
entry_date | string | Não | Data de entrada no estoque (YYYY-MM-DD, padrão: hoje) |
Request
curl -X POST https://dashboard.ecosysauto.ai/api/v1/vehicles \
-H "Authorization: Bearer ea_live_sua_chave_aqui" \
-H "Content-Type: application/json" \
-d '{
"title": "Honda Civic EXL 2.0 2024",
"store_id": "uuid-da-loja",
"brand": "Honda",
"model": "Civic",
"version": "EXL 2.0 Flex",
"year_model": 2024,
"year_manufacture": 2023,
"price": 142900.00,
"purchase_price": 125000.00,
"mileage": 18500,
"color": "Preto",
"fuel": "flex",
"transmission": "automatico",
"plate": "ABC1D23",
"doors": 4,
"phase": "entrada",
"priority": "alta",
"client_id": "uuid-do-cliente",
"description": "Veículo em excelente estado, único dono, todas as revisões na concessionária.",
"tags": ["destaque", "seminovo-premium"]
}'Response (201 Created)
{
"success": true,
"data": {
"id": "uuid-do-veiculo",
"title": "Honda Civic EXL 2.0 2024",
"brand": "Honda",
"model": "Civic",
"version": "EXL 2.0 Flex",
"year_model": 2024,
"year_manufacture": 2023,
"price": 142900.00,
"purchase_price": 125000.00,
"mileage": 18500,
"color": "Preto",
"fuel": "flex",
"transmission": "automatico",
"plate": "ABC1D23",
"phase": "entrada",
"priority": "alta",
"status": "ativo",
"description": "Veículo em excelente estado, único dono, todas as revisões na concessionária.",
"tags": ["destaque", "seminovo-premium"],
"store_id": "uuid-da-loja",
"client_id": "uuid-do-cliente",
"client": {
"id": "uuid-do-cliente",
"name": "João da Silva"
},
"entry_date": "2026-02-04",
"days_in_inventory": 0,
"is_published": false,
"thumbnail_url": null,
"created_at": "2026-02-04T10:30:00Z",
"updated_at": "2026-02-04T10:30:00Z"
}
}GET /api/v1/vehicles/:id
Busca um veículo específico por ID.
Request
curl -X GET https://dashboard.ecosysauto.ai/api/v1/vehicles/uuid-do-veiculo \
-H "Authorization: Bearer ea_live_sua_chave_aqui"Response
{
"success": true,
"data": {
"id": "uuid-do-veiculo",
"title": "Honda Civic EXL 2.0 2024",
"brand": "Honda",
"model": "Civic",
"version": "EXL 2.0 Flex",
"year_model": 2024,
"year_manufacture": 2023,
"price": 142900.00,
"purchase_price": 125000.00,
"fipe_price": 148000.00,
"fipe_code": "001004-9",
"mileage": 18500,
"color": "Preto",
"fuel": "flex",
"transmission": "automatico",
"plate": "ABC1D23",
"chassis_number": null,
"renavam": null,
"doors": 4,
"engine": "2.0",
"body_type": "sedan",
"features": null,
"description": "Veículo em excelente estado, único dono...",
"tags": ["destaque", "seminovo-premium"],
"phase": "em-vitrine",
"priority": "alta",
"status": "ativo",
"store_id": "uuid-da-loja",
"client_id": "uuid-do-cliente",
"client": {
"id": "uuid-do-cliente",
"name": "João da Silva"
},
"entry_date": "2026-01-15",
"days_in_inventory": 20,
"is_published": false,
"thumbnail_url": null,
"photos": null,
"listing_photos": null,
"listing_description": null,
"created_at": "2026-01-15T10:30:00Z",
"updated_at": "2026-02-04T14:20:00Z"
}
}PUT /api/v1/vehicles/:id
Atualiza um veículo existente. Todos os campos são opcionais — envie apenas o que deseja alterar.
Request Body
| Campo | Tipo | Descrição |
|---|---|---|
title | string | Título do anúncio |
brand | string | Marca |
model | string | Modelo |
version | string | Versão/acabamento |
year_model | number | Ano modelo |
year_manufacture | number | Ano fabricação |
price | number | Preço de venda |
purchase_price | number | Preço de compra |
fipe_price | number | Valor FIPE |
fipe_code | string | Código FIPE |
mileage | number | Quilometragem |
color | string | Cor |
fuel | string | Combustível |
transmission | string | Câmbio |
plate | string | Placa |
chassis_number | string | Chassi |
renavam | string | RENAVAM |
doors | number | Número de portas |
engine | string | Motor |
body_type | string | Carroceria |
phase | string | Fase no kanban |
priority | string | Prioridade: alta, media, baixa |
status | string | Status do veículo |
client_id | string | ID do cliente |
responsible_id | string | ID do responsável |
description | string | Descrição |
tags | array | Tags/etiquetas |
store_id | string | ID da loja |
Request
curl -X PUT https://dashboard.ecosysauto.ai/api/v1/vehicles/uuid-do-veiculo \
-H "Authorization: Bearer ea_live_sua_chave_aqui" \
-H "Content-Type: application/json" \
-d '{
"phase": "em-vitrine",
"priority": "media",
"price": 139900.00,
"tags": ["destaque", "seminovo-premium", "preco-reduzido"]
}'Response
{
"success": true,
"data": {
"id": "uuid-do-veiculo",
"title": "Honda Civic EXL 2.0 2024",
"phase": "em-vitrine",
"priority": "media",
"price": 139900.00,
"tags": ["destaque", "seminovo-premium", "preco-reduzido"],
"updated_at": "2026-02-04T15:00:00Z"
}
}DELETE /api/v1/vehicles/:id
Arquiva um veículo do inventário (soft delete — define status como "arquivado").
Esta operação não exclui permanentemente o veículo. Para reativá-lo, use PUT /api/v1/vehicles/:id com {"status": "ativo"}.
Request
curl -X DELETE https://dashboard.ecosysauto.ai/api/v1/vehicles/uuid-do-veiculo \
-H "Authorization: Bearer ea_live_sua_chave_aqui"Response
{
"success": true,
"data": {
"id": "uuid-do-veiculo",
"status": "arquivado",
"removed_at": "2026-02-04T15:30:00Z"
}
}Campos Calculados na Resposta
| Campo | Descrição |
|---|---|
days_in_inventory | Dias desde entry_date até hoje |
is_published | Se o veículo está publicado no portal |
thumbnail_url | URL da foto principal |
listing_photos | Fotos para publicação no portal |
listing_description | Descrição gerada por IA para o portal |
Erros Comuns
| Código | Erro | Solução |
|---|---|---|
400 | Campo 'title' é obrigatório | Inclua o campo title no body |
400 | Campo 'store_id' é obrigatório | Inclua o store_id da loja |
400 | Store não encontrada ou não pertence ao time | Verifique se o store_id pertence ao seu time |
400 | Prioridade inválida | Use: alta, media ou baixa |
400 | Nenhum campo para atualizar | Envie ao menos um campo no body do PUT |
404 | Veículo não encontrado | Verifique o ID do veículo |
422 | Placa já cadastrada | Placa do veículo já existe no time |