Anular Evento
Anular Evento
POST /cl/consent_manager/void_event
Declara inválido un evento previo (EVENT_VOIDED). No es un inicio, aceptación ni término: conserva el evento objetivo en la historia y elimina retroactivamente su efecto al reconstruir el tratamiento. Floid resuelve el tratamiento desde el evento objetivo, por lo que no se envía data_processing_id ni occurred_at (la anulación es retroactiva; sólo se registra received_at).
- URL de producción:
https://api.floid.app/cl/consent_manager/void_event - URL de sandbox:
https://sandbox.floid.app/cl/consent_manager/void_event
Headers requeridos
Authorization: Bearer {{TOKEN}}
Content-Type: application/json
Parámetros del body
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
data_processing_event_id | string (UUID) | Sí | Evento que se declara inválido (evento objetivo). |
operational_code | string | No | Código operacional de la corrección. |
metadata | object | No | Metadatos libres. |
duplicate_protection_key | string | No | Idempotencia por tenant. |
Campos prohibidos:
occurred_at,data_processing_id,activity_code,subject_external_id,subject_snapshot,business_reference,medium,expires_at,terms_and_conditions,tc_version_id,evidence. Incluir cualquiera devuelveINVALID_FIELD_FOR_EVENT_VOIDED.No se puede anular un
EVENT_VOIDED(EVENT_VOIDING_NOT_ALLOWED) ni un evento ya anulado (TARGET_EVENT_ALREADY_VOIDED).
Ejemplo
curl --location 'https://api.floid.app/cl/consent_manager/void_event' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{TOKEN}}' \
--data '{
"data_processing_event_id": "e11a22bb-33cc-44dd-55ee-66ff77aa88bb",
"operational_code": "fix-op-01"
}'Respuesta exitosa (200)
{
"code": 200,
"message": "Event voided",
"caseid": "b3f1c2a4-9e77-4c31-8a10-2f6d5e7a1b90",
"data": {
"data_processing_id": "550e8400-e29b-41d4-a716-446655440000",
"data_processing_event_id": "f9f9f9f9-1111-4222-8333-444455556666",
"event_type": "EVENT_VOIDED",
"received_at": "2026-09-21T08:00:00.000Z",
"voided_event": {
"data_processing_event_id": "e11a22bb-33cc-44dd-55ee-66ff77aa88bb",
"event_type": "CONSENT_REVOKED"
},
"impact": {
"data_processing_id": "550e8400-e29b-41d4-a716-446655440000",
"previous_status": "REVOKED",
"current_status": "ACTIVE"
},
"status": "ACTIVE",
"legal_basis": "CONSENT",
"validity": { "ends_at": "2026-09-25T13:00:00.000Z", "end_mode": "FIXED_DURATION_FROM_FACT", "ended_at": null },
"replayed": false
}
}Estructura de data
data| Campo | Tipo | Descripción |
|---|---|---|
data_processing_id | string | UUID del tratamiento afectado (resuelto desde el evento objetivo). |
data_processing_event_id | string | UUID del marcador EVENT_VOIDED creado. |
event_type | string | Siempre EVENT_VOIDED. |
received_at | string (ISO 8601) | Momento de recepción del marcador. |
voided_event | object | Evento anulado: { data_processing_event_id, event_type }. |
impact | object | Impacto de la reconstrucción: { data_processing_id, previous_status, current_status } (sólo informativo). |
status | string | Estado del tratamiento tras la reconstrucción. |
legal_basis | string | Base legal del tratamiento. |
validity | object | { ends_at, end_mode, ended_at } recalculada. |
replayed | boolean | true si el request fue una reproducción idempotente. |
Errores
| HTTP | error_code | Cuándo |
|---|---|---|
| 400 | TARGET_DATA_PROCESSING_EVENT_ID_REQUIRED | Falta data_processing_event_id. |
| 400 | INVALID_FIELD_FOR_EVENT_VOIDED | Se enviaron campos prohibidos. |
| 404 | TARGET_DATA_PROCESSING_EVENT_NOT_FOUND | El evento objetivo no existe o no es accesible. |
| 409 | EVENT_VOIDING_NOT_ALLOWED | El objetivo es un EVENT_VOIDED (no hay cadenas de anulación). |
| 409 | TARGET_EVENT_ALREADY_VOIDED | El evento objetivo ya estaba anulado. |
| 500 | INTERNAL_ERROR | Error inesperado del servidor. |
Updated about 10 hours ago
