Skip to main content
REST API теперь версия. Дополнительные сведения см. в разделе "О управлении версиями API".

Budgets

Используйте REST API для получения информации о бюджете.

Внимание

В схеме тела запроса ниже отсутствует необходимое поле. Если budget_scope , userвы также должны включить user поле, установленное под имя пользователя, к которому GitHub относится бюджет. Если опустить это поле, API возвращает HTTP 400: Missing required fields: budget_entity_name. Для пользовательских бюджетов budget_entity_name может быть пустая строка.

Следующий пример создаёт пользовательский бюджет, который ограничивает ежемесячную сумму CopilotAI credits одного пользователя до 30 долларов США:

{
  "budget_amount": 30,
  "prevent_further_usage": true,
  "budget_scope": "user",
  "budget_entity_name": "",
  "budget_type": "BundlePricing",
  "budget_product_sku": "ai_credits",
  "budget_alerting": {
    "will_alert": false,
    "alert_recipients": []
  },
  "user": "USERNAME"
}

Get all budgets

Gets all budgets for an enterprise. The authenticated user must be an enterprise admin or billing manager. Each page returns up to 100 budgets.

Детализированные токены доступа для «Get all budgets»

Эта конечная точка не работает с пользовательскими токенами доступа GitHub App, токенами доступа для установки GitHub App или детализированными персональными токенами доступа.

Параметры для «Get all budgets»

Заголовки
Имя., Тип, Description
accept string

Setting to application/vnd.github+json is recommended.

Параметры пути
Имя., Тип, Description
enterprise string Обязательное поле

The slug version of the enterprise name.

Параметры запроса
Имя., Тип, Description
page integer

The page number of results to fetch.

По умолчанию.: 1

per_page integer

The number of results per page (max 100).

По умолчанию.: 10

scope string

Filter budgets by scope type.

Возможные значения: enterprise, organization, repository, cost_center, multi_user_customer, user

user string

Filter consumed amount details for budgets by the specified user login.

HTTP-коды статуса ответа для «Get all budgets»

Код состоянияDescription
200

Response when getting all budgets

403

Forbidden

404

Resource not found

Примеры кода для «Get all budgets»

Если вы получаете доступ к GitHub на GHE.com, замените api.github.com на выделенный поддомен вашего предприятия в api.SUBDOMAIN.ghe.com.

Примеры запросов

get/enterprises/{enterprise}/settings/billing/budgets
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/enterprises/ENTERPRISE/settings/billing/budgets

Response 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": [] } } ], "has_next_page": false, "total_count": 3 }

Create a budget

Creates a new budget for an enterprise. The authenticated user must be an enterprise admin, organization admin, or billing manager of the enterprise.

Детализированные токены доступа для «Create a budget»

Эта конечная точка не работает с пользовательскими токенами доступа GitHub App, токенами доступа для установки GitHub App или детализированными персональными токенами доступа.

Параметры для «Create a budget»

Заголовки
Имя., Тип, Description
accept string

Setting to application/vnd.github+json is recommended.

Параметры пути
Имя., Тип, Description
enterprise string Обязательное поле

The slug version of the enterprise name.

Параметры запроса
Имя., Тип, 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. For user and multi_user_customer scopes, this must be true.

budget_alerting object Обязательное поле
Имя., Тип, 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. user and multi_user_customer scopes are only supported when budget_product_sku is ai_credits or premium_requests.

Возможные значения: enterprise, organization, repository, cost_center, multi_user_customer, user

budget_entity_name string

The name of the entity to apply the budget to

По умолчанию.: ""

budget_type string Обязательное поле

The type of pricing for the budget

budget_product_sku string

A single product or SKU that will be covered in the budget

HTTP-коды статуса ответа для «Create a budget»

Код состоянияDescription
200

Budget created successfully

400

Bad Request

401

Requires authentication

403

Forbidden

404

Feature not enabled

422

Validation failed, or the endpoint has been spammed.

500

Internal server error

Примеры кода для «Create a budget»

Если вы получаете доступ к GitHub на GHE.com, замените api.github.com на выделенный поддомен вашего предприятия в api.SUBDOMAIN.ghe.com.

Пример запроса

post/enterprises/{enterprise}/settings/billing/budgets
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/enterprises/ENTERPRISE/settings/billing/budgets \ -d '{"budget_amount":200,"prevent_further_usage":true,"budget_scope":"enterprise","budget_entity_name":"","budget_type":"ProductPricing","budget_product_sku":"actions","budget_alerting":{"will_alert":false,"alert_recipients":[]}}'

Budget created successfully

