---
title: "Update Rate Limits"
method: PUT
path: "/v1/admin/accounts/{user_id}/rate-limits"
tags: ["admin"]
---

# Update Rate Limits

`PUT /v1/admin/accounts/{user_id}/rate-limits`

Update a user's rate limits.

Distinguishes "field not in request" from "explicit null":
- field absent → leave the stored value untouched
- field present and null → reset to type defaults (clear the stored value)
- field present and numeric → set to that number

## Path parameters

- `user_id` string, required

## Headers

- `authorization` string

## Request body

- UpdateRateLimitsRequest — Request to update a user's rate limits. Both fields accept null (meaning "use type defaults"). When a numeric value is provided it must fall within the safe operating range: 1 ≤ rpm ≤ 10000, 1 ≤ concurrency ≤ 100. Existing rows storing values outside the range continue to read normally; the constraint applies only on new writes.
  - `rpm_limit` integer, nullable — Requests per minute limit
  - `concurrency_limit` integer, nullable — Max concurrent generation jobs

## Response `200`

Successful Response

- AdminAccountResponse — Full account info for admin view.
  - `user_id` string, required — User ID
  - `email` string, nullable — Account email
  - `billing_type` string — 'prepaid' or 'postpaid'
  - `spending_limit` integer, nullable — Spending limit per period in dollars
  - `balance_dollars` number, nullable — Prepaid shadow balance (dollars)
  - `rate_limits` AccountRateLimits — Current rate limits and real-time usage counters.
    - `rpm` RateLimitInfo — Rate limit for a single dimension (e.g. rpm, concurrency).
      - `usage` integer — Current usage in this window
      - `limit` integer, nullable — Maximum allowed (null = default/unlimited)
    - `concurrency` RateLimitInfo — Rate limit for a single dimension (e.g. rpm, concurrency).
      - `usage` integer — Current usage in this window
      - `limit` integer, nullable — Maximum allowed (null = default/unlimited)
  - `auto_charge` AutoChargeInfo — Auto-charge configuration.
    - `enabled` boolean — Whether auto-charge is enabled
    - `threshold` integer, nullable — Balance threshold
    - `amount` integer, nullable — Top-up amount
  - `created_at` string, nullable — Account creation timestamp
  - `updated_at` string, nullable — Last update timestamp

---

[API](https://skmtc.dev/beeble/apis/beeble-developer-api.md) · [All operations](https://skmtc.dev/beeble/apis/beeble-developer-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/beeble/beeble-developer-api/revisions/f35ce0de5d00/schema)
