API reference

Approvals

Tasks that wait for a person's decision: list the gates waiting for you, approve or reject one.

GET/v1/ci/approvals

List pending approvals

The approval gates waiting for a decision.

Permission: ci:jobs.read

Parameters

NameTypeRequiredDescription
jobquerystringOptional

Response200 OK

approvalsarray of objectsRequired
approvals[].actorstringRequired
who asks, as a person reads it: Claude Code · user:user_01J8...
approvals[].approvestringRequired
the command a person runs to approve it
approvals[].approversarray of strings
approvals[].expires_atstring (date-time)Required
approvals[].jobstringRequired
uuidv7 rendered as job_<32 hex>
approvals[].notestring or null
the submitter's one line for the person: untrusted text, shown and never interpreted
approvals[].reachedbooleanRequired
approvals[].repostringRequired
approvals[].requested_atstring (date-time)Required
approvals[].requesterstringRequired
the job's requester (user:..., key:..., agent:...)
approvals[].taskstringRequired
the task row's name: deploy, or a matrix cell deploy[region=eu]
curl "$CIRESK_API/v1/ci/approvals" \
  -H "Authorization: Bearer $CIRESK_KEY"
POST/v1/ci/jobs/{id}/approvals

Submit an approval decision

Approve or reject a job's approval gate.

Permission: ci:approvals.approve

Parameters

NameTypeRequiredDescription
idpathstringRequiredThe job's ID.

Request body

commentstring or null
decisionstringRequired
One of approve, reject
taskstringRequired
a task name, deciding every pending cell of it, or a cell selector (deploy[region=eu])

Response201 Created

decisionstringRequired
One of approve, reject
jobstringRequired
uuidv7 rendered as job_<32 hex>
sod_exceptionboolean
the decider requested the job and the policy's approval_self: record accepted it
tasksarray of stringsRequired
the task rows' names the decision settled
curl -X POST "$CIRESK_API/v1/ci/jobs/job_0109badfc220cd056b2c0e862ac73d40/approvals" \
  -H "Authorization: Bearer $CIRESK_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "comment": "acme/platform",
    "decision": "approve",
    "task": "test"
  }'