Crear vehículo
POST/vehicles/
Propósito
Registra un nuevo vehículo en la flota del transportista autenticado.
Objetivo
Permitir que los transportistas añadan vehículos a su flota para poder asignarlos a eCMRs de transporte.
Casos de uso
- Dar de alta un nuevo vehículo con su matrícula y tipo.
- Subir la foto del vehículo y el documento ITV al registrarlo.
- Registrar un vehículo refrigerado con temperatura de carga.
Flujo de creación
flowchart TD
A[Recibir POST /vehicles/] --> B{¿Empresa encontrada?}
B -->|No| C[404 COMPANY_NOT_FOUND]
B -->|Sí| D[Parsear cargo_type como JSON]
D --> E[Crear vehículo con Vehicle.createData]
E --> F{¿Se enviaron archivos?}
F -->|Sí| G[Asignar keys S3 a image/itv]
F -->|No| H[Sin archivos]
G --> I[Guardar vehículo en BD]
H --> I
I --> J[Añadir a company.vehicles]
J --> K[200 OK - Vehículo creado]
Detalles técnicos
- Acepta
multipart/form-datacon archivos opcionalesimageeitv. - Los archivos se suben a S3 mediante
multerS3.any(). - El campo
cargo_typese envía como JSON string en el form-data, debe ser un array JSON válido (ejemplo:["back"]). - El vehículo se añade al array
company.vehiclesde la empresa. - URL OpenAPI:
/vehicles/(alta de vehículo).
Autenticación
Requiere JWT Bearer token o API Key.
Request
Responses
- 200
- 400
- 401
- 404
Vehículo creado y añadido a la flota de la empresa
Response Headers
Error de validación de payload o error al guardar el vehículo
Response Headers
Token JWT o API Key ausente, expirado o inválido
Response Headers
No se encontró la compañía asociada al usuario autenticado