Playground

Playground

ApprovalRequest

/api/v1/approvals/requests

A request requiring approvals.

listgetcreatesubmitcancel

Schema

FieldTypeNotes
id*uuidServer-assigned ULID with type prefix (e.g. per_…).
tenant_id*stringTenant scope — auto-stamped from the caller's JWT.
app_idstringApp scope. Stamped ONLY when the caller's JWT was minted for a specific Application (integration API keys). Absent for human-user sessions. Filters reads when present.
created_at*date-timeServer stamp.
updated_at*date-timeServer stamp; updated on every patch.
created_byuuidPerson id from the caller's JWT (sub).
updated_byuuidPerson id from the last writer's JWT (sub).
sourcestringProvenance tag — defaults to 'edm'.
source_typeenumfrontend | backend | server | system | apiWhere the write originated. Defaults to 'api'.
is_deletedbooleanSoft-delete flag. Excluded from default list queries.
deleted_atdate-timeStamped when soft-deleted; null otherwise.
deleted_byuuidPerson id who soft-deleted; null otherwise.
schema_versionnumberDocument schema version. Bumped on incompatible writes.
entity_typestringEDM entity type being approved (e.g. 'Expense', 'LeaveRequest', 'Contract', 'PurchaseOrder').
entity_iduuidUUID of the specific entity instance awaiting approval.
requested_by_iduuidUUID of the Person who initiated this approval request.
titlestringHuman-readable title summarising what is being approved.
descriptionstringOptional longer description or justification for the approval request.
statusstringOverall status of the approval request.
current_step_indexnumberZero-based index of the currently active approval step.
total_stepsnumberTotal number of approval steps required before the request is fully approved.
due_atdate-timeISO 8601 deadline by which the approval must be completed. Null if no deadline applies.
completed_atdate-timeISO 8601 timestamp when the approval reached a terminal state (approved, rejected, cancelled, or expired). Null while still pending.
requester_iduuidUser who initiated this approval request.
tagsjsonFree-form tags categorising the request (e.g. ['leave', 'q2']).

API

client.approvals.requests.*
Loading manifest…