---
title: "Update a budget"
method: PATCH
path: "/enterprises/{enterprise}/settings/billing/budgets/{budget_id}"
tags: ["billing"]
---

# Update a budget

`PATCH /enterprises/{enterprise}/settings/billing/budgets/{budget_id}`

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

## Path parameters

- `enterprise` string, required
- `budget_id` string, required

## Request body

- object
  - `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
    - `will_alert` boolean — Whether alerts are enabled for this budget
    - `alert_recipients` string[] — Array of user login names who will receive alerts
  - `budget_scope` 'enterprise' | 'organization' | 'repository' | 'cost_center' | 'multi_user_customer' | 'user' — The scope of the budget
  - `budget_entity_name` string — The name of the entity to apply the budget to
  - `budget_type` union — The type of pricing for the budget
    - 'ProductPricing'
    - 'SkuPricing'
  - `budget_product_sku` string — A single product or SKU that will be covered in the budget

## Response `200`

Budget updated successfully

- UpdateBudget
  - `message` string, required — A message indicating the result of the update operation
  - `budget` object, required
    - `id` string — ID of the budget.
    - `budget_scope` 'enterprise' | 'organization' | 'repository' | 'cost_center' — The type of scope for the budget
    - `budget_entity_name` string — The name of the entity to apply the budget to
    - `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_product_sku` string — A single product or sku to apply the budget to.
    - `budget_type` union — The type of pricing for the budget
      - 'ProductPricing'
      - 'SkuPricing'
    - `budget_alerting` object
      - `will_alert` boolean — Whether alerts are enabled for this budget
      - `alert_recipients` string[] — Array of user login names who will receive alerts

## Other responses

- `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

## Changes

- **2026-06-03** (2026-03-10) `7257ffb1688d` — 2 info
  - added the new `multi_user_customer` enum value to the request property `budget_scope`
  - added the new `user` enum value to the request property `budget_scope`

[Change history](https://skmtc.dev/github/apis/enterprise-cloud/changes/enterprises/:enterprise/settings/billing/budgets/:budget_id/patch.md)

---

[API](https://skmtc.dev/github/apis/enterprise-cloud.md) · [All operations](https://skmtc.dev/github/apis/enterprise-cloud/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/github/enterprise-cloud/revisions/d41ecea67a9d/schema)
