Skip to main content
API reference sections

Schema

UsageTotals

Content-free aggregate measurements for one usage scope or reporting row.

Provider token fields remain optional so an unavailable measurement cannot be mistaken for a reported zero. Context counts and bytes are measured by Koru itself and therefore have exact zero values.

Type object

Shape

FieldTypeDescription
attemptsrequiredinteger (uint64, >= 0)
attempts_with_reported_usagerequiredinteger (uint64, >= 0)
request_payload_bytesinteger (uint64, >= 0) or null
web_search_callsinteger (uint64, >= 0)

Default 0

context_payload_bytesrequiredinteger (uint64, >= 0)
message_countrequiredinteger (uint64, >= 0)
context_document_countrequiredinteger (uint64, >= 0)
context_message_block_countrequiredinteger (uint64, >= 0)
prompt_tokensinteger (uint64, >= 0) or null
cached_prompt_tokensinteger (uint64, >= 0) or null
completion_tokensinteger (uint64, >= 0) or null
reasoning_tokensinteger (uint64, >= 0) or null
total_tokensinteger (uint64, >= 0) or null
average_context_assembly_msinteger (uint64, >= 0) or null
average_provider_start_msinteger (uint64, >= 0) or null
average_time_to_first_token_msinteger (uint64, >= 0) or null
average_generation_msinteger (uint64, >= 0) or null
average_total_msinteger (uint64, >= 0) or null
good_feedbackrequiredinteger (uint64, >= 0)
bad_feedbackrequiredinteger (uint64, >= 0)
Example
{
  "attempts": 0,
  "attempts_with_reported_usage": 0,
  "request_payload_bytes": 0,
  "web_search_calls": 0,
  "context_payload_bytes": 0,
  "message_count": 0,
  "context_document_count": 0,
  "context_message_block_count": 0,
  "prompt_tokens": 0,
  "cached_prompt_tokens": 0,
  "completion_tokens": 0,
  "reasoning_tokens": 0,
  "total_tokens": 0,
  "average_context_assembly_ms": 0,
  "average_provider_start_ms": 0,
  "average_time_to_first_token_ms": 0,
  "average_generation_ms": 0,
  "average_total_ms": 0,
  "good_feedback": 0,
  "bad_feedback": 0
}

The contract has no example values, so example bodies are generated from each schema: every field is shown with a placeholder of its type.

Generated from contract version 1. Last updated .

Privacy choices

Choose which optional tools Koru may use on this site. Your choice is saved in a cookie in this browser for 12 months. Privacy policy

Privacy choices

Keep you signed in, protect forms and remember your language and this choice.

Always on

PostHog and Google Analytics 4 measure page views and actions such as downloads, using cookies or local storage.

PostHog records how pages are used, with form inputs masked and private pages excluded. Needs Analytics.

Ahrefs Web Analytics measures visits and where they come from, and Google Ads measures whether our ads led to a visit or download.