Account
Usage
GET
/v1/usageReturns token counts and cost broken down by day or model. With a session token the response aggregates all keys on the account. With an API key the response is scoped to that key only.
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| from | string | No | Start date, YYYY-MM-DD. Default: 30 days ago. |
| to | string | No | End date, YYYY-MM-DD. Default: today. |
| group_by | string | No | "day" (default) or "model". Controls how results are bucketed. |
Example
curl "https://api.pinstripes.io/v1/usage?from=2025-01-01&to=2025-01-31&group_by=day" \ -H "Authorization: Bearer sk-ps-..."
Response (group_by=day)
{
"days": [
{
"date": "2025-01-15",
"prompt_tokens": 45000,
"completion_tokens": 8200,
"cached_tokens": 12000,
"cost_usd": 0.0078,
"requests": 34
},
{
"date": "2025-01-16",
"prompt_tokens": 31000,
"completion_tokens": 5100,
"cached_tokens": 9000,
"cost_usd": 0.0051,
"requests": 22
}
],
"totals": {
"prompt_tokens": 76000,
"completion_tokens": 13300,
"cached_tokens": 21000,
"cost_usd": 0.0129,
"requests": 56
}
}Response (group_by=model)
Adds a by_model array alongside the totals field. The days array is omitted.
{
"by_model": [
{
"model": "ps/deepseek-v4-flash",
"prompt_tokens": 52000,
"completion_tokens": 9800,
"cached_tokens": 18000,
"cost_usd": 0.0063,
"requests": 41
},
{
"model": "ps/qwen3.6-35b-a3b",
"prompt_tokens": 24000,
"completion_tokens": 3500,
"cached_tokens": 3000,
"cost_usd": 0.0066,
"requests": 15
}
],
"totals": {
"prompt_tokens": 76000,
"completion_tokens": 13300,
"cached_tokens": 21000,
"cost_usd": 0.0129,
"requests": 56
}
}