intentic
Create your workspace
Models and accounts

Usage

What has been spent, grouped

One read: the spending record over a range of days, grouped finely enough that every cost screen is a rearrangement of it rather than a second call.

GET/usage/rollupWhat was spent, grouped

The spending record over a range of days, grouped by day, provider, account and model. Everything a cost screen shows is a rearrangement of this one answer, so nothing needs a second call. Read-only: rows are written by the sandbox as turns end, which is what makes it worth trusting.

What you send

FieldTypeWhere
fromFirst day to include, as YYYY-MM-DD…stringquery
toLast day to include, as YYYY-MM-DD…stringquery

What comes back

FieldType
rowsSpending grouped by day, provider, account,…object[]
dayThe day, as YYYY-MM-DD in UTCstring
providerWhich model providerstring
accountWhich accountstring
modelWhich modelstring
harnessWhich agentic loopstring
conversationIdWhich conversationstring
turnsTurns in this groupnumber
inputTokensTokens sentnumber
outputTokensTokens receivednumber
cacheReadTokensTokens served from cachenumber
cacheCreationTokensTokens written to cachenumber
costUsdWhat the group cost, in dollarsnumber
durationMsTime spent, in millisecondsnumber
Try itanswered in this tab
curl
curl "$SANDBOX/usage/rollup" \
  -H "x-intentic-control: $INTENTIC_TOKEN"
TypeScript
import { sandbox } from "@intentic/sandbox-client";

const result = await sandbox.usage.rollup();
More in Models and accounts

Type to search every page, in the docs and the API reference.