When approvals fire
Configure thresholds on your wallet policy:amount >= 500 USD → approval required. Below threshold → direct execution.
You can have multiple thresholds for different conditions (per-merchant, per-merchant-category, per-time-of-day). See wallet policies for the full rule grammar.
The flow
Create an approval (automatic)
When an agent calls a spending endpoint and the amount is over threshold, Sly automatically creates an approval instead of executing:apr_....
Approver perspective
context block is purpose-built for approvers — “has this been approved before? how much has this agent spent today?” — so approvers don’t need to go hunting for signal.
Approve
Reject
approval_rejected) if connected via SSE; otherwise can poll.
Notifications
Approvers are notified via configured channels:- Sly dashboard — always
- Email — if enabled on the tenant
- Slack — via OAuth integration (Settings → Integrations → Slack)
- SMS — for tenants on the Enterprise tier
Auto-approve rules
For lower-friction workflows, define auto-approval rules:Timeout behavior
If no approver responds withintimeout_seconds:
- Default:
timeout_seconds→ reject - Configurable:
on_timeout: "auto_approve"(only for low-sensitivity tenants)
Escalation
If the primary approver is unavailable, escalate to a higher role:Endpoints
| Endpoint | Purpose |
|---|---|
GET /v1/approvals | List approvals |
GET /v1/approvals/:id | Get approval details |
POST /v1/approvals/:id/approve | Approve |
POST /v1/approvals/:id/reject | Reject |
POST /v1/approvals/:id/escalate | Escalate to higher role |
GET /v1/agentic-payments | Alternative entry point for agent-initiated approvals |
Good defaults
- Starting out: $100 threshold, approver_role
admin, 1-hour timeout - Mature: tiered thresholds (1000 →
owner), faster timeouts with auto-approve for trusted merchants - Production-ready: all of the above + Slack notifications + auto-approve for known merchants with history
