Skip to content

Approve a `manual` gate (ADR-0008, 0037). The authenticated principal's approval is recorded on the event log (append-only, idempotent). For a **deploy** run (one with a target environment), the gate is released only once the accumulated approvers satisfy the environment's protection rules (`admits`); on release the deployment is written to history. A plain gate (no environment) releases on the first approval. Authz'd as a write.

POST
/v1/runs/{id}/gates/{step}/approve
curl --request POST \
--url https://example.com/v1/runs/example/gates/example/approve
id
required
string

Run id

step
required
string

Gate step id

Approval recorded (released or awaiting more approvals)

No such run or gate