Changelog
Select a dated contract under /api/<version>. Preview versions require explicit selection; the current version remains the default.
20261031 is an opt-in REST API version. 20260709 remains current. Existing managed API keys and OAuth grants retain their resource and scopes.
- Interactive queries: set
interactive: trueon structured, non-forecast requests to receive the result in the same HTTP response without polling. Queued execution remains the default. - Execution identity: structured-query responses include
execution.modeandexecution.execution_id. Interactive responses have no queued-job object or polling URLs. - Arrow metadata: the IPC schema's
admetrics:resultentry contains result identity, pagination, requested totals and column metadata, including for empty pages. - Metric preference: catalog metrics expose
comparison_preferencefor the primary value or point estimate. - Client currency: client-list and catalog entries expose nullable reporting-default
currency; explicit query or output currency takes precedence. - Usage: interactive executions cost two weighted units by default and share the execution budget with queued requests. Accepted retries, timeouts and failures are chargeable.
Upgrading from 20260709
- Select
/api/20261031and check theAPI-Versionheader. Omitinteractiveor set it tofalseto retain queued execution. - For interactive requests, supply a finite, authorized reporting-client filter, remove polling options, and use
timeout_msbetween 1,000 and 120,000. Allow slightly longer in the HTTP client. - Read the execution mode and identity. Decode every Arrow record batch and the versioned schema metadata; request totals and column metadata through query options.
- Use server totals and pagination counts, inspect missing-metric information, and preserve integer precision. Keep separate queries when a KPI intentionally uses different metric filters.
- Handle unknown comparison preference and null currency. Add bounded retries for throttling, reduce page size for oversized results, and account for each accepted execution.
Queued downloads in this version expire after at most five minutes, or a shorter cache lifetime. An expired download returns 410; a new submission is another execution.
See the complete 20261031 reference and versioned OpenAPI specification for fields, examples, limits and error handling. Returning an integration to 20260709 requires omitting preview-only fields; accrued usage is retained.
20260709 is the current public REST and MCP contract version. MCP discovery now advertises the tool-call names below. Legacy names remain callable as temporary compatibility aliases but are no longer advertised.
| Previous tool call | 20260709 tool call |
|---|---|
compile_korrelat_question | compile_analytics_question |
run_korrelat_question | run_analytics_question |
run_korrelat_json_query | run_structured_analytics_query |
list_korrelat_clients | list_available_clients |
search_korrelat_catalog | search_analytics_catalog |
search_korrelat_dimension_values | search_dimension_values |
explain_korrelat_query | explain_analytics_query |
open_korrelat_catalog_picker | open_analytics_catalog_picker |
Versioning policy
The current public contract uses a dated YYYYMMDD version under /api/<version>. Use the API Reference version selector to read a specific contract. Quickstarts, live tools and MCP retain the current version when a preview is added. /v1 remains a deprecated compatibility surface; no removal date has been announced.
Deprecated v1 contract
The complete compatibility contract remains machine-readable at GET /v1/openapi.json. It includes the explicit /v1/questions/*, /v1/korrelat-queries/run, catalog, explain, and MCP bridge paths plus the short /v1/compile, /v1/query, /v1/run, and /v1/query/raw aliases. Every v1 operation is marked deprecated and links to its 20260709 replacement.
