---
title: "Update AI credit controls"
method: PATCH
path: "/v1/ai/credit-controls"
tags: ["AI Credit Controls"]
---

# Update AI credit controls

`PATCH /v1/ai/credit-controls`

<Note>
  **Organization Admin** permissions are required for this endpoint.
</Note>

Update the organization's AI credit controls: the downgrade and shutoff thresholds and the default per-user credit limit. All fields are optional, but at least one must be provided:

- Omit a field to leave it unchanged
- Send `null` to turn that control off (for `userDefaultCredits`: unlimited by default)
- Send a non-negative number to set it

## Request body

- object
  - `downgradeCredits` number, nullable — Credit usage at which AI downgrades to a cheaper model. Omit to leave unchanged, `null` to turn off, or a non-negative number to set. Must be less than or equal to `shutoffCredits`.
  - `shutoffCredits` number, nullable — Credit usage at which AI shuts off entirely. Omit to leave unchanged, `null` to turn off, or a non-negative number to set.
  - `userDefaultCredits` number, nullable — Default per-user AI credit limit for the billing period. This limit is what what every user without an individual limit gets. Omit to leave unchanged, `null` for unlimited by default, or a non-negative number to set.

## Response `200`

Thresholds updated. Returns the full current state.

- AiCreditControlsResponse
  - `accountCreditLimit` number, required — Monthly AI credit limit for the whole Omni account, which is shared across every organization associated with the account. `0` when no limit is configured.
  - `creditsUsed` number, required — This organizations's credit usage for the current billing period.
  - `downgradeCredits` number, nullable, required — Downgrade threshold, or `null` if the downgrade control is off.
  - `periodEnd` integer, required — End of the current billing period as a Unix ms timestamp (UTC calendar-month boundary).
  - `periodStart` integer, required — Start of the current billing period as a Unix ms timestamp (UTC calendar-month boundary).
  - `shutoffCredits` number, nullable, required — Shutoff threshold, or `null` if the shutoff control is off.
  - `userDefaultCredits` number, nullable, required — Default per-user AI credit limit, or `null` when users are unlimited by default.

## Other responses

- `400` — Invalid request. Common causes: - Empty body - A negative value - An unknown field - `downgradeCredits` greater than `shutoffCredits`
- `401` — Missing or invalid API key.
- `403` — Insufficient permissions or AI credit controls are not enabled.
- `429` — Too Many Requests - Rate limit exceeded (60 requests/minute)
- `500` — Internal Server Error

---

[API](https://skmtc.net/omni/apis/omni-api.md) · [All operations](https://skmtc.net/omni/apis/omni-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/omni/omni-api/revisions/6b02f7349d0e/schema)
