Supported endpoints
The currently supported endpoints are:/v1/subscriptions/<subscription_id>/usage
/v1/subscriptions/<subscription_id>/costs
/v1/customers/<customer_id>/costs
/v1/customers/external_customer_id/<external_customer_id>/costs
/v1/invoices/upcoming
/v1/invoices/<invoice_id>
Performance benefits are only expected on invoices with
status = "draft"
,
since issued invoices already have frozen data.Header Semantics
Orb currently supports two approaches for requesting cached data.Always fetching cached data
In order to opt-in to cached data, explicitly pass the following case-sensitive header:Key | Value |
---|---|
Orb-Cache-Control | cache |
Fetch cached data conditional on a staleness threshold
In order to conditionally opt-in to cached data based on a maximum staleness age, pass the following headers:Key | Value |
---|---|
Orb-Cache-Control | cache |
Orb-Cache-Max-Age-Seconds | <staleness_threshold_seconds> (int) |
Response headers
OnHTTP 200
responses when the Orb-Cache-Control
header is passed with or without Orb-Cache-Max-Age-Seconds
, the response will return the following
header:
Key | Value |
---|---|
Orb-Cache-Updated-At | ISO timestamp string (e.g. 2024-02-14T06:48:26.366184+00:00 ) |
Orb-Cache-Updated-At
value to determine if a follow-up request is necessary. If a specific result is completely up to date (based on internal event ingestion invalidation markers), Orb will set this value to the current time.