Crear una importación de consentimientos previos
Crear una importación de consentimientos previos
POST/consent_imports
Permisos requeridos
Dashboard: necesitas al menos uno de estos permisos.
consent.dashboard.writeconsent.dashboard.manage
API Keys: necesitas al menos uno de estos permisos.
consent_commits.api.writeconsent_commits.api.manageconsent.api.writeconsent.api.manage
Carga un lote de consentimientos históricos en el esquema canónico. El procesamiento es asíncrono:
la respuesta retorna el estado inicial (pending) y un identificador para consultar su progreso vía
GET /consent_imports/{id}. Cada registro válido genera un consentimiento marcado como imported,
anclado a la fecha original de captura (origin_event.occurred_at). La idempotencia se garantiza por
origin_event.system + origin_event.event_id; reintentar el mismo lote no duplica registros.
Por defecto, los eventos generados por el backfill no activan webhooks ni workflows; usa
broadcast_events=true sólo si quieres reproducirlos hacia consumidores externos.
Acepta JSON inline (consents) o un archivo (multipart/form-data) en formato CSV o NDJSON.
Validación síncrona del envelope: antes de encolar el lote, la API comprueba que consents
sea un array no vacío dentro del límite permitido y que el body JSON o archivo sea parseable.
Estas fallas responden 422.
Validación asíncrona por registro: el job valida cada registro y guarda los rechazos en
record_results con status=rejected. Omitir channel o enviarlo en blanco es válido; solo un
valor no vacío fuera del enum produce un rechazo asíncrono. También se validan el template,
origin_event y la resolución del subject durante esta etapa.
Prueba este endpoint
Responses
- 202
- 401
- 403
- 422
Importación encolada
Error de autenticación
Módulo no habilitado para la cuenta
Error de validación síncrona del envelope. Cubre:
consentsausente o con un valor que no sea un array.consentsvacío o sobre el límite máximo de registros.- Un body JSON o archivo CSV/NDJSON que no se puede parsear.
Las validaciones de cada registro se informan después en
record_results; no producen esta respuesta.