Usage Analytics
GET
/
v1
/
analytics
/
computer
/
usage
Usage Analytics
curl --request GET \
--url https://api.perplexity.ai/v1/analytics/computer/usage \
--header 'Authorization: Bearer <token>'{
"categories": [
"Model",
"Credit Source"
],
"data": [
{
"start_time": 1746057600,
"end_time": 1746144000,
"count": 350,
"by_categories": {
"Model": [
{
"category": "claude-opus-4-8",
"count": 210
},
{
"category": "claude-sonnet-4-6",
"count": 120
}
],
"Credit Source": [
{
"category": "paid",
"count": 250
},
{
"category": "promo",
"count": 80
}
]
}
}
],
"has_more": false,
"next_page": null
}{
"error": {
"message": "start_time must be before end_time.",
"type": "invalid_request",
"code": 400
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": 123
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": 123
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": 123
}
}Authorizations
Section titled “Authorizations”Authorization
string
header
required
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Section titled “Query Parameters”dataset
enum<string>
required
The dataset to query. query_volume and daily_active_users are daily organization-level datasets: they reject bucket_width=1h and user_email.
Available options:
credit_usage,
connectors,
artifacts,
skills,
spaces,
workflows,
task_durations,
query_volume,
daily_active_users
start_time
integer
required
Window start in unix seconds (UTC), inclusive. Snapped down to the bucket grid, so the first bucket can include usage from before this time.
Required range: x >= 0
end_time
integer
Window end in unix seconds (UTC), exclusive. Defaults to now; future values are capped at now. The window may span at most 90 days.
Required range: x >= 0
bucket_width
enum<string>
default:1d
Bucket size. Buckets align to the UTC grid. Not accepted as 1h for query_volume or daily_active_users, which are stored at day grain.
Available options:
1d,
1h
limit
integer
Buckets per page. 1d: default 7, max 31. 1h: default 24, max 168.
page
string
Opaque pagination cursor from a previous response's next_page. Valid only with the same query parameters it was issued for.
user_email
string<email>
Restrict results to a single member of your organization. Emails that don't match a current member return a generic 400. Not available for query_volume or daily_active_users, which are aggregated per organization; use the v2 endpoint for per-member query volume.
Response
Section titled “Response”Bucketed usage for the requested window. Buckets without data carry count 0; the analytics store syncs periodically, so a zero in a recent bucket can mean the data hasn't synced yet.
categories
string[]
required
Category breakdown labels the requested dataset surfaces, in canonical render order. Each label is a key in every bucket's by_categories.
data
object[]
required
Every bucket in the page's window, in chronological order. Buckets without data carry count 0 and an empty breakdown.
Show child attributes
has_more
boolean
required
Whether more buckets exist beyond this page. False also when the window's remaining buckets are past the current data frontier.
next_page
string | null
Cursor for the next page; pass as the page parameter with otherwise identical query parameters.
Was this page helpful?
⌘I