Decide Agent Approval
POST /agent/approvals/{approval_id}/decide
Approve, reject, or edit-and-approve a pending approval.
Use {decision, edit_payload} for the existing decision mode, or exclusively
{use_human_authorization: true} to relay a short-lived decision previously
reviewed in the browser by the same personal-key owner. The relay accepts
no caller-authored decision or edit fields. There is no client
version to pass: double-decide is settled server-side by WHERE decided_at IS NULL, so exactly one caller wins and the loser gets 409 rather than
overwriting the first decision.
DecideRequest does not forbid unknown keys, so a misspelled edit_payload
is dropped in silence and an edit_and_approve decides as a plain approve.
This docstring is the operation description in the published contract, so
getting it wrong here ships the wrong shape to every integrator generating a
client from the spec, which is exactly how the earlier expected_version /
edited_payload error nearly shipped.
Authorizations
Parameters
Path Parameters
Approval ID
Approval ID
Header Parameters
Request Body required
Decide directly, or relay a stored human authorization exclusively.
There is no client-supplied version to pass. Double-decide is settled
server-side by WHERE decided_at IS NULL, so exactly one caller wins and the
loser gets 409 rather than overwriting the first decision.
object
Decide directly, or relay a stored human authorization exclusively.
There is no client-supplied version to pass. Double-decide is settled
server-side by WHERE decided_at IS NULL, so exactly one caller wins and the
loser gets 409 rather than overwriting the first decision.
object
Responses
200
Successful Response
object
One approval: the loop asking permission before a consequential step.
object
422
Validation Error