Scheduled run cap null: no ceiling, but wallet and limits still bind

Sending generation_spend_cap_usd null drops the automation ceiling for one run. Wallet balance, admission and org limits still apply, and 0 is a 400.

4 min readSume
All posts

For a scheduled agent run, generation_spend_cap_usd: null means the run has no automation ceiling, which is not the same as no limit at all. Wallet balance, generation admission and organization limits all still apply, and a value of 0 is rejected with a 400.

That is the opposite default from a Format run, where a null cap is documented as a $500 ceiling. Do not carry one rule across to the other.

The four values you can send

The Action API trigger accepts the cap field in the body. A positive number is clamped to the smaller of the request and the Action's own cap, so a request can only lower the ceiling for one run, never raise it.

If the field is left out, the Action's cap applies, and an Action with none set uses $1.00.

generation_spend_cap_usd on an Action run, from the API trigger page (read 2026-10-05)
You sendResult
A number above 0Clamped to min(request, Action cap). Cannot raise the cap.
nullNo automation ceiling for this run.
0400 invalid_request.
A non-number or negative400 invalid_request (must be a finite number above 0, or null).
Field omittedThe Action's cap applies; the default is $1.00.

What still stops a null run

With no ceiling, three other limits remain. The workspace wallet must be able to reserve each job, so an empty wallet still fails with an insufficient-balance error. Generation admission still applies: a full queue answers queue_full. And any limit set on the organization or service account still binds.

So null is a statement that the schedule should not self-limit, not a promise that anything goes through. It also removes the early warning: the 402 automation_generation_spend_cap_exceeded can no longer fire for that run, so a runaway plan is stopped only by the wallet.

When to use it

Use null for a run you trust and have sized by hand, for instance a monthly render of a known set of clips. Do not use it on a schedule that takes free-text input, because the input could change what the agent decides to generate.

A cheaper middle path is a high but finite number. It keeps the safety gate and still leaves room for the plan.

curl -sS -X POST "https://api.sume.com/v1/actions/aut_REPLACE/runs" \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"batch":"october"},"generation_spend_cap_usd":null}'

Limits

The cap measures generation spend only. The agent's own turns bill a separate wallet, so the figure is not the total cost of a run. The usage block on the run is a receipt figure; GET /v1/usage remains the billing record.

Sources

Related posts

More in Agents

All Agents posts

Written by Sume