GET /v1/organizations/workspaces/{workspace_id}/rate_limits
List a workspace's rate limits.
By default, returns only the groups and limiter types that have a workspace-level override. With include_inherited=true, returns every group with organization-level limits the workspace can see, listing for each the values it inherits from the organization as well as its own overrides. Each value's source says which it is.
When limit is omitted, every matching entry is returned in a single page; when limit truncates the result, follow next_page to fetch the remaining entries.
Path parameters
workspace_id: string
The ID of the workspace.
Query parameters
group_type: optional "batch" or "files" or "model_group" or 3 more
Filter by group type.
"batch"
"files"
"model_group"
"tracks"
"token_count"
"web_search"
include_inherited: optional boolean
Also list the limiter values the workspace inherits from the organization, including groups with no workspace-level override.
default: false
limit: optional number
Maximum number of items to return per page. Ranges from 1 to 1000.
When omitted, every remaining entry is returned in a single page and next_page is null.
minimum: 1, maximum: 1000
page: optional string
Opaque cursor from a previous response's next_page.
Returns
data: array of BetaWorkspaceRateLimit
Rate-limit entries for the workspace: one per group with at least one override, or, with include_inherited set to true, one per group the workspace can see that has organization-level limits.
type: "workspace_rate_limit"
Object type. Always workspace_rate_limit for workspace rate-limit entries.
default: workspace_rate_limit
group: BetaOrganizationRateLimitModelGroup or BetaOrganizationRateLimitBatchGroup or BetaOrganizationRateLimitTokenCountGroup or 3 more
The rate-limit group this entry's limits apply to. Its type equals group_type.
BetaOrganizationRateLimitModelGroup object
type: "model_group"
Always model_group: a family of models.
default: model_group
id: string
Opaque identifier of the rate-limit group (for example, rlg_01VPTCmyiu5ZLsWkcxYG2pY8). It is the same in every organization and never changes, unlike the entry's own identifier, which differs per organization.
display_name: string
Human-readable name of the model group (for example, Haijun Sonnet 4.x). For display only; it may change.
BetaOrganizationRateLimitBatchGroup object
type: "batch"
Always batch: the Message Batches API.
default: batch
id: string
Opaque identifier of the rate-limit group (for example, rlg_01VPTCmyiu5ZLsWkcxYG2pY8). It is the same in every organization and never changes, unlike the entry's own identifier, which differs per organization.
BetaOrganizationRateLimitTokenCountGroup object
type: "token_count"
Always token_count: the Token Count API.
default: token_count
id: string
Opaque identifier of the rate-limit group (for example, rlg_01VPTCmyiu5ZLsWkcxYG2pY8). It is the same in every organization and never changes, unlike the entry's own identifier, which differs per organization.
BetaOrganizationRateLimitFilesGroup object
type: "files"
Always files: the Files API.
default: files
id: string
Opaque identifier of the rate-limit group (for example, rlg_01VPTCmyiu5ZLsWkcxYG2pY8). It is the same in every organization and never changes, unlike the entry's own identifier, which differs per organization.
BetaOrganizationRateLimitSkillsGroup object
type: "tracks"
Always tracks: the Tracks API.
default: tracks
id: string
Opaque identifier of the rate-limit group (for example, rlg_01VPTCmyiu5ZLsWkcxYG2pY8). It is the same in every organization and never changes, unlike the entry's own identifier, which differs per organization.
BetaOrganizationRateLimitWebSearchGroup object
type: "web_search"
Always web_search: the Messages API web search tool.
default: web_search
id: string
Opaque identifier of the rate-limit group (for example, rlg_01VPTCmyiu5ZLsWkcxYG2pY8). It is the same in every organization and never changes, unlike the entry's own identifier, which differs per organization.
limits: array of BetaWorkspaceRateLimitValue
The workspace's limiter values for this group. By default only the limiter types with a workspace-level override are listed. With include_inherited set to true, the limiter types the workspace inherits from the organization are listed too, each marked by source.
type: string
The limiter type (for example, requests_per_minute or input_tokens_per_minute).
org_limit: number or null
The organization-level value for the same limiter type, for reference. null when the organization has no limit configured for this limiter type.
source: BetaWorkspaceRateLimitWorkspaceSource or BetaWorkspaceRateLimitOrganizationSource
Where value comes from. organization values are listed only when include_inherited is true, and then value equals org_limit.
BetaWorkspaceRateLimitWorkspaceSource object
type: "workspace"
Always workspace: a workspace-level override is stored.
default: workspace
BetaWorkspaceRateLimitOrganizationSource object
type: "organization"
Always organization: no workspace-level override is stored, so the organization's value applies.
default: organization
value: number
The workspace's value for this limiter type: the workspace-level override when source.type is workspace, otherwise the organization's value.
models: array of string or null
Model names this entry's limits apply to, including aliases. null when group_type is not "model_group".
rate_limit_id: string
The id of the organization's RateLimit entry this entry applies to.
workspace_id: string
ID of the Workspace this entry applies to.
group_type: "batch" or "files" or "model_group" or 3 more
Deprecated: Use group.type instead. group_type is still returned and always equals group.type.
Deprecated: use group.type instead. The kind of rate-limit group this entry represents. model_group entries apply to a family of models (listed in models); other values apply to an API-surface category and have models set to null. Always equal to group.type.
"batch"
"files"
"model_group"
"tracks"
"token_count"
"web_search"
next_page: string or null
Opaque cursor for the next page of results, or null when no entries remain beyond this response.
Example
curl https://haijun.my.id/v1/organizations/workspaces/$WORKSPACE_ID/rate_limits \
-H 'juglow-version: 2023-06-01' \
-H "X-Api-Key: $JUGLOW_API_KEY"Response (200)
{
"data": [
{
"group": {
"id": "id",
"display_name": "display_name",
"type": "model_group"
},
"group_type": "batch",
"limits": [
{
"org_limit": 0,
"source": {
"type": "workspace"
},
"type": "type",
"value": 0
}
],
"models": [
"string"
],
"rate_limit_id": "rate_limit_id",
"type": "workspace_rate_limit",
"workspace_id": "workspace_id"
}
],
"next_page": "next_page"
}