Pular para o conteúdo principal

Modelos

Consulte os modelos de veículos disponíveis no sistema.

Endpoint

GET /catalog/model
GET /catalog/model/{id}

Método

GET

Autenticação

Este endpoint requer autenticação via JWT. Inclua o token no header:

Authorization: Bearer {access_token}

Exemplo de Resposta

Lista de Modelos

Status Code: 200 OK

[
{
"id": 1,
"name": "Onix"
},
{
"id": 2,
"name": "Cruze"
},
{
"id": 3,
"name": "Tracker"
},
{
"id": 4,
"name": "Spin"
}
]

Detalhe de um Modelo

Status Code: 200 OK

{
"id": 1,
"name": "Onix"
}

Estrutura de Dados

A resposta é um array de objetos (lista) ou um objeto único (detalhe), onde cada objeto contém:

CampoTipoDescrição
idintegerIdentificador único do modelo
namestringNome do modelo de veículo

Filtros

Este endpoint suporta os seguintes filtros através de query parameters:

ParâmetroTipoDescrição
brandintegerFiltra modelos por fabricante (ID do fabricante)
in_productionbooleanFiltra modelos que estão em produção

Exemplos de Uso de Filtros

Filtrar por fabricante:

GET /catalog/model?brand=1

Filtrar por fabricante e produção:

GET /catalog/model?brand=1&in_production=true

Filtrar apenas por produção:

GET /catalog/model?in_production=true

Ordenação

Os resultados são ordenados alfabeticamente pelo nome do modelo.

Possíveis Retornos de Erro

401 Unauthorized

Retornado quando o token de autenticação não foi fornecido ou é inválido.

{
"detail": "As credenciais de autenticação não foram fornecidas."
}

ou

{
"detail": "Token inválido ou expirado."
}

403 Forbidden

Retornado quando o usuário autenticado não tem permissão para acessar este recurso.

{
"detail": "Você não tem permissão para executar essa ação."
}

404 Not Found

Retornado quando um modelo específico não é encontrado (ao acessar /catalog/model/{id}).

{
"detail": "Não encontrado."
}

405 Method Not Allowed

Retornado quando um método HTTP não permitido é utilizado (ex: DELETE, POST, PUT, PATCH).

{
"detail": "Método \"DELETE\" não é permitido."
}