# x-agent-proof is an EIP-712 signature by the X-Agent-ID wallet —
# the SDKs produce it for you; see /sdk/overview#read-authentication
curl "https://win.oneshotagent.com/v1/agents/me/budgets" \
-H "X-Agent-ID: 0xYourWalletAddress" \
-H "x-agent-proof: <base64 signed proof, scope=read>"
const status = await agent.budgets();
console.log(`${status.spent_today_usdc} of ${status.daily_usdc} spent, resets ${status.resets_at}`);
status = client.get_budgets()
print(f"{status['spent_today_usdc']} of {status['daily_usdc']} spent")
{
"success": true,
"data": {
"daily_usdc": 50,
"per_transaction_usdc": 5,
"alert_at": 0.8,
"pause_at": 1,
"spent_today_usdc": "41.200000",
"remaining_usdc": "8.800000",
"pct_used": 0.824,
"resets_at": "2026-08-24T00:00:00.000Z"
}
}
Budgets
Get Budget
The agent’s spend budget and live utilization for the current UTC day
GET
/
v1
/
agents
/
me
/
budgets
# x-agent-proof is an EIP-712 signature by the X-Agent-ID wallet —
# the SDKs produce it for you; see /sdk/overview#read-authentication
curl "https://win.oneshotagent.com/v1/agents/me/budgets" \
-H "X-Agent-ID: 0xYourWalletAddress" \
-H "x-agent-proof: <base64 signed proof, scope=read>"
const status = await agent.budgets();
console.log(`${status.spent_today_usdc} of ${status.daily_usdc} spent, resets ${status.resets_at}`);
status = client.get_budgets()
print(f"{status['spent_today_usdc']} of {status['daily_usdc']} spent")
{
"success": true,
"data": {
"daily_usdc": 50,
"per_transaction_usdc": 5,
"alert_at": 0.8,
"pause_at": 1,
"spent_today_usdc": "41.200000",
"remaining_usdc": "8.800000",
"pct_used": 0.824,
"resets_at": "2026-08-24T00:00:00.000Z"
}
}
Returns the configured caps and today’s spend so far. Spend is wallet outflow: gross receipt totals net of applied credits, excluding failed settlements.
spent_today_usdc is reported even when the agent has no budget, so a dashboard can always show utilization.
Authentication
X-Agent-ID plus a signed x-agent-proof with scope: "read". The proof is required, not log-only. See Spend Budgets.
# x-agent-proof is an EIP-712 signature by the X-Agent-ID wallet —
# the SDKs produce it for you; see /sdk/overview#read-authentication
curl "https://win.oneshotagent.com/v1/agents/me/budgets" \
-H "X-Agent-ID: 0xYourWalletAddress" \
-H "x-agent-proof: <base64 signed proof, scope=read>"
const status = await agent.budgets();
console.log(`${status.spent_today_usdc} of ${status.daily_usdc} spent, resets ${status.resets_at}`);
status = client.get_budgets()
print(f"{status['spent_today_usdc']} of {status['daily_usdc']} spent")
{
"success": true,
"data": {
"daily_usdc": 50,
"per_transaction_usdc": 5,
"alert_at": 0.8,
"pause_at": 1,
"spent_today_usdc": "41.200000",
"remaining_usdc": "8.800000",
"pct_used": 0.824,
"resets_at": "2026-08-24T00:00:00.000Z"
}
}
Response
number | null
Daily cap in USDC.
null = unlimited.number | null
Per-call cap in USDC.
null = unlimited.number | null
Fraction of
daily_usdc that triggers a budget_warning.number | null
Fraction of
daily_usdc at which paid calls are rejected.string
Wallet outflow so far this UTC day.
string | null
daily_usdc × pause_at − spent. null when there is no daily cap.number | null
spent / daily_usdc. null when there is no daily cap.string
ISO timestamp of the next UTC midnight, when the daily window resets.