Platform API reference
Get Contract Budget
Read a linked contract’s budget: funded milestone volume, consumed work, remaining volume, and the OK / LOW / DEPLETED state.
GET
Returns the contract’s current budget: funded milestone volume versus consumed work, and the resulting
OK / LOW / DEPLETED state. Read-only and side-effect-free — polling it never emits events. Use it to reconcile after downtime or to render budget status in your UI; the usage-sync guide explains how the numbers are computed.
Requirements: contracts:read scope, and the contract’s job must be referenced by a project link on the calling token’s install.
Request
The OpenTrain contract to read.
Response
The contract this budget describes.
PAY_PER_HOUR, PAY_PER_LABEL, or FIXED_PRICE. Determines the volume unit (hours, labels) — FIXED_PRICE contracts never deplete.OK (below 80% consumed), LOW (consumedFraction ≥ 0.8), or DEPLETED (≥ 1.0). Always OK for FIXED_PRICE or when nothing is funded.Total volume (hours or labels) across funded and completed milestones.
Total USD across those milestones.
Raw consumption totals across all reported usage and OpenTrain first-party work:
seconds, hours, labels, tasks.Consumption in the contract’s volume unit — hours for
PAY_PER_HOUR, labels for PAY_PER_LABEL.fundedVolume - consumedVolume, floored at 0.consumedVolume / fundedVolume, rounded to 4 decimals. 0 when nothing is funded.The current funded milestone (
id, name, amountUsd, volume, status), or null if none is active.ISO 8601 timestamp of the most recent usage report or first-party work record —
null if no work has been recorded.Errors
| Status | code | Meaning |
|---|---|---|
401 | UNAUTHORIZED | Missing, invalid, or revoked token |
403 | FORBIDDEN | Token lacks contracts:read |
404 | NOT_FOUND | Contract not found, or its job is not linked by this install |