pub struct AssistantUsageData {Show 17 fields
pub api_call_id: Option<String>,
pub api_endpoint: Option<AssistantUsageApiEndpoint>,
pub cache_read_tokens: Option<i64>,
pub cache_write_tokens: Option<i64>,
pub copilot_usage: Option<AssistantUsageCopilotUsage>,
pub cost: Option<f64>,
pub duration: Option<i64>,
pub initiator: Option<String>,
pub input_tokens: Option<i64>,
pub inter_token_latency_ms: Option<f64>,
pub model: String,
pub output_tokens: Option<i64>,
pub provider_call_id: Option<String>,
pub quota_snapshots: HashMap<String, AssistantUsageQuotaSnapshot>,
pub reasoning_effort: Option<String>,
pub reasoning_tokens: Option<i64>,
pub time_to_first_token_ms: Option<i64>,
/* private fields */
}Expand description
Session event “assistant.usage”. LLM API call usage metrics including tokens, costs, quotas, and billing information
Fields§
§api_call_id: Option<String>Completion ID from the model provider (e.g., chatcmpl-abc123)
api_endpoint: Option<AssistantUsageApiEndpoint>API endpoint used for this model call, matching CAPI supported_endpoints vocabulary
cache_read_tokens: Option<i64>Number of tokens read from prompt cache
cache_write_tokens: Option<i64>Number of tokens written to prompt cache
copilot_usage: Option<AssistantUsageCopilotUsage>Per-request cost and usage data from the CAPI copilot_usage response field
cost: Option<f64>Model multiplier cost for billing purposes
duration: Option<i64>Duration of the API call in milliseconds
initiator: Option<String>What initiated this API call (e.g., “sub-agent”, “mcp-sampling”); absent for user-initiated calls
input_tokens: Option<i64>Number of input tokens consumed
inter_token_latency_ms: Option<f64>Average inter-token latency in milliseconds. Only available for streaming requests
model: StringModel identifier used for this API call
output_tokens: Option<i64>Number of output tokens produced
provider_call_id: Option<String>GitHub request tracing ID (x-github-request-id header) for server-side log correlation
quota_snapshots: HashMap<String, AssistantUsageQuotaSnapshot>Per-quota resource usage snapshots, keyed by quota identifier
reasoning_effort: Option<String>Reasoning effort level used for model calls, if applicable (e.g. “none”, “low”, “medium”, “high”, “xhigh”, “max”)
reasoning_tokens: Option<i64>Number of output tokens used for reasoning (e.g., chain-of-thought)
time_to_first_token_ms: Option<i64>Time to first token in milliseconds. Only available for streaming requests
Trait Implementations§
Source§impl Clone for AssistantUsageData
impl Clone for AssistantUsageData
Source§fn clone(&self) -> AssistantUsageData
fn clone(&self) -> AssistantUsageData
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more