Submit an approve / reject / escalate decision on an approval gate.
The decision actor identity and role are derived from the authenticated context, never trusted from the request body (SR 11-7). API-key callers without a user identity are rejected 403; a claimed actorRole that does not match the caller's real org role is rejected 403. When the decision resolves the gate, an escalate-to-live-session workflow gate is resumed with the server-derived approver as driver.
AuthorizationBearer <rsk_live_*>Rensei API key presented as Authorization: Bearer rsk_live_. Required API-key scopes are recorded per operation in x-rensei-required-scopes.
id*stringThe approval gate id.
application/json- body
decision*stringThe decision to record.
"approved""rejected""escalated"actorType?stringDefaults to human for session / user-token callers.
"human""agent"actorRole?stringOptional; must match the caller's authenticated org role if supplied.
reason?stringOptional free-text rationale.
Decision recorded; includes resolution state and any workflow resume.
application/json- response
The submitDecision result, plus an optional workflowResume block.
resolved*boolean[key: string]?unknowncurl -X POST 'https://app.rensei.ai/api/approval-gates/string/decide' \ -H 'Content-Type: application/json' \ -d '{ "decision": "approved"}'{ "resolved": true, "property1": null, "property2": null}Submit a typed answer on a human_query gate.
Validates the payload against the gate's declared form schema and records it via submitHumanQueryResponse; when the answer resolves the gate the suspended run resumes with the answer on the gate output. The answer actor identity and role are derived from the authenticated context, never trusted from the request body (SR 11-7). API-key callers without a user identity are rejected 403; a claimed actorRole that does not match the caller's real org role is rejected 403.
Apply one approve / reject decision to many approval gates.
Applies one decision to many gates, each decided independently with the same records as POST /api/approval-gates/{id}/decide, with a per-gate result. The decision actor identity and role are derived from the authenticated context, never trusted from the request body (SR 11-7). A gate the caller may not act on (ineligible role, terminal state, outside the org) refuses in its result slot without failing the other gates; already-resolved gates refuse 409. A failed workflow resume rides on that gate's ok slot as resumeError without un-recording the committed decision.