All notable changes to the public Consumption Analytics APIs are documented in this file.
Based on: https://keepachangelog.com/en/1.1.0/
The format follows semantic versioning principles, grouping changes by their impact:
Added– New features or endpoints introduced.Changed– Modifications to existing functionality.Deprecated– Stable features that will be removed in a future release.Removed– Deprecated features that have now been removed.Fixed– Bug fixes or behavioral corrections.Security– Important updates related to vulnerabilities or compliance.
GET /consumption-analytics/v1/reports/{id}/contents– Added a newincludeCurrencySymbolboolean query parameter (default:false). When set totrue, cost fields in the exported CSV will include the currency symbol alongside the numeric value.
POST /consumption-analytics/v2/reports/{id}/execute– Decimal number columns (fields with a_fsuffix) now default to 10 decimal places when the caller has not explicitly setformatting.placesAfterDecimal. Previously, the analytics service applied its own default of 4 decimal places, which was unsuitable for raw data consumers requiring full numeric precision. Explicitly provided values are always honoured; non-numeric columns are unaffected.
POST /consumption-analytics/v2/reports/{id}/execute– The request body is now validated as non-null at the API boundary. Submitting a request with no body now returns a400 Bad Requestresponse instead of propagating a null value to the underlying service.
POST /consumption-analytics/v2/reports/{id}/execute– Report ID path parameter validation is now case-insensitive and accepts UUIDs both with and without hyphens (e.g.7021d69dde1344bd97e1dbb05eef0759is now treated as equivalent to7021d69d-de13-44bd-97e1-dbb05eef0759).
GET /consumption-analytics/v1beta1/focus-exports/{id}/contents– Requesting an export using an unrecognised or invalid export configuration ID now correctly returns404 Not Found. Previously the endpoint returned204 No Contentin this case, making it impossible for callers to distinguish between a successful empty export and a missing resource.
POST /consumption-analytics/v2/reports/executeandPOST /consumption-analytics/v2/reports/{id}/execute– Error responses now conform to the GLP error response standard. Validation failures return structurederrorDetailsalongside the top-levelerrorCodeandmessagefields, giving callers machine-readable detail about which field or constraint caused the error.
POST /consumption-analytics/v2/reports/{id}/execute– Added support for date-range filtering. Callers can now scope the report execution to a specific time window using either:relativeDate– a relative range identifier (e.g.last_30_days). Takes precedence over the absolute range parameters when both are supplied.startDate+endDate– an absolute date range inYYYY-MM-DDformat. Both parameters must be provided together; supplying only one returns a400 Bad Request.
GET /consumption-analytics/v2/reports– The list endpoint now supports pagination via two optional query parameters:limit– Maximum number of items to return (default:10).offset– Number of items to skip before returning results (default:0).
Initial release of the v2 Reports API and the v1beta1 FOCUS Exports API.
v2 Reports – Base path: /consumption-analytics/v2/reports
POST /reports/execute– Generates report metadata from a full report definition provided in the request body, without requiring a pre-saved report ID.GET /reports– Lists report definitions available to the caller (see pagination added 2025-12-05).POST /reports/{id}/execute– Executes a saved report definition by ID and returns the results as a JSON table.
v1beta1 FOCUS Exports – Base path: /consumption-analytics/v1beta1/focus-exports
GET /focus-exports– Lists the FOCUS export configurations available to the caller.GET /focus-exports/{id}– Retrieves the full definition of a specific FOCUS export configuration.GET /focus-exports/{id}/contents– Executes the given FOCUS export configuration and returns the result as a FOCUS-compliant CSV file. Requires date-range parameters: eitherrelativeDateor thestartDate+endDatepair.
Initial release of the public Consumption Analytics API.
- Base path:
/consumption-analytics/v1/reports - The following endpoints were introduced:
GET /reports– Lists the reports available to the authenticated user.GET /reports/{id}– Retrieves the full definition of a specific report.GET /reports/{id}/contents– Executes a report and returns the result as a downloadable CSV file.