/v1/approvalsApproval requests for me
Requests the caller may decide — named, through their role, or through a permission they hold. `view`: pending (default), decided, all. Newest first; keyset pagination.
Access: Signed-in members only (web or Android session) — not for API keys.
Parameters
cursorquery- string
Opaque cursor from the previous page (`meta.next_cursor`).
limitquery- integer
Page size, 1–200.
viewquery- "pending" | "decided" | "all"
Response · 200
datarequired- array of ApprovalRequest
metarequired- PageMeta
curl -X GET 'https://api.propzolo.com/v1/approvals' \
-H 'Authorization: Bearer pz_live_…'{
"data": [
{
"id": "cmusrceel0000q7kaafxqi1om",
"kind": "string",
"status": "pending",
"title": "string",
"details": "string",
"text": "string",
"edited_text": "string",
"allow_edit": true,
"entity": {
"type": "string",
"id": "cmusrceel0000q7kaafxqi1om"
},
"lead": {
"id": "cmusrceel0000q7kaafxqi1om",
"ref": "string",
"name": "string"
},
"workflow": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
},
"approvers": {
"permission": "string",
"role_keys": [
"string"
],
"member_ids": [
"cmusrceel0000q7kaafxqi1om"
]
},
"due_at": "2026-10-06T05:30:00.000Z",
"overdue": true,
"decided_by": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
},
"decided_at": "2026-10-06T05:30:00.000Z",
"decision_note": "string",
"decision_channel": "string",
"created_at": "2026-10-06T05:30:00.000Z",
"can_decide": true,
"chain": {
"id": "cmusrceel0000q7kaafxqi1om",
"kind": "string",
"kind_label": "string",
"status": "pending",
"title": "string",
"reason": "string",
"summary": [
{
"label": "string",
"value": "string"
}
],
"level": 0,
"levels": [
{
"level": 0,
"name": "string",
"status": "string",
"decided_by": {
"id": null,
"name": null
},
"decided_at": "2026-10-06T05:30:00.000Z",
"decision_note": "string",
"channel": "string",
"hold_reason": "string",
"escalated": true,
"due_at": "2026-10-06T05:30:00.000Z"
}
],
"requested_by": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
},
"request_note": "string",
"action_status": "waiting",
"action_error": "string",
"applied_at": "2026-10-06T05:30:00.000Z",
"entity": {
"type": "string",
"id": "cmusrceel0000q7kaafxqi1om"
},
"lead": {
"id": "cmusrceel0000q7kaafxqi1om",
"ref": "string",
"name": "string"
},
"created_at": "2026-10-06T05:30:00.000Z",
"decided_at": "2026-10-06T05:30:00.000Z",
"can_cancel": true
},
"level": 0,
"hold": {
"reason": "string",
"at": "2026-10-06T05:30:00.000Z",
"by": {
"id": "cmusrceel0000q7kaafxqi1om",
"name": "string"
}
},
"escalated": true,
"history": [
{
"at": "string",
"kind": "string",
"by": "string",
"note": "string",
"channel": "string"
}
]
}
],
"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.

