Migrating from the endpoints used for the previous billing platform
If your organization previously used the billing platform that predated metered billing, this article explains how to migrate existing usage reporting to the current billing usage endpoints.
Who can use this feature?
Enterprise owners, organization owners, and billing managers
The new billing platform is now available to all users.
In this article
After you transition to metered billing, the endpoints you used to get data from the previous billing platform will no longer return accurate usage information.
You will need to upgrade all calls using the previous/ACCOUNT-TYPE/NAME/settings/billing/PRODUCT REST API endpoints to use the equivalent/ACCOUNT-TYPE/NAME/settings/billing/usage endpoint.
Changes in authentication
If you used a fine-grained personal access token to authenticate with the previous endpoints, you will need create a personal access token (classic) to authenticate with the new endpoint.
In addition, you may want to use the new query parameters to specify a time period or cost center.
Calculating GitHub Actions information from the new response data
Example of the previous response
{"total_minutes_used":305,"total_paid_minutes_used":0,"included_minutes":3000,"minutes_used_breakdown":{"UBUNTU":205,"MACOS":10,"WINDOWS":90}}Example of the new response
{"usageItems":[{"date":"2023-08-01","product":"Actions","sku":"Actions Linux","quantity":100,"unitType":"minutes","pricePerUnit":0.008,"grossAmount":0.8,"discountAmount":0,"netAmount":0.8,"organizationName":"GitHub","repositoryName":"github/example"}]}To get the same values from the new response data:
| Previous property | Calculate from new API response |
|---|---|
total_minutes_used |
|
total_paid_minutes_used | This is now represented as a $ amount vianetAmount.
|
included_minutes | This is now represented as a $ amount viadiscountAmount.
|
minutes_used_breakdown |
|
Calculating GitHub Packages information from the new response data
Example of the previous response
{"total_gigabytes_bandwidth_used":50,"total_paid_gigabytes_bandwidth_used":40,"included_gigabytes_bandwidth":10}Example of the new response
{"usageItems":[{"date":"2023-08-01","product":"Packages","sku":"Packages data transfer","quantity":100,"unitType":"gigabytes","pricePerUnit":0.008,"grossAmount":0.8,"discountAmount":0,"netAmount":0.8,"organizationName":"GitHub","repositoryName":"github/example"}]}| Previous property | Calculate from new API response |
|---|---|
total_gigabytes_bandwidth_used |
|
total_paid_gigabytes_bandwidth_used | This is now represented as a $ amount vianetAmount.
|
included_gigabytes_bandwidth | This is now represented as a $ amount viadiscountAmount.
|
Calculating shared storage information from the new response data
Example of the previous response
{"days_left_in_billing_cycle":20,"estimated_paid_storage_for_month":15,"estimated_storage_for_month":40}Example of the new response
{"usageItems":[{"date":"2023-08-01","product":"Packages","sku":"Packages storage","quantity":100,"unitType":"GigabyteHours","pricePerUnit":0.008,"grossAmount":0.8,"discountAmount":0,"netAmount":0.8,"organizationName":"GitHub","repositoryName":"github/example"}]}| Previous property | Calculate from new API response |
|---|---|
days_left_in_billing_cycle | Not available. This information can be inferred by subtracting the current day of the month from the number of days in the current month. |
estimated_paid_storage_for_month | This is now represented as a $ amount vianetAmount.Prerequisite: pass the month andyear query parameters.For Actions storage
|
estimated_storage_for_month | Prerequisite: pass themonth andyear query parameters.For Actions storage
|