· Published 2026-07-17 · Last updated 2026-07-17

Template

Per-category spend limit template

Limit spending by category so your agents can't blow the compute budget even if the total is under the daily cap. Set independent limits for compute, APIs, ads, goods, and services.

Category limit rules

# Compute: up to $500/day (GPU rentals, cloud instances)
curl -X POST https://sipi.bot/api/rules \
  -H "Authorization: Bearer $ADMIN_TOKEN" \
  -d '{"rule_type":"category_limit","params":{"category":"compute","max_amount":500},"action":"BLOCKED","label":"compute-daily-cap"}'

# APIs: up to $300/day (LLM tokens, search APIs, data feeds)
curl -X POST https://sipi.bot/api/rules \
  -H "Authorization: Bearer $ADMIN_TOKEN" \
  -d '{"rule_type":"category_limit","params":{"category":"api","max_amount":300},"action":"BLOCKED","label":"api-daily-cap"}'

# Ads: up to $200/day (Google Ads, Meta Ads, LinkedIn Ads)
curl -X POST https://sipi.bot/api/rules \
  -H "Authorization: Bearer $ADMIN_TOKEN" \
  -d '{"rule_type":"category_limit","params":{"category":"ads","max_amount":200},"action":"BLOCKED","label":"ads-daily-cap"}'

# Goods: up to $100/day (physical products, hardware)
curl -X POST https://sipi.bot/api/rules \
  -H "Authorization: Bearer $ADMIN_TOKEN" \
  -d '{"rule_type":"category_limit","params":{"category":"goods","max_amount":100},"action":"BLOCKED","label":"goods-daily-cap"}'

# Services: up to $150/day (SaaS subscriptions, professional services)
curl -X POST https://sipi.bot/api/rules \
  -H "Authorization: Bearer $ADMIN_TOKEN" \
  -d '{"rule_type":"category_limit","params":{"category":"services","max_amount":150},"action":"BLOCKED","label":"services-daily-cap"}'

How agents use categories

Your agent passes a category string when calling the spend firewall:

# Python
from sipi_guard import evaluate
result = evaluate(amount=75.00, merchant="runpod.io", category="compute")

# TypeScript
import { evaluateSpend } from "./sipiGuard";
const result = await evaluateSpend({amount: 75, merchant: "runpod.io", category: "compute"});

# HTTP
curl -X POST https://sipi.bot/v1/transactions/evaluate \
  -d '{"amount":75,"merchant":"runpod.io","category":"compute"}'

Pick a category taxonomy that matches your business and document it in the agent's system prompt so every agent categorizes consistently.

Frequently asked

What categories are supported?

sipi.bot accepts any string as a category. Common choices: compute, api, ads, goods, services, software, travel, other. Pick a taxonomy that fits your agent's spending patterns and enforce it in your agent prompts.

Do category limits replace the daily total cap?

No, they complement it. Set a global daily_total as your hard ceiling and category limits to prevent any single category from consuming the entire budget. Both rules fire on every transaction.

Can I add custom categories?

Yes. The category field is a free-form string. Add categories like 'training', 'inference', 'data-labeling', or any label that makes sense for your use case. Create matching category_limit rules for each.

Get started — $99/mo Framework integrations