Cambiar Estado de Persona
CAMBIAR ESTADO DE PERSONA
Sección titulada «CAMBIAR ESTADO DE PERSONA»CABECERA
Sección titulada «CABECERA»Endpoint para cambiar el estado (activo/inactivo) de una persona en el sistema TitanicSoft. Permite activar o suspender personas (Cliente, Proveedor o Personal) sin eliminarlas de la base de datos.
Endpoint: /api/persona/estado
- PUT - Para cambiar el estado de la persona (activo o inactivo)
JSON de Ejemplo (Payload)
Sección titulada «JSON de Ejemplo (Payload)»{ "fl_proveedor": 0, "fl_personal": 1, "fl_cliente": 1, "cliente_synergy_id": "1234", "activo": 1}Validaciones Detalladas
Sección titulada «Validaciones Detalladas»| Atributo | Valor Esperado | Tipo de dato | Requisito | Longitud |
|---|---|---|---|---|
| fl_proveedor | 0 = no es proveedor 1 = es proveedor | Integer | obligatorio | 1 exacto |
| fl_personal | 0 = no es personal 1 = es personal | Integer | obligatorio | 1 exacto |
| fl_cliente | 0 = no es cliente 1 = es cliente | Integer | obligatorio | 1 exacto |
| cliente_synergy_id | Identificador único de la persona en Synergy | String | obligatorio | 1 hasta 30 |
| activo | 0 = Inactivo/Suspendido 1 = Activo | Integer | obligatorio | 1 exacto |
Nota:
- Al menos uno de los flags (fl_cliente, fl_proveedor, fl_personal) debe ser 1.
- El campo
activotambién acepta valores booleanos (true/false) y strings ("true"/"false","0"/"1") que se normalizan automáticamente.
RESPUESTA EXITOSA
Sección titulada «RESPUESTA EXITOSA»Código HTTP 201
Sección titulada «Código HTTP 201»{ "codigo_http": 201, "estado": "Actualizado", "titanic_id": 123, "mensaje": "La persona se actualizo correctamente"}POSIBLES ERRORES DE VALIDACIÓN
Sección titulada «POSIBLES ERRORES DE VALIDACIÓN»1. Método HTTP No Permitido - Código 405
Sección titulada «1. Método HTTP No Permitido - Código 405»Escenario: Se utiliza un método diferente a PUT
{ "codigo_http": 405, "estado": "method_not_allowed", "mensaje": "Método no permitido"}2. Error de Validación de Campos - Código 400
Sección titulada «2. Error de Validación de Campos - Código 400»Escenario: Los datos enviados no cumplen con las reglas de validación
Ejemplo 1: Campo requerido faltante
{ "codigo_http": 400, "estado": "validation_error", "mensaje": "Error en la validación", "detalles": { "cliente_synergy_id": "El campo cliente_synergy_id es requerido", "activo": "El campo activo es requerido" }}Ejemplo 2: Valor de ‘activo’ inválido
{ "codigo_http": 400, "estado": "validation_error", "mensaje": "Error en la validación", "detalles": { "activo": "El campo activo debe ser 0 o 1" }}3. Al Menos Un Flag Debe Ser 1 - Código 400
Sección titulada «3. Al Menos Un Flag Debe Ser 1 - Código 400»Escenario: Todos los flags (fl_cliente, fl_proveedor, fl_personal) son 0
{ "codigo_http": 400, "estado": "validation_error", "mensaje": "Al menos uno de los flags (fl_cliente, fl_proveedor, fl_personal) debe ser 1"}4. Persona No Encontrada - Código 404
Sección titulada «4. Persona No Encontrada - Código 404»Escenario: No se encontró la persona con el cliente_synergy_id proporcionado
{ "codigo_http": 404, "estado": "not_found", "mensaje": "Persona no encontrada con el cliente_synergy_id proporcionado"}