Propósito
Obtiene los consentimientos de contacto de una organización, ordenados por updatedAt DESC y luego por id DESC. Requiere el permiso consents:read.
Método y ruta
GET /api/v1/organizations/:organization/consents
Query string
| Campo | Tipo | Obligatorio | Reglas |
|---|---|---|---|
channel |
enum | No | email, whatsapp |
given |
boolean | No | true o false |
search |
string | No | Trim, máximo 512; búsqueda parcial sin distinguir mayúsculas sobre el identificador normalizado. |
page |
number | No | Mínimo 1; valor por defecto 1. |
perPage |
number | No | Entre 1 y 100; valor por defecto 20. |
curl
curl --fail-with-body \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json' \
"$BASE_URL/api/v1/organizations/$ORGANIZATION/consents?channel=email&given=true&search=ada&page=1&perPage=20"
Respuesta 200
{
"data": [
{
"id": 91,
"subjectType": "email",
"subjectValue": "ada@example.com",
"channel": "email",
"given": true,
"source": "api",
"activePurposes": ["Enviar comunicaciones comerciales"],
"consentedAt": "2026-08-23T04:05:00.000+00:00",
"revokedAt": null,
"updatedAt": "2026-08-23T04:05:00.000+00:00"
}
],
"metadata": {
"total": 1,
"per_page": 20,
"current_page": 1,
"last_page": 1,
"first_page": 1,
"first_page_url": "/?page=1",
"last_page_url": "/?page=1",
"next_page_url": null,
"previous_page_url": null
}
}
Errores relevantes
401: credencial ausente o inválida.403: la credencial no tieneconsents:read.404::organizationno es la organización de la credencial.422: filtro o paginación inválida.
Semántica y límites
- El recurso incluye
subjectValuenormalizado. No asumas que toda la API oculta identificadores. sourcepuede serform,manual,import,apioshopify, según por dónde entró la decisión.activePurposeslista las finalidades con consentimiento vigente para ese titular y canal.ides numérico y se usa en la ruta de revocación.- Solo existen los canales
emailywhatsapp.
Los IDs y fechas son ilustrativos; la estructura corresponde al contrato publicado.