예산
REST API를 사용하여 예산 정보를 가져옵니다.
Get all budgets for an organization
Gets all budgets for an organization. The authenticated user must be an organization admin or billing manager. Each page returns up to 10 budgets.
"Get all budgets for an organization"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰은 필수 권한 집합을 포함해야 합니다.:
- "Administration" organization permissions (read)
"Get all budgets for an organization"에 대한 매개 변수
| 이름, 유형, 설명 |
|---|
accept string Setting to |
| 이름, 유형, 설명 |
|---|
org string 필수The organization name. The name is not case sensitive. |
| 이름, 유형, 설명 |
|---|
page integer The page number of the results to fetch. 기본값: |
per_page integer The number of results per page (max 10). 기본값: |
scope string Filter budgets by scope type. 다음 중 하나일 수 있습니다.: |
user string Filter consumed amount details for budgets by the specified user login. |
"Get all budgets for an organization"에 대한 HTTP 응답 상태 코드
| 상태 코드 | 설명 |
|---|---|
200 | Response when getting all budgets |
403 | Forbidden |
404 | Resource not found |
500 | Internal Error |
"Get all budgets for an organization"에 대한 코드 샘플
요청 예제
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/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": []
}
}
],
"has_next_page": false,
"total_count": 3
}Create a budget for an organization
Creates a new budget for an organization. The authenticated user must be an organization admin or billing manager.
"Create a budget for an organization"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰은 필수 권한 집합을 포함해야 합니다.:
- "Administration" organization permissions (write)
"Create a budget for an organization"에 대한 매개 변수
| 이름, 유형, 설명 |
|---|
accept string Setting to |
| 이름, 유형, 설명 |
|---|
org string 필수The organization name. The name is not case sensitive. |
| 이름, 유형, 설명 | |||
|---|---|---|---|
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 | |||
budget_alerting object | |||
Properties of |
| 이름, 유형, 설명 |
|---|
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 for this organization. Use 'organization' for org-level budgets or 'repository' for repo-specific budgets within the organization. user and multi_user_customer scopes are only supported when budget_product_sku is ai_credits or premium_requests.
다음 중 하나일 수 있습니다.: organization, repository, 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
"Create a budget for an organization"에 대한 HTTP 응답 상태 코드
| 상태 코드 | 설명 |
|---|---|
200 | Budget created successfully |
400 | Bad Request |
401 | Requires authentication |
403 | Insufficient permissions |
404 | Feature not enabled or organization not found |
422 | Validation failed, or the endpoint has been spammed. |
500 | Internal server error |
"Create a budget for an organization"에 대한 코드 샘플
요청 예제
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/organizations/ORG/settings/billing/budgets \
-d '{"budget_amount":500,"prevent_further_usage":true,"budget_scope":"organization","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": {
"description": "Response when updating a budget",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID of the budget."
},
"budget_scope": {
"type": "string",
"description": "The type of scope for the budget",
"enum": [
"enterprise",
"organization",
"repository",
"cost_center",
"multi_user_customer",
"user"
],
"examples": [
"enterprise"
]
},
"budget_entity_name": {
"type": "string",
"description": "The name of the entity to apply the budget to",
"examples": [
"octocat/hello-world"
]
},
"user": {
"type": "string",
"description": "The user login when the budget is scoped to a single user (`user` scope).",
"examples": [
"octocat"
]
},
"budget_amount": {
"type": "integer",
"description": "The budget amount in whole dollars. For license-based products, this represents the number of licenses."
},
"prevent_further_usage": {
"type": "boolean",
"description": "Whether to prevent additional spending once the budget is exceeded",
"examples": [
true
]
},
"budget_product_sku": {
"type": "string",
"description": "A single product or sku to apply the budget to.",
"examples": [
"actions_linux"
]
},
"budget_type": {
"description": "The type of pricing for the budget",
"oneOf": [
{
"type": "string",
"enum": [
"ProductPricing"
]
},
{
"type": "string",
"enum": [
"SkuPricing"
]
}
],
"examples": [
"ProductPricing"
]
},
"budget_alerting": {
"type": "object",
"properties": {
"will_alert": {
"type": "boolean",
"description": "Whether alerts are enabled for this budget",
"examples": [
true
]
},
"alert_recipients": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of user login names who will receive alerts",
"examples": [
"mona",
"lisa"
]
}
}
}
},
"required": [
"id",
"budget_amount",
"prevent_further_usage",
"budget_product_sku",
"budget_type",
"budget_alerting",
"budget_scope",
"budget_entity_name"
]
},
"examples": {
"default": {
"value": {
"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"
]
}
}
}
}
}
}
}
}Get a budget by ID for an organization
Gets a budget by ID. The authenticated user must be an organization admin or billing manager.
"Get a budget by ID for an organization"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰은 필수 권한 집합을 포함해야 합니다.:
- "Administration" organization permissions (read)
"Get a budget by ID for an organization"에 대한 매개 변수
| 이름, 유형, 설명 |
|---|
accept string Setting to |
| 이름, 유형, 설명 |
|---|
org string 필수The organization name. The name is not case sensitive. |
budget_id string 필수The ID corresponding to the budget. |
"Get a budget by ID for an organization"에 대한 HTTP 응답 상태 코드
| 상태 코드 | 설명 |
|---|---|
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 for an organization"에 대한 코드 샘플
요청 예제
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/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
Updates an existing budget for an organization. The authenticated user must be an organization admin or billing manager.
"Update a budget for an organization"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰은 필수 권한 집합을 포함해야 합니다.:
- "Administration" organization permissions (write)
"Update a budget for an organization"에 대한 매개 변수
| 이름, 유형, 설명 |
|---|
accept string Setting to |
| 이름, 유형, 설명 |
|---|
org string 필수The organization name. The name is not case sensitive. |
budget_id string 필수The ID corresponding to the budget. |
| 이름, 유형, 설명 | |||
|---|---|---|---|
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 | |||
budget_alerting object | |||
Properties of |
| 이름, 유형, 설명 |
|---|
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
"Update a budget for an organization"에 대한 HTTP 응답 상태 코드
| 상태 코드 | 설명 |
|---|---|
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 |
"Update a budget for an organization"에 대한 코드 샘플
요청 예제
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/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.",
"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": 0,
"prevent_further_usage": true,
"budget_alerting": {
"will_alert": true,
"alert_recipients": [
"mona",
"lisa"
]
}
}
}Delete a budget for an organization
Deletes a budget by ID for an organization. The authenticated user must be an organization admin or billing manager.
"Delete a budget for an organization"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰은 필수 권한 집합을 포함해야 합니다.:
- "Administration" organization permissions (write)
"Delete a budget for an organization"에 대한 매개 변수
| 이름, 유형, 설명 |
|---|
accept string Setting to |
| 이름, 유형, 설명 |
|---|
org string 필수The organization name. The name is not case sensitive. |
budget_id string 필수The ID corresponding to the budget. |
"Delete a budget for an organization"에 대한 HTTP 응답 상태 코드
| 상태 코드 | 설명 |
|---|---|
200 | Response when deleting a budget |
400 | Bad Request |
403 | Forbidden |
404 | Resource not found |
500 | Internal Error |
503 | Service unavailable |
"Delete a budget for an organization"에 대한 코드 샘플
요청 예제
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/organizations/ORG/settings/billing/budgets/BUDGET_IDResponse when deleting a budget
Status: 200{
"message": "Budget successfully deleted.",
"budget_id": "2c1feb79-3947-4dc8-a16e-80cbd732cc0b"
}