Usage by member
⚠️
Preview — this feature is being built; the design below is the spec.
GET https://app.syntic.ai/v1/organizations/analytics/membersRequests, tokens and spend per member across their own keys, Console use and Syntic Code, for license and chargeback reviews. Syntic Code detail (sessions, accepted edits) is on Syntic Code usage.
For how this fits into a full workflow, see Usage analytics.
Headers
| Header | Required | Value |
|---|---|---|
Authorization | Yes | Bearer <admin key>: an Admin API key (sk_admin_...). Inference keys are refused with 403 admin_key_required. See Admin API keys. |
syntic-beta | Yes, while in preview | admin-2026-11-01. Without it the call fails with 400 beta_required. See Versioning. |
Query parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
starting_at | string | RFC 3339; required. Inclusive. | |
ending_at | string | now | Exclusive. At most 92 days after starting_at. |
workspace_id | string | Restrict to one workspace. | |
limit | integer | 50 | 1 to 500. |
Response
200 OK, Content-Type: application/json
{
"data": [
{
"user_id": "user_01J9Y0A2C4E6G8J0L2N4",
"email": "dana@example.com",
"requests": 18220,
"input_tokens": 90112004,
"output_tokens": 4100220,
"cost_usd": "302.11",
"surfaces": {
"api": 0.22,
"console": 0.08,
"syntic_code": 0.7
}
}
],
"has_more": false
}| Field | Type | Description |
|---|---|---|
surfaces | object | Share of the member’s requests by where they came from. |
Examples
curl -sS "https://app.syntic.ai/v1/organizations/analytics/members?starting_at=2026-10-01T00:00:00Z" \
-H "Authorization: Bearer $SYNTIC_ADMIN_KEY" \
-H "syntic-beta: admin-2026-11-01"Errors
Errors use the error envelope and carry a request_id. Codes specific to this operation:
| Status | type | code | When |
|---|---|---|---|
| 400 | invalid_request_error | beta_required | The syntic-beta header is missing. |
| 401 | authentication_error | invalid_api_key | The admin key is missing, unknown, revoked or expired. |
| 403 | permission_error | admin_key_required | An inference key was used. |
| 429 | rate_limit_error | rate_limited | Too many requests; wait for Retry-After. See Rate-limit headers. |
Was this page helpful?