name (required) | string | A name for this preset, e.g. meals-only. |
total | number | Lifetime spend cap, in US dollars. |
per_day | number | Spend cap per rolling 24 hours, in US dollars. |
per_week | number | Spend cap per rolling 7 days, in US dollars. |
per_month | number | Spend cap per rolling 30 days, in US dollars. |
only_categories | string | Comma-separated spend categories to allow (strict), e.g. meals,groceries (meals, groceries, travel, software, ai, wellness, retail). |
watch_categories | string | Categories in Watch mode (allow + notify on mismatch instead of refuse/pause): meals, groceries, travel, software, ai, wellness, retail. Spend caps, places, time windows, and merchant-only rules stay strict. |
only_merchants | string | Comma-separated merchant name patterns to allow, e.g. openai,anthropic. |
only_in | string | Comma-separated places to allow charges from, e.g. US,California (a country or a US state). |
only_currencies | string | The currencies the card may pay in, comma-separated, as codes or plain names in any case: usd,eur or dollars,euros. A charge in any other currency is refused and the user is told. A name that means several currencies, such as pesos, is refused when you save. Agentcard checks this rule; the card network does not. |
watch_currencies | string | The same list in Watch mode: a purchase in another currency is allowed and the user is told. Pass only_currencies or watch_currencies, not both. |
only_days | string | Comma-separated days to allow, e.g. mon,tue,wed or weekdays/weekends. |
only_hours | string | An hour range to allow, e.g. 9-17 (24-hour clock; defaults to UTC without timezone). |
timezone | string | IANA timezone for only_days/only_hours (default UTC), e.g. America/Los_Angeles. Always shown in summaries. Unknown zones are refused. |
only_from | string | Comma-separated callers to allow, e.g. cli,mcp (cli, mcp, api, browser). |
privileges | array | Advanced: raw privilege objects instead of the rule fields above. |