Propósito
Revoca lógicamente un consentimiento existente dentro de la organización y devuelve el recurso actualizado. La fila no se elimina; el retiro queda en el registro de evidencia con su propio recibo. Requiere el permiso consents:write.
Método y ruta
DELETE /api/v1/organizations/:organization/consents/:consent
:organization: identificador Hub o UUID de la organización de la credencial.:consent:idnumérico del consentimiento.
No se envía body.
curl
curl --fail-with-body \
-X DELETE \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json' \
"$BASE_URL/api/v1/organizations/$ORGANIZATION/consents/91"
Respuesta 200
{
"id": 91,
"subjectType": "email",
"subjectValue": "ada@example.com",
"channel": "email",
"given": false,
"source": "api",
"activePurposes": [],
"consentedAt": "2026-08-23T04:05:00.000+00:00",
"revokedAt": "2026-08-23T05:00:00.000+00:00",
"updatedAt": "2026-08-23T05:00:00.000+00:00"
}
Errores relevantes
401: credencial ausente o inválida.403: la credencial no tieneconsents:write.404: el ID no existe, pertenece a otro tenant o:organizationno es el de la credencial.
Semántica y límites
- La operación cambia
givenafalse, asignarevokedAty agrega el titular a la lista de supresiones vigentes. consentedAtconserva la fecha del consentimiento previo.- Si el consentimiento ya estaba revocado, no se realiza una segunda escritura y se devuelve el recurso existente.
- La respuesta es
200, no204. DELETEno elimina la fila ni borra el identificador normalizado.
Los IDs y fechas son ilustrativos; método, código de estado y campos corresponden al contrato publicado.