Skip to content

Approve what agents spend

Set the line above which any agent spend waits for you, then answer each request in your startups.studio inbox, Slack or Microsoft Teams.

Set a Limit on what agents spend. Anything above it becomes an Approval that waits for your yes, wherever you answer approvals.

Needs Agent

What you get

  • 1$500 a month spending limit on every agentLimit
  • 1request to you for each spend above it, with the reason, in your startups.studio inbox and in Slack or Microsoft TeamsApproval
  • 1business cardholder, so agents never hold your own cardCard
  • 1single-use card for each approved payment, capped at its amountCard
  • 1short wait before each payment goes out, so you can still stop itAction
  • 1line in your books for every paymentEntry

Your agent does

Limit.create → Approval.approve
You, to your agent

Ask me before any agent spends more than $500 a month.

Nothing over $500 goes out without my yes.

Show me what the agents want to spend, and let me approve it.

# 1. Limit.create
curl -X POST https://api.sb/leaseline.app/limits \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"amount":{"amount":500,"currency":"USD"},"period":"month"}'

# 2. Approval.approve
curl -X POST https://api.sb/leaseline.app/approvals/approval_1/approve \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"note":"Yes: the annual renewal for the listing site."}'
import { $ } from 'startup-builder'

await $.Limit.create({ amount: { amount: 500, currency: 'USD' }, period: 'month' })
await $.Approval.approve({ approval: 'approval_1', note: 'Yes: the annual renewal for the listing site.' })
npx startup-builder do Limit.create --json '{"amount":{"amount":500,"currency":"USD"},"period":"month"}'
npx startup-builder do Approval.approve --json '{"approval":"approval_1","note":"Yes: the annual renewal for the listing site."}'
{
  "name": "do",
  "arguments": {
    "code": "await $.Limit.create({ amount: { amount: 500, currency: 'USD' }, period: 'month' })\nreturn await $.Approval.approve({ approval: 'approval_1', note: 'Yes: the annual renewal for the listing site.' })"
  }
}

Change it

  • Raise it to $1,000 for ad spend only.
  • Refuse the $740 request and tell the agent why.
  • Stop all agent spending until I say so.

Under the hood

Systems
Spend management, Treasury, Ledger
Nouns
Limit, Approval, Mandate, Card, Entry
Events
Limit.created, Approval.approved
Stripe objects
Issuing Cardholder, Issuing Card