v1
latestOpenAPI 3.1.12026-08-063445179.6 KBGet app analytics
Get fixed app-scoped usage analytics in a Deploy Classic-style table envelope.
The response contains only fields and values. The current Phase 1 response returns these fields: time, request_count, cpu_seconds, runtime_seconds, memory_time_byte_seconds, network_ingress_bytes, network_egress_bytes, kv_read_units, and kv_write_units. Clients should map row values by fields[].name instead of column position; future responses may include additional fields. Buckets are fixed 15-minute UTC buckets, and only buckets fully contained in the effective [since, until) range are returned. Recent buckets may be delayed or updated as telemetry is ingested, and missing rollup rows inside the returned range are zero-filled. Data is available from the analytics rollup rollout time onward and is not invoice-authoritative billing data.
Path parameters
The app ID or slug. App slugs must be 3–32 characters long, may contain only lowercase letters, numbers, and hyphens, cannot contain underscores, must not start or end with a hyphen, must not have consecutive hyphens in positions 3 and 4, and cannot be a reserved slug. App IDs are UUIDs.
Query parameters
Inclusive lower bound as a non-empty RFC 3339 timestamp
Exclusive upper bound as a non-empty RFC 3339 timestamp
Response
OK
Example response
{
"fields": [
{
"name": "time",
"type": "time"
},
{
"name": "request_count",
"type": "number"
},
{
"name": "cpu_seconds",
"type": "number"
},
{
"name": "runtime_seconds",
"type": "number"
},
{
"name": "memory_time_byte_seconds",
"type": "number"
},
{
"name": "network_ingress_bytes",
"type": "number"
},
{
"name": "network_egress_bytes",
"type": "number"
},
{
"name": "kv_read_units",
"type": "number"
},
{
"name": "kv_write_units",
"type": "number"
}
],
"values": [
[
"2026-06-01T00:00:00Z",
1200,
43.12,
900,
966367641600,
10485760,
20971520,
900,
126
]
]
}