Plateforme de facturation améliorée
Utilisez l’API REST pour obtenir des informations sur l’utilisation de la facturation à partir de la plateforme de facturation améliorée.
Get all budgets for an organization
Note
This endpoint is in public preview and is subject to change.
Gets all budgets for an organization. The authenticated user must be an organization admin or billing manager.
Jetons d’accès affinés pour « Get all budgets for an organization »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Administration" organization permissions (read)
Paramètres pour « Get all budgets for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string ObligatoireThe organization name. The name is not case sensitive. |
Codes d’état de la réponse HTTP pour « Get all budgets for an organization »
| Code d’état | Description |
|---|---|
200 | Response when getting all budgets |
403 | Forbidden |
404 | Resource not found |
500 | Internal Error |
Exemples de code pour « Get all budgets for an organization »
Exemple de requête
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/organizations/ORG/settings/billing/budgetsResponse when getting all budgets
Status: 200{
"budgets": [
{
"id": "2066deda-923f-43f9-88d2-62395a28c0cdd",
"budget_type": "ProductPricing",
"budget_product_skus": [
"actions"
],
"budget_scope": "enterprise",
"budget_amount": 1000,
"prevent_further_usage": true,
"budget_alerting": {
"will_alert": true,
"alert_recipients": [
"enterprise-admin",
"billing-manager"
]
}
},
{
"id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"budget_type": "SkuPricing",
"budget_product_skus": [
"actions_linux"
],
"budget_scope": "organization",
"budget_amount": 500,
"prevent_further_usage": false,
"budget_alerting": {
"will_alert": true,
"alert_recipients": [
"org-owner"
]
}
},
{
"id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"budget_type": "ProductPricing",
"budget_product_skus": [
"packages"
],
"budget_scope": "cost_center",
"budget_amount": 250,
"prevent_further_usage": true,
"budget_alerting": {
"will_alert": false,
"alert_recipients": []
}
}
]
}Get a budget by ID for an organization
Note
This endpoint is in public preview and is subject to change.
Gets a budget by ID. The authenticated user must be an organization admin or billing manager.
Jetons d’accès affinés pour « Get a budget by ID for an organization »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Administration" organization permissions (read)
Paramètres pour « Get a budget by ID for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string ObligatoireThe organization name. The name is not case sensitive. |
budget_id string ObligatoireThe ID corresponding to the budget. |
Codes d’état de la réponse HTTP pour « Get a budget by ID for an organization »
| Code d’état | Description |
|---|---|
200 | Response when updating a budget |
400 | Bad Request |
403 | Forbidden |
404 | Resource not found |
500 | Internal Error |
503 | Service unavailable |
Exemples de code pour « Get a budget by ID for an organization »
Exemple de requête
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/organizations/ORG/settings/billing/budgets/BUDGET_IDResponse when updating a budget
Status: 200{
"id": "2066deda-923f-43f9-88d2-62395a28c0cdd",
"budget_type": "ProductPricing",
"budget_product_sku": "actions_linux",
"budget_scope": "repository",
"budget_entity_name": "example-repo-name",
"budget_amount": 0,
"prevent_further_usage": true,
"budget_alerting": {
"will_alert": true,
"alert_recipients": [
"mona",
"lisa"
]
}
}Update a budget for an organization
Note
This endpoint is in public preview and is subject to change.
Updates an existing budget for an organization. The authenticated user must be an organization admin or billing manager.
Jetons d’accès affinés pour « Update a budget for an organization »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Administration" organization permissions (write)
Paramètres pour « Update a budget for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string ObligatoireThe organization name. The name is not case sensitive. |
budget_id string ObligatoireThe ID corresponding to the budget. |
| Nom, Type, Description | |||
|---|---|---|---|
budget_amount integer The budget amount in whole dollars. For license-based products, this represents the number of licenses. | |||
prevent_further_usage boolean Whether to prevent additional spending once the budget is exceeded | |||
budget_alerting object | |||
Properties of |
| Nom, Type, Description |
|---|
will_alert boolean Whether alerts are enabled for this budget |
alert_recipients array of strings Array of user login names who will receive alerts |
budget_scope string The scope of the budget
Peut être: enterprise, organization, repository, cost_center
budget_entity_name string The name of the entity to apply the budget to
budget_type string The type of pricing for the budget
Peut être: ProductPricing, SkuPricing
budget_product_sku string A single product or SKU that will be covered in the budget
Codes d’état de la réponse HTTP pour « Update a budget for an organization »
| Code d’état | Description |
|---|---|
200 | Budget updated successfully |
400 | Bad Request |
401 | Requires authentication |
403 | Forbidden |
404 | Budget not found or feature not enabled |
422 | Validation failed, or the endpoint has been spammed. |
500 | Internal server error |
Exemples de code pour « Update a budget for an organization »
Exemple de requête
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/organizations/ORG/settings/billing/budgets/BUDGET_ID \
-d '{"prevent_further_usage":false,"budget_amount":10,"budget_alerting":{"will_alert":false,"alert_recipients":[]}}'Budget updated successfully
Status: 200{
"message": "Budget successfully updated.",
"id": "550e8400-e29b-41d4-a716-446655440000"
}Delete a budget for an organization
Note
This endpoint is in public preview and is subject to change.
Deletes a budget by ID for an organization. The authenticated user must be an organization admin or billing manager.
Jetons d’accès affinés pour « Delete a budget for an organization »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Administration" organization permissions (write)
Paramètres pour « Delete a budget for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string ObligatoireThe organization name. The name is not case sensitive. |
budget_id string ObligatoireThe ID corresponding to the budget. |
Codes d’état de la réponse HTTP pour « Delete a budget for an organization »
| Code d’état | Description |
|---|---|
200 | Response when deleting a budget |
400 | Bad Request |
403 | Forbidden |
404 | Resource not found |
500 | Internal Error |
503 | Service unavailable |
Exemples de code pour « Delete a budget for an organization »
Exemple de requête
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/organizations/ORG/settings/billing/budgets/BUDGET_IDResponse when deleting a budget
Status: 200{
"message": "Budget successfully deleted.",
"budget_id": "2c1feb79-3947-4dc8-a16e-80cbd732cc0b"
}Get billing premium request usage report for an organization
Gets a report of premium request usage for an organization. To use this endpoint, you must be an administrator of an organization within an enterprise or an organization account.
Note: Only data from the past 24 months is accessible via this endpoint.
Jetons d’accès affinés pour « Get billing premium request usage report for an organization »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Administration" organization permissions (read)
Paramètres pour « Get billing premium request usage report for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string ObligatoireThe organization name. The name is not case sensitive. |
| Nom, Type, Description |
|---|
year integer If specified, only return results for a single year. The value of |
month integer If specified, only return results for a single month. The value of |
day integer If specified, only return results for a single day. The value of |
user string The user name to query usage for. The name is not case sensitive. |
model string The model name to query usage for. The name is not case sensitive. |
product string The product name to query usage for. The name is not case sensitive. |
Codes d’état de la réponse HTTP pour « Get billing premium request usage report for an organization »
| Code d’état | Description |
|---|---|
200 | Response when getting a billing premium request usage report |
400 | Bad Request |
403 | Forbidden |
404 | Resource not found |
500 | Internal Error |
503 | Service unavailable |
Exemples de code pour « Get billing premium request usage report for an organization »
Exemple de requête
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/organizations/ORG/settings/billing/premium_request/usageResponse when getting a billing premium request usage report
Status: 200{
"timePeriod": {
"year": 2025
},
"organization": "GitHub",
"usageItems": [
{
"product": "Copilot",
"sku": "Copilot Premium Request",
"model": "GPT-5",
"unitType": "requests",
"pricePerUnit": 0.04,
"grossQuantity": 100,
"grossAmount": 4,
"discountQuantity": 0,
"discountAmount": 0,
"netQuantity": 100,
"netAmount": 4
}
]
}Get billing usage report for an organization
Gets a report of the total usage for an organization. To use this endpoint, you must be an administrator of an organization within an enterprise or an organization account.
Note: This endpoint is only available to organizations with access to the enhanced billing platform. For more information, see "About the enhanced billing platform."
Jetons d’accès affinés pour « Get billing usage report for an organization »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Administration" organization permissions (read)
Paramètres pour « Get billing usage report for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string ObligatoireThe organization name. The name is not case sensitive. |
| Nom, Type, Description |
|---|
year integer If specified, only return results for a single year. The value of |
month integer If specified, only return results for a single month. The value of |
day integer If specified, only return results for a single day. The value of |
Codes d’état de la réponse HTTP pour « Get billing usage report for an organization »
| Code d’état | Description |
|---|---|
200 | Billing usage report response for an organization |
400 | Bad Request |
403 | Forbidden |
500 | Internal Error |
503 | Service unavailable |
Exemples de code pour « Get billing usage report for an organization »
Exemple de requête
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/organizations/ORG/settings/billing/usageBilling usage report response for an organization
Status: 200{
"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"
}
]
}Get billing usage summary for an organization
Note
This endpoint is in public preview and is subject to change.
Gets a summary report of usage for an organization. To use this endpoint, you must be an administrator of an organization within an enterprise or an organization account.
Note: Only data from the past 24 months is accessible via this endpoint.
Jetons d’accès affinés pour « Get billing usage summary for an organization »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
- Jetons d’accès utilisateur d’application GitHub
- Jetons d’accès d’installation d’application GitHub
- Jetons d’accès personnel affiné
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Administration" organization permissions (read)
Paramètres pour « Get billing usage summary for an organization »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
org string ObligatoireThe organization name. The name is not case sensitive. |
| Nom, Type, Description |
|---|
year integer If specified, only return results for a single year. The value of |
month integer If specified, only return results for a single month. The value of |
day integer If specified, only return results for a single day. The value of |
repository string The repository name to query for usage in the format owner/repository. |
product string The product name to query usage for. The name is not case sensitive. |
sku string The SKU to query for usage. |
Codes d’état de la réponse HTTP pour « Get billing usage summary for an organization »
| Code d’état | Description |
|---|---|
200 | Response when getting a billing usage summary |
400 | Bad Request |
403 | Forbidden |
500 | Internal Error |
503 | Service unavailable |
Exemples de code pour « Get billing usage summary for an organization »
Exemple de requête
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/organizations/ORG/settings/billing/usage/summaryResponse when getting a billing usage summary
Status: 200{
"timePeriod": {
"year": 2025
},
"organization": "GitHub",
"usageItems": [
{
"product": "Actions",
"sku": "actions_linux",
"unitType": "minutes",
"pricePerUnit": 0.008,
"grossQuantity": 1000,
"grossAmount": 8,
"discountQuantity": 0,
"discountAmount": 0,
"netQuantity": 1000,
"netAmount": 8
}
]
}Get billing premium request usage report for a user
Gets a report of premium request usage for a user.
Note: Only data from the past 24 months is accessible via this endpoint.
Jetons d’accès affinés pour « Get billing premium request usage report for a user »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Plan" user permissions (read)
Paramètres pour « Get billing premium request usage report for a user »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
username string ObligatoireThe handle for the GitHub user account. |
| Nom, Type, Description |
|---|
year integer If specified, only return results for a single year. The value of |
month integer If specified, only return results for a single month. The value of |
day integer If specified, only return results for a single day. The value of |
model string The model name to query usage for. The name is not case sensitive. |
product string The product name to query usage for. The name is not case sensitive. |
Codes d’état de la réponse HTTP pour « Get billing premium request usage report for a user »
| Code d’état | Description |
|---|---|
200 | Response when getting a billing premium request usage report |
400 | Bad Request |
403 | Forbidden |
404 | Resource not found |
500 | Internal Error |
503 | Service unavailable |
Exemples de code pour « Get billing premium request usage report for a user »
Exemple de requête
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/users/USERNAME/settings/billing/premium_request/usageResponse when getting a billing premium request usage report
Status: 200{
"timePeriod": {
"year": 2025
},
"user": "monalisa",
"usageItems": [
{
"product": "Copilot",
"sku": "Copilot Premium Request",
"model": "GPT-5",
"unitType": "requests",
"pricePerUnit": 0.04,
"grossQuantity": 100,
"grossAmount": 4,
"discountQuantity": 0,
"discountAmount": 0,
"netQuantity": 100,
"netAmount": 4
}
]
}Get billing usage report for a user
Gets a report of the total usage for a user.
Note: This endpoint is only available to users with access to the enhanced billing platform.
Jetons d’accès affinés pour « Get billing usage report for a user »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Plan" user permissions (read)
Paramètres pour « Get billing usage report for a user »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
username string ObligatoireThe handle for the GitHub user account. |
| Nom, Type, Description |
|---|
year integer If specified, only return results for a single year. The value of |
month integer If specified, only return results for a single month. The value of |
day integer If specified, only return results for a single day. The value of |
Codes d’état de la réponse HTTP pour « Get billing usage report for a user »
| Code d’état | Description |
|---|---|
200 | Response when getting a billing usage report |
400 | Bad Request |
403 | Forbidden |
500 | Internal Error |
503 | Service unavailable |
Exemples de code pour « Get billing usage report for a user »
Exemple de requête
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/users/USERNAME/settings/billing/usageResponse when getting a billing usage report
Status: 200{
"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,
"repositoryName": "user/example"
}
]
}Get billing usage summary for a user
Note
This endpoint is in public preview and is subject to change.
Gets a summary report of usage for a user.
Note: Only data from the past 24 months is accessible via this endpoint.
Jetons d’accès affinés pour « Get billing usage summary for a user »
Ce point de terminaison fonctionne avec les types de jetons précis suivants:
Le jeton précis doit avoir l’ensemble d’autorisations suivant:
- "Plan" user permissions (read)
Paramètres pour « Get billing usage summary for a user »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
username string ObligatoireThe handle for the GitHub user account. |
| Nom, Type, Description |
|---|
year integer If specified, only return results for a single year. The value of |
month integer If specified, only return results for a single month. The value of |
day integer If specified, only return results for a single day. The value of |
repository string The repository name to query for usage in the format owner/repository. |
product string The product name to query usage for. The name is not case sensitive. |
sku string The SKU to query for usage. |
Codes d’état de la réponse HTTP pour « Get billing usage summary for a user »
| Code d’état | Description |
|---|---|
200 | Response when getting a billing usage summary |
400 | Bad Request |
403 | Forbidden |
404 | Resource not found |
500 | Internal Error |
503 | Service unavailable |
Exemples de code pour « Get billing usage summary for a user »
Exemple de requête
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/users/USERNAME/settings/billing/usage/summaryResponse when getting a billing usage summary
Status: 200{
"timePeriod": {
"year": 2025
},
"user": "monalisa",
"usageItems": [
{
"product": "Actions",
"sku": "actions_linux",
"unitType": "minutes",
"pricePerUnit": 0.008,
"grossQuantity": 1000,
"grossAmount": 8,
"discountQuantity": 0,
"discountAmount": 0,
"netQuantity": 1000,
"netAmount": 8
}
]
}