API ReferenceUsage
Daily spend breakdown
GET /api/v1/wallet/dashboard/daily-spend — per-day spend split by cost category over a date window.
GET /api/v1/wallet/dashboard/daily-spendDay-by-day spend across a date window, broken down by cost category (LLM, TTS, STT, telephony, and platform fee). Useful for trend charts and dashboards.
The series is dense
The response has one point per day in the [from, to) range — days with no calls are still returned, with zeros. You never have to fill gaps client-side.
Query parameters
| Param | Type | Required | Notes |
|---|---|---|---|
from | date (YYYY-MM-DD) | ✓ | Inclusive start day. |
to | date (YYYY-MM-DD) | ✓ | Exclusive end day. The window is half-open: [from, to). |
Response
{
"points": [
{
"date": "2026-06-15",
"llm_usd": "3.1200",
"tts_usd": "2.4500",
"stt_usd": "1.8000",
"telephony_usd": "1.6400",
"platform_fee_usd": "0.4000",
"total_usd": "9.4100",
"call_count": 142
}
]
}| Field | Type | Notes |
|---|---|---|
points[].date | string YYYY-MM-DD | One entry per day in the requested range. |
points[].llm_usd | string | LLM cost that day (decimal string). |
points[].tts_usd | string | Text-to-speech cost that day. |
points[].stt_usd | string | Speech-to-text cost that day. |
points[].telephony_usd | string | Telephony/carrier cost that day. |
points[].platform_fee_usd | string | Platform fee applied that day. |
points[].total_usd | string | Sum of the category costs for that day. |
points[].call_count | int | Number of calls attributed to that day. |
USD fields are decimal strings
Every *_usd field is a decimal string (e.g. "9.4100"). Parse them as decimals, not floats.
Examples
curl "https://dashboard.zoxa.ai/api/v1/wallet/dashboard/daily-spend?from=2026-06-01&to=2026-06-15" \
-H "X-API-Key: zsk_..."import httpx
r = httpx.get(
"https://dashboard.zoxa.ai/api/v1/wallet/dashboard/daily-spend",
params={"from": "2026-06-01", "to": "2026-06-15"},
headers={"X-API-Key": "zsk_..."},
)
for p in r.json()["points"]:
print(p["date"], p["total_usd"], p["call_count"])Errors
| Status | detail | When |
|---|---|---|
400 | "No organization selected" | The key's user has no organization selected. |
422 | array | from or to missing or not a valid YYYY-MM-DD date. |
Related
- Usage summary — aggregate totals for a window
GET /calls— per-call list with date, agent, and status filters