---
title: "Set an organization's allowance for one quota pool"
method: PUT
path: "/api/{org_id}/quota/{pool}/usage_limit"
tags: ["Organizations"]
---

# Set an organization's allowance for one quota pool

`PUT /api/{org_id}/quota/{pool}/usage_limit`

## Request

- Base URL: `https://api.openobserve.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.openobserve.ai/api/{org_id}/quota/{pool}/usage_limit`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/openobserve/apis/openobserve-api-http/docs/api/:org_id/quota/:pool/usage_limit/put.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `org_id` string, required
- `pool` string, required

## Request body

- object: `limit` is the pool's new ceiling, not an increment (spent 40 of 50, +20 => 70).
  - `limit` integer, required
  - `org_id` string, required

## Response `200`

Updated pool usage

- PoolUsageResponse: One pool's usage for an org. Field names are unit-neutral because AI counts credits and synthetics counts steps.
  - `limit` integer, required
  - `mode` string, required: `"free"` | `"consent_required"` | `"pay_as_you_go"` | `"exhausted"`.
  - `payer_org_id` string, nullable
  - `pool` string, required: Stable pool identifier — one of [`TrialQuotaPool::ALL_POOLS`]' keys.
  - `remaining` integer, required
  - `requires_additional_credits` boolean, required
  - `used` integer, required

## Other responses

- `400`: Unknown pool
- `401`: Unauthorized
- `404`: Organization not found

---

[API](https://skmtc.dev/openobserve/apis/openobserve-api-http.md) - [All operations](https://skmtc.dev/openobserve/apis/openobserve-api-http/llms.txt) - [OpenAPI document](https://skmtc.dev/openobserve/apis/openobserve-api-http/revisions/0529b8a10252?raw)
