require_approval policy is active, the MeshAI proxy blocks matching requests and queues them for human review. An authorized user must approve or deny each request before the agent can proceed.
How It Works
Request blocked
The proxy evaluates policies and finds a
require_approval match. The request is blocked with a 403 status and an approval item is created.Queued for review
The approval item appears in the MeshAI dashboard under Governance → Approvals. It includes the agent name, model, environment, and the policy that triggered the block.
Human decides
An authorized user reviews the item and clicks Approve or Deny. They can add a reason for the decision.
Decision cached
Approved decisions are cached in Redis with a configurable TTL (default: 24 hours). Subsequent requests from the same agent matching the same policy are auto-approved until the TTL expires.
The 403 Response
When a request requires approval, the agent receives:Approval Statuses
| Status | Meaning |
|---|---|
pending | Queued, waiting for a human decision |
approved | Approved — agent can retry |
denied | Denied — agent request will continue to be blocked |
expired | TTL elapsed without a decision |
List Pending Approvals
Approve or Deny
Cache TTL Configuration
When an approval is granted, the decision is cached so the agent does not need re-approval on every request. Configure the TTL when creating therequire_approval policy:
0 to require approval on every single request.
