Exporting enterprise usage data in FOCUS format
Export your IBM Cloud® enterprise billing and usage data in FinOps Open Cost and Usage Specification (FOCUS) format to simplify multi-cloud cost management and enable direct integration with FinOps tools.
The FOCUS format is a cross-cloud standard that is developed by the FinOps Foundation that normalizes billing and usage data across cloud providers. Without a common standard, billing data from different providers uses inconsistent terminology and schemas, requiring custom transformation before it can be used in FinOps tools. By exporting enterprise usage data in FOCUS format, you can analyze IBM Cloud costs alongside data from other cloud providers without that extra work. For more information, see the FinOps Foundation FOCUS v1.2 specification.
Before you begin
Before you can export enterprise usage data in FOCUS format, make sure that you have the following access:
- Usage Reports Viewer, Editor, or Administrator role on the Enterprise service in the enterprise account. For more information, see Required access for viewing enterprise usage.
Exporting enterprise usage in FOCUS format by using the console
You can download a CSV file that contains usage data for the entire enterprise in FOCUS format directly from the IBM Cloud console. The export always includes all accounts in the enterprise and cannot be filtered by account group.
- Log in to your enterprise account in the IBM Cloud console.
- Go to Manage > Billing and usage > Usage.
- Click Export > FOCUS. Then, from the Time frame menu, select the billing month for which you want to export data.
- Click Export to download a CSV file that contains enterprise-level usage data in FOCUS format.
The downloaded file includes all mandatory FOCUS v1.2 fields plus IBM Cloud-specific fields. For a full description of the available fields, see Supported FOCUS fields.
Exporting enterprise usage in FOCUS format by using the API
You can automate enterprise FOCUS exports by using the Enterprise Usage Reports API.
-
Obtain an IAM access token for a user or service ID that has Usage Reports Viewer, Editor, or Administrator access on the Enterprise service. For more information, see Managing API keys.
-
Call the FOCUS export endpoint for your enterprise:
curl -X GET "https://enterprise.cloud.ibm.com/v1/focus-reports?enterprise_id={enterprise_id}&month={month}&format=csv" \
-H "Authorization: Bearer {iam_token}"
Replace {enterprise_id} with your enterprise account ID, {month} with the reporting month in YYYY-MM format, {format} with the response format that you want, and {iam_token} with
your IAM access token.
If you omit the page parameter, the full report is returned as a compressed file, which is the recommended approach for large enterprise exports.
API parameters
The following parameters are supported by the FOCUS export endpoint. Required parameters must be included in every request.
enterprise_id(required)- The enterprise account ID.
month(required)- The reporting month in
YYYY-MMformat, for example,2025-01. format(required)- The response format.
page(optional)- The page number for paginated results. If you omit this parameter, the full report is returned as a compressed file.
Authorization(required)- Bearer token for IAM authentication.
Supported FOCUS fields
The enterprise FOCUS export includes all mandatory FOCUS v1.2 fields and additional IBM Cloud-specific fields.
Mandatory fields
The following table lists all fields that are required by the FOCUS v1.2 specification. Every enterprise FOCUS export includes these fields with full compliance.
| Field | Type | Description |
|---|---|---|
BilledCost |
Decimal | The cost billed to the customer. |
BillingCurrency |
String | The currency code in ISO 4217 format. |
ChargeCategory |
String | The type of charge: Usage, Purchase, Tax, or Adjustment. |
ChargeDescription |
String | A description of the charge. |
ChargePeriodEnd |
DateTime | The end of the charge period in ISO 8601 format. |
ChargePeriodStart |
DateTime | The start of the charge period in ISO 8601 format. |
EffectiveCost |
Decimal | The amortized cost after discounts. |
ListUnitPrice |
Decimal | The list price per unit before discounts. |
PricingCategory |
String | The pricing model. |
PricingQuantity |
Decimal | The quantity that is used for pricing. |
PricingUnit |
String | The unit of measure for pricing. |
ProviderName |
String | Always IBM. |
PublisherName |
String | The service publisher name. |
ResourceId |
String | A unique resource identifier. |
ResourceName |
String | The resource name. |
ServiceCategory |
String | The high-level service category. |
ServiceName |
String | The name of the service. |
SkuId |
String | The SKU identifier. |
Additional fields
Beyond the mandatory fields, the enterprise FOCUS export includes additional fields that are grouped by category. These fields provide further detail for cost analysis, resource attribution, and IBM Cloud-specific billing features.
| Category | Fields |
|---|---|
| Account and billing | BillingAccountId, BillingAccountName, BillingAccountType, BillingPeriodEnd, BillingPeriodStart, InvoiceIssuerName |
| Geographic | AvailabilityZone, RegionId, RegionName |
| Commitment and discount | CommitmentDiscountCategory, CommitmentDiscountId, CommitmentDiscountName, CommitmentDiscountType, CommitmentDiscountUnit |
| Cost breakdown | ContractedCost, ContractedUnitPrice, ListCost |
| Charge details | ChargeClass, ChargeFrequency |
| Consumption | ConsumedQuantity, ConsumedUnit |
| Pricing | PricingCurrency, SkuMeter |
| Resource metadata | ResourceType, ServiceSubcategory, Tags |
| IBM Cloud extensions | x_DiscountId, x_DiscountName, x_DiscountQuantity, x_OfferId, x_OfferCredit |