v2

latestOpenAPI 3.1.02026-07-26143251806.6 KB
tracking

Request Analytics

post/api/public/v2/requests/analytics

Request body

qstring nullable

Free-text search query. Searches across the prompt input and LLM output text using fuzzy prefix matching.

sort_by'request_start_time' | 'input_tokens' | 'output_tokens' | 'cost' | 'latency_ms' | 'status' nullable

Field to sort results by. Does not affect aggregated output for /requests/analytics.

sort_order'asc' | 'desc' nullable

Sort direction. Must be provided together with sort_by.

metadata_cost_breakdown_keystring nullable

When provided, the analytics response includes a metadataValueBreakdown array with cost and request counts for each value of this metadata key. Omit or pass null to get an aggregate breakdown across the top metadata keys.

Example request

{
  "filter_group": {
    "logic": "AND",
    "filters": [
      {
        "field": "engine",
        "operator": "is",
        "value": "gpt-4o"
      }
    ]
  },
  "sort_by": "request_start_time",
  "sort_order": "desc"
}

Response

Aggregated analytics for the matching request logs.

successtrue required
averageLatencynumber

Overall average latency across all matching requests, in seconds.

totalCostnumber
totalTokensinteger
totalRequestsinteger
totalCachedTokensinteger
totalThinkingTokensinteger
cacheTokenRationumber nullable

totalCachedTokens / total_input_tokens, or null when there are no input tokens.

modelRequestsByDayobject

Map of model name → list of [date, requestCount] pairs.

promptTemplateRequestsByDayobject
providerRequestsByDayobject
latencyByModelByDayobject
latencyByPromptTemplateByDayobject
latencyByProviderByDayobject