Skip to main content

Cloud Billing API

The Temporal Cloud Billing API provides Namespace-level cost attribution through on-demand billing reports. Reports are delivered in CSV format and can be accessed via API or downloaded directly for use in FinOps tooling and cost management platforms.

This API is part of the Cloud Operations API.

Support, stability, and dependency info

The Temporal Cloud Billing API is in Pre-release.

The Billing API allows you to:

  • Generate billing reports for specified invoice months
  • Retrieve report status and metadata
  • Download CSV reports that can be fed into internal analytics tooling or cloud cost management platforms

The Billing Report contains:

  • Accurate Namespace-level cost attribution
  • Hourly granularity
  • A FOCUS-friendly data format

For complete request and response schemas, refer to the Schema below.

Billing report generation is asynchronous. You initiate report creation, then poll for completion.

Report data limitations

For pre-release, reports can be generated with hourly granularity only, for the current billing month, and the previous billing month.

Allowed date ranges

Date ranges must use billing-month boundaries (MM/YYYY). Requests may include the current billing month. The data in finalized reports includes usage up to current_time - 24 hours (rounded up to nearest hour).

Rate limits and concurrency

Rate limits apply to API usage.

Per-account concurrency

Within a single account:

  • Only one billing report per account is generated at a time
  • Additional requests are accepted but queued

Report Generation Latency

Report generation time varies and is not guaranteed. Factors that affect it include the size of the requested date range and overall platform load.

Best practices

Provide an idempotency key (async_operation_id) when retrying requests.

Poll GetBillingReport using exponential backoff.

Download reports immediately after generation (URLs expire).

Avoid frequent generation of large overlapping ranges in the current billing period.

Billing report schema

Billing reports are delivered in CSV format.

Each row represents a charge record.

Column NameDescriptionExample
BillingAccountIDTemporal Cloud account IDa2dd6
BillingAccountNameTemporal Cloud account nametemporal
BillingCurrencyThe currency an account is billed inUSD (cents)
BillingPeriodEndThe exclusive end bound of a billing period2024-02-01T00:00:00Z
BillingPeriodStartThe inclusive start bound of a billing period2024-01-01T00:00:00Z
ChargeCategoryThe highest level classification of a charge based on how it is billedUsage
ChargeDescriptionA self contained summary of the charge’s purposeActions - Tier 1
ChargeFrequencyIndicates how often a charge will occurUsage-Based
ChargePeriodEndTime period end from when this charge took place, correlates to data granularity2025-10-01T01:00:00.000Z
ChargePeriodStartTime period start from when this charge took place, correlates to data granularity2025-10-01T00:00:00.000Z
ContractedCostCost calculated by multiplying ContractedUnitPrice and PricingQuantity100.00
ContractedUnitPriceThe agreed-upon unit price for a single pricing unit of the associated SKU. Inclusive of negotiated discounts10.00
InvoiceIDThe ID of the invoice for this billing periodin_XXXXXXXXXXXXXXXXXXXX
InvoiceIssuerThe entity responsible for issuing payable invoicesstripe
PricingQuantityThe volume of a given SKU used or purchased10.00
PricingUnitThe measurement unit used for PricingQuantity1 Million Actions
ProviderThe provider of purchased resources or servicesTemporal Technologies
PublisherThe publisher of purchased resources or servicesTemporal Technologies
ResourceIDNamespace name + Temporal Cloud account IDproduction.a2dd6
ResourceNameNamespace name + Temporal Cloud account IDproduction.a2dd6
ResourceTypeThe type of resource the charge applies toNamespace
ServiceCategoryThe highest level classification of a service based on the core function of the serviceTemporal Cloud
ServiceNameAn offering that can be purchased from a providerTemporal Cloud
ServiceSubcategoryA secondary classification of the service category for a service based on its core functionActions
SKUIDA unique identifier that represents a specific SKUessentials-actions
SKUMeterThe functionality being metered or measured by a particular SKU in a chargeActions
TagsProvider and customer defined tags associated with resources{"$tmprl_project":["project-id"],"namespace-tag-key":["namespace-tag-value"]}

Generate a report

To generate a report, follow these steps:

  1. Create a billing report using CreateBillingReport. The response includes a billing_report_id and async_operation_id.
  2. Poll GetBillingReport using the billing_report_id
  3. When the report state becomes BILLING_REPORT_STATE_GENERATED, retrieve the download URL
  4. Download the report before the URL expires

Key identifiers

IdentifierPurpose
billing_report_idIdentifies the billing report and is used to retrieve metadata and download URLs
async_operation_idIdentifies the background operation responsible for generating the report

The async operation follows the standard Cloud Operations async model (see Async Operations).