Pular para o conteúdo principal

Crear nueva dirección

POST 

/address/

Crea una nueva dirección asociada a la compañía del usuario autenticado. Este endpoint permite registrar ubicaciones físicas como almacenes, oficinas o puntos de carga/descarga.

Flujo de operación:

  1. Autenticación mediante JWT válido
  2. Validación de campos obligatorios y formatos
  3. Procesamiento de datos de Google Maps (geocodificación inversa)
  4. Si isDefault=true, desmarca cualquier dirección principal existente
  5. Persistencia en base de datos
  6. Retorno de la dirección creada con su ID

Validaciones importantes:

  • Requiere token JWT válido con permisos de administrador/editor
  • Campo 'name' obligatorio (3-100 caracteres)
  • Datos de Google Maps deben incluir:
    • formattedAddress: Dirección completa formateada
    • geometry.location: Coordenadas {lat, lng}
  • Si isDefault=true, desmarca cualquier dirección principal existente

Casos de uso típicos:

  • Registrar nueva sede de la compañía
  • Añadir almacén logístico
  • Crear punto de recogida para envíos

Ejemplo de solicitud:

POST /company/address
Authorization: Bearer {token}
Content-Type: application/json

{
"name": "Almacén Logístico",
"company_name": "CargoOffer SL",
"phone": "+34912345678",
"addressGoogleMaps": {
"formattedAddress": "Calle de la Logística, 123, 28045 Madrid, España",
"geometry": {
"location": {
"lat": 40.123456,
"lng": -3.987654
}
}
},
"isDefault": false
}

Ejemplo de respuesta exitosa:

{
"_id": "507f1f77bcf86cd799439011",
"name": "Almacén Logístico",
"company_name": "CargoOffer SL",
"phone": "+34912345678",
"street": "Calle de la Logística, 123",
"city": "Madrid",
"zipcode": "28045",
"country": "ES",
"location": {
"type": "Point",
"coordinates": [-3.987654, 40.123456]
},
"isDefault": false,
"can_be_deleted": true
}

Errores comunes:

  • 400 Bad Request: Datos faltantes o inválidos
  • 401 Unauthorized: Token JWT inválido o faltante
  • 403 Forbidden: Permisos insuficientes
  • 404 Not Found: Compañía no encontrada

Request

Responses

Successful operation