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:
- Validación de permisos (admin/editor)
- Verificación de que la dirección pertenece a la compañía del usuario
- Si isDefault=true:
- Desmarca la dirección principal actual
- Establece esta dirección como nueva principal
- 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
- 200
- 400
- 401
- 403
- 404
Dirección actualizada correctamente
Datos de entrada inválidos
No autorizado (token JWT inválido o faltante)
No tiene permisos para esta operación
Dirección no encontrada