Skip to main content

Crear nueva dirección

POST 

/addresses/

Propósito

Crea una nueva dirección y la asocia a la empresa del usuario autenticado (empresa o transportista).

Objetivo

Permitir que empresas y transportistas registren puntos de carga y descarga que luego podrán usar como origen o destino en sus eCMRs.

Casos de uso

  • Registrar una nueva nave de almacenaje como dirección de recogida.
  • Añadir una dirección de cliente frecuente para entregas.
  • Configurar la dirección por defecto de facturación de la empresa.

Flujo de validación

flowchart TD
A[Recibir petición] --> B{¿Usuario autenticado?}
B -->|No| C[401 Unauthorized]
B -->|Sí| D{¿Tipo de cuenta válido?}
D -->|No| E[404 USER_TYPE_NOT_FOUND]
D -->|Sí| F{¿Se envía addressGoogleMaps?}
F -->|Sí| G[Parsear address_components y geometry]
F -->|No| H[Usar solo name y company_name]
G --> I[Crear documento Address]
H --> I
I --> J{¿isDefault = true?}
J -->|Sí| K[Actualizar address_default de la empresa]
J -->|No| L[No modificar address_default]
K --> M[200 OK - Dirección creada]
L --> M

Detalles técnicos

Si se envía addressGoogleMaps, el servidor extrae automáticamente: calle (route), número (street_number), ciudad (locality), código postal (postal_code), provincia (administrative_area_level_2), país (country), coordenadas GeoJSON y placeId a partir de los address_components y geometry de Google Places.

Campos obligatorios: name, company_name. Campos opcionales: phone, addressGoogleMaps, isDefault.

Autenticación

Soporta JWT Bearer token y API Key.

Request

Responses

Dirección creada correctamente. Devuelve el documento persistido con los campos derivados de la geocodificación

Response Headers