> ## Documentation Index
> Fetch the complete documentation index at: https://novita.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Update API Key Budget Configuration

## Request Headers

<ParamField header="Content-Type" type="string" required={true}>
  Enum: `application/json`
</ParamField>

<ParamField header="Authorization" type="string" required={true}>
  Bearer authentication format, for example: Bearer \{\{API Key}}.
</ParamField>

## Request Body

<ParamField body="member_id" type="string" required={true}>
  Sub-user account ID of the API Key owner.
</ParamField>

<ParamField body="key_id" type="string" required={true}>
  Target API Key ID.
</ParamField>

<ParamField body="budget_type" type="string" required={true}>
  Budget type. Possible values: `Unlimited`, `One-time`, `Recurring`.
</ParamField>

<ParamField body="budget_limit" type="int64" required={false}>
  Budget limit, in units of 1/10000 USD (e.g., 10000 = $1.00). Required when `budget_type` is not `Unlimited`. Minimum value is `10000` ($1.00).
</ParamField>

<ParamField body="cycle" type="string" required={false}>
  Reset cycle. Required when `budget_type=Recurring`. Currently only `Monthly` is supported.
</ParamField>

## Response

Returns HTTP 200 with an empty response body on success.

<RequestExample>
  ```bash theme={"system"}
  curl --request PUT \
    --url https://api.novita.ai/openapi/v1/user/team/key-budget \
    --header 'Authorization: Bearer <API_KEY>' \
    --header 'Content-Type: application/json' \
    --data '{"member_id": "<string>", "key_id": "<string>", "budget_type": "Recurring", "budget_limit": 100000, "cycle": "Monthly"}'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={"system"}
  {}
  ```
</ResponseExample>