Status: 200
{ "message": "Budget successfully created.", "budget": { "id": "f5236c62-157f-4d8f-a79e-ffb91058ee97", "budget_type": "ProductPricing", "budget_product_sku": "actions", "budget_scope": "organization", "budget_entity_name": "example-organization", "budget_amount": 100, "prevent_further_usage": true, "budget_alerting": { "will_alert": false, "alert_recipients": [] } } }

Get a budget by ID

Gets a budget by ID. The authenticated user must be an enterprise admin or billing manager.

Детализированные токены доступа для «Get a budget by ID»

Эта конечная точка не работает с пользовательскими токенами доступа GitHub App, токенами доступа для установки GitHub App или детализированными персональными токенами доступа.

Параметры для «Get a budget by ID»

Заголовки
Имя., Тип, Description
accept string

Setting to application/vnd.github+json is recommended.

Параметры пути
Имя., Тип, Description
enterprise string Обязательное поле

The slug version of the enterprise name.

budget_id string Обязательное поле

The ID corresponding to the budget.

HTTP-коды статуса ответа для «Get a budget by ID»

Код состоянияDescription
200

Response when updating a budget

400

Bad Request

403

Forbidden

404

Resource not found

500

Internal Error

503

Service unavailable

Примеры кода для «Get a budget by ID»

Если вы получаете доступ к GitHub на GHE.com, замените api.github.com на выделенный поддомен вашего предприятия в api.SUBDOMAIN.ghe.com.

Пример запроса

get/enterprises/{enterprise}/settings/billing/budgets/{budget_id}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/enterprises/ENTERPRISE/settings/billing/budgets/BUDGET_ID

Response 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

Updates an existing budget for an enterprise. The authenticated user must be an enterprise admin, organization admin, or billing manager of the enterprise.

Детализированные токены доступа для «Update a budget»

Эта конечная точка не работает с пользовательскими токенами доступа GitHub App, токенами доступа для установки GitHub App или детализированными персональными токенами доступа.

Параметры для «Update a budget»

Заголовки
Имя., Тип, Description
accept string

Setting to application/vnd.github+json is recommended.

Параметры пути
Имя., Тип, Description
enterprise string Обязательное поле

The slug version of the enterprise name

budget_id string Обязательное поле

The unique identifier of the budget

Параметры запроса
Имя., Тип, 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. For budgets with user or multi_user_customer scope, this must remain true.

budget_alerting object
Имя., Тип, 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

Возможные значения: enterprise, organization, repository, cost_center, multi_user_customer, user

budget_entity_name string

The name of the entity to apply the budget to

budget_type string

The type of pricing for the budget

budget_product_sku string

A single product or SKU that will be covered in the budget

HTTP-коды статуса ответа для «Update a budget»

Код состояния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

503

Service unavailable

Примеры кода для «Update a budget»

Если вы получаете доступ к GitHub на GHE.com, замените api.github.com на выделенный поддомен вашего предприятия в api.SUBDOMAIN.ghe.com.

Пример запроса

patch/enterprises/{enterprise}/settings/billing/budgets/{budget_id}
curl -L \ -X PATCH \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/enterprises/ENTERPRISE/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.", "budget": { "id": "2066deda-923f-43f9-88d2-62395a28c0cdd", "budget_type": "ProductPricing", "budget_product_sku": "actions_linux", "budget_scope": "repository", "budget_entity_name": "org-name/example-repo-name", "budget_amount": 10, "prevent_further_usage": true, "budget_alerting": { "will_alert": true, "alert_recipients": [ "mona", "lisa" ] } } }

Delete a budget

Deletes a budget by ID. The authenticated user must be an enterprise admin.

Детализированные токены доступа для «Delete a budget»

Эта конечная точка не работает с пользовательскими токенами доступа GitHub App, токенами доступа для установки GitHub App или детализированными персональными токенами доступа.

Параметры для «Delete a budget»

Заголовки
Имя., Тип, Description
accept string

Setting to application/vnd.github+json is recommended.

Параметры пути
Имя., Тип, Description
enterprise string Обязательное поле

The slug version of the enterprise name.

budget_id string Обязательное поле

The ID corresponding to the budget.

HTTP-коды статуса ответа для «Delete a budget»

Код состоянияDescription
200

Response when deleting a budget

400

Bad Request

403

Forbidden

404

Resource not found

500

Internal Error

503

Service unavailable

Примеры кода для «Delete a budget»

Если вы получаете доступ к GitHub на GHE.com, замените api.github.com на выделенный поддомен вашего предприятия в api.SUBDOMAIN.ghe.com.

Пример запроса

delete/enterprises/{enterprise}/settings/billing/budgets/{budget_id}
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ https://api.github.com/enterprises/ENTERPRISE/settings/billing/budgets/BUDGET_ID

Response when deleting a budget

Status: 200
{ "message": "Budget successfully deleted.", "budget_id": "2c1feb79-3947-4dc8-a16e-80cbd732cc0b" }