Query request volume, token usage, and DA spend via the activity API.
The activity API gives you daily usage data for your account — requests, tokens, and DA cost — rolled up per day, model, and provider endpoint.
const res = await fetch("https://opendunes.com/v1/activity", {
headers: { Authorization: `Bearer ${process.env.OPENDUNES_API_KEY}` },
});
const { data } = await res.json();
for (const row of data) {
console.log(row.date, row.model, row.requests, "reqs,", row.usage, "DA");
}Returns the last 30 days by default. Each activity row includes:
| Field | Description |
|---|---|
date | Day of the activity (YYYY-MM-DD) |
model | Model slug used |
model_permaslug | Permanent model slug |
endpoint_id | Provider endpoint identifier |
provider_name | The lab serving the model |
prompt_tokens | Prompt tokens for the day |
completion_tokens | Completion tokens for the day |
requests | Request count for the day |
usage | DA spent for the day on this model |
const res = await fetch("https://opendunes.com/v1/activity?date=2026-07-02", {
headers: { Authorization: `Bearer ${process.env.OPENDUNES_API_KEY}` },
});| Param | Description |
|---|---|
date | Limit to a single day (YYYY-MM-DD) |
Rows arrive grouped per day × model, so account rollups are a reduce away:
const totalDa = data.reduce((sum: number, r: { usage: number }) => sum + r.usage, 0);
console.log(`Total spend: ${totalDa.toFixed(2)} DA`);The Analytics page visualizes the same data with filterable charts, model breakdowns, and a downloadable CSV export.