Saltar al contenido principal

Actualizar dirección específica

PUT 

/address/:id

Actualiza una dirección existente identificada por su ID. Permite modificar todos los campos excepto el ID.

Flujo de actualización:

  1. Validación de permisos (admin/editor)
  2. Verificación de que la dirección pertenece a la compañía del usuario
  3. Si isDefault=true:
    • Desmarca la dirección principal actual
    • Establece esta dirección como nueva principal
  4. Actualización de datos en base de datos

Campos actualizables:

  • name: Nuevo nombre descriptivo
  • company_name: Razón social en la dirección
  • phone: Teléfono de contacto
  • addressGoogleMaps: Datos geográficos completos
  • isDefault: Bandera de dirección principal

Ejemplo de solicitud:

PUT /company/address/507f1f77bcf86cd799439011
{
"name": "Oficina Central Actualizada",
"company_name": "CargoOffer SL",
"phone": "+34987654321",
"addressGoogleMaps": {
"formattedAddress": "Avenida Principal, 456, 28080 Madrid, España",
"geometry": {
"location": {
"lat": 40.456789,
"lng": -3.654321
}
}
},
"isDefault": true
}

Ejemplo de respuesta exitosa:

{
"_id": "507f1f77bcf86cd799439011",
"name": "Oficina Central Actualizada",
"company_name": "CargoOffer SL",
"phone": "+34987654321",
"street": "Avenida Principal, 456",
"city": "Madrid",
"zipcode": "28080",
"country": "ES",
"location": {
"type": "Point",
"coordinates": [-3.654321, 40.456789]
},
"isDefault": true,
"can_be_deleted": false
}

Casos de error comunes:

  • 400: Datos de entrada inválidos o incompletos
  • 401: Token JWT inválido o faltante
  • 403: Usuario sin permisos suficientes
  • 404: Dirección no encontrada o no pertenece a la compañía

Notas importantes:

  • Requiere autenticación JWT válida
  • Los cambios en addressGoogleMaps disparan geocodificación inversa
  • Actualizar isDefault=true afecta a otras direcciones

Request

Responses

Dirección actualizada correctamente