/v1/consentsConsent ledger of a contact
Newest first; includes suppressions.
Access: API key with contacts:read, or a member session. Permission contacts.view.
Parameters
contact_idqueryrequired- Id
Opaque record id.
cursorquery- string
Opaque cursor from the previous page (`meta.next_cursor`).
limitquery- integer
Page size, 1–200.
Response · 200
datarequired- array of Consent
metarequired- PageMeta
curl -X GET 'https://api.propzolo.com/v1/consents' \
-H 'Authorization: Bearer pz_live_…'{
"data": [
{
"id": "cmusrceel0000q7kaafxqi1om",
"contact_id": "cmusrceel0000q7kaafxqi1om",
"phone_e164": "string",
"email": "string",
"channel": "string",
"purpose": "string",
"status": "string",
"basis": "string",
"source": "string",
"proof_ref": "string",
"evidence": {},
"dlt_consent_ref": "string",
"expires_at": "2026-10-06T05:30:00.000Z",
"withdrawn_at": "2026-10-06T05:30:00.000Z",
"captured_at": "2026-10-06T05:30:00.000Z"
}
],
"meta": {
"next_cursor": "string",
"has_more": true
}
}Errors
401No valid session or API key (missing, expired or revoked).403The caller lacks the permission, API-key scope or support grant this operation needs.422Invalid input; `error.fields` maps field paths to messages.429Too many requests; retry after the Retry-After header.500Unexpected error; quote `error.request_id` to support.

