# Spending limits for AI agents

Every Arettic agent key has a monthly budget and an approval threshold, enforced on our side. Your agent can't change them, and big purchases wait for a person.

An agent that buys things needs limits it can't change. On Arettic, every agent key has a monthly budget ($50 by default) and an approval threshold ($20 by default). Both are checked on our side, on every request, before any money is held. Going over either doesn't fail the purchase. It asks a person, and the agent carries on once they say yes.

## The limits

Limits on every agent key

| Limit | Default | What it does |
|---|---|---|
| Monthly budget | $50 a month | A purchase that would take the agent over it waits for approval. Owners get an email at 80%. |
| Approval threshold | $20 a request | A request above it waits for approval. Choose $5, $20, $50 or never. |
| IP allowlist | Any IP | Only these addresses or ranges can use the key. |

## How an approval works

1. Nothing runs and nothing is held. The agent gets `approval_required` and an `approval_id`.
2. Every owner gets an email with a one-click approve or decline link. No sign-in needed.
3. Once it's approved, the agent sends the same request with the `approval_id`. It runs for exactly that tool, input and amount.
4. Approvals expire after 24 hours.

## Other guards

- **Revoke at once.** Revoking a key stops the agent on its next request.
- **Velocity alerts.** If an agent spends more than 3 times its usual hourly rate, owners get an email.
- **Free failures.** A failed call costs nothing, so a broken provider can't drain your balance.
- **One key per agent.** Give each agent its own key and its own limits. Agents are unlimited on every plan.

## Set them

Set limits on the Agents page in the dashboard, or with the org API. An agent key can read its own limits but never change them.

**curl**

```bash
curl -X PATCH https://api.arettic.com/v1/orgs/$ORG_ID/agents/$AGENT_ID \
  -H "Authorization: Bearer $ARETTIC_ORG_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "monthly_budget_credits": 200000, "approval_threshold_credits": 50000 }'
```

Every field and status is on [Budgets and approvals](/docs/budgets-and-approvals).

## Questions

### How do I stop an AI agent from overspending?

Give it a key whose budget and approval threshold are enforced by the API, not by the agent's own code. On Arettic both are on by default.

### Can the agent raise its own limits?

No. An agent key can read its limits but never change them. Only an owner, or an org key with write access, can.

### What happens when an agent hits its budget?

The purchase waits for an owner to approve it. Nothing is charged until they do.

### Do endpoint calls count toward the budget?

Yes. Endpoint calls and guaranteed jobs share the same monthly budget.

### Can I limit where a key is used from?

Yes. Add IP addresses or CIDR ranges to the key's allowlist.

Updated 2026-10-23. This page as HTML: https://arettic.com/limits · Markdown: https://arettic.com/limits.md · JSON: https://arettic.com/limits.json
