Approval Routing
When BobSentry returns REQUIRE_APPROVAL, the integrator must not perform the downstream mutation until a human authorizes it. Approval authorizes the integrator to proceed — it is not execution proof, and BobSentry does not run the downstream action.
- 1. Evaluate. Call
POST /v1/runtime/evaluatewithx-api-key. OnREQUIRE_APPROVAL, notedecision_idandapproval_status(typicallyPENDING). - 2. Do not execute. Hold the downstream mutation (deploy, migrate, send, delete, …).
- 3. Human resolves. An authorized operator reviews the request in the BobSentry Approvals console (or equivalent authorized console/API path). Evaluation credentials cannot self-approve.
- 4. Poll status. Integrator checks
GET /v1/runtime/decisions/:decisionIdwith the same API key untilapproval_statusis terminal (APPROVED,DENIED, orEXPIRED). - 5. Proceed only if authorized. After approval,
decisionremainsREQUIRE_APPROVALandapproval_statusbecomesAPPROVED. Proceed whendecision == ALLOWor (decision == REQUIRE_APPROVALandapproval_status == APPROVED). OnPENDING/DENIED/EXPIRED/BLOCK, do not proceed. Do not wait foris_allowed/isAllowedto become true after approval. Optionally record an execution outcome later — that is separate from authorization.
There is no automatic resume or BobSentry-driven execution callback in this flow. Hands-on walkthrough: Protect a production deployment. Contract detail: Runtime Integration Contract.