Skip to content

Rate Limits

GET/admin/rate-limits
GET
/admin/rate-limits

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Response Body

application/json

curl -X GET "https://example.com/admin/rate-limits"
{  "default_tier": {    "created_at": "2019-08-24T14:15:22Z",    "id": "string",    "max_requests": 0,    "name": "string",    "tier_type": "default",    "updated_at": "2019-08-24T14:15:22Z",    "window_seconds": 0  },  "endpoint_tiers": [    {      "created_at": "2019-08-24T14:15:22Z",      "id": "string",      "max_requests": 0,      "name": "string",      "tier_type": "default",      "updated_at": "2019-08-24T14:15:22Z",      "window_seconds": 0    }  ],  "support_tiers": [    {      "created_at": "2019-08-24T14:15:22Z",      "description": "string",      "max_requests": 0,      "name": "string",      "updated_at": "2019-08-24T14:15:22Z",      "window_seconds": 0    }  ],  "user_count": 0}
POST/admin/rate-limits/cache/clear
POST
/admin/rate-limits/cache/clear

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Response Body

curl -X POST "https://example.com/admin/rate-limits/cache/clear"
Empty
GET/admin/rate-limits/support-tiers
GET
/admin/rate-limits/support-tiers

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Query Parameters

filter?

Conditions as filter[][]=. Conditions on different fields all apply. in (any of) and all (every one of, on fields holding several values) take a comma-separated list (\, for a literal comma). exists takes true or false. Datetimes are RFC 3339, now, or a time before now such as -30m, -6h or -7d.

sort?string

Comma-separated sort keys, - for descending, at most 1. Keys: created_at, name. Default: name.

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

page?integer

A 1-based page number, for jumping. Cannot be combined with cursor.

Range1 <= value
total?boolean

Set to true to include the number of matching rows in page.total.

Response Body

application/json

curl -X GET "https://example.com/admin/rate-limits/support-tiers"
{  "page": {    "has_more": true,    "next_cursor": "string",    "page": 0,    "total": 0  },  "tiers": [    {      "created_at": "2019-08-24T14:15:22Z",      "description": "string",      "max_requests": 0,      "name": "string",      "updated_at": "2019-08-24T14:15:22Z",      "window_seconds": 0    }  ]}
POST/admin/rate-limits/support-tiers
POST
/admin/rate-limits/support-tiers

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to create a support tier

Response Body

application/json

curl -X POST "https://example.com/admin/rate-limits/support-tiers" \  -H "Content-Type: application/json" \  -d '{    "max_requests": 0,    "name": "string",    "window_seconds": 0  }'
{  "created_at": "2019-08-24T14:15:22Z",  "description": "string",  "max_requests": 0,  "name": "string",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
GET/admin/rate-limits/support-tiers/{tier_name}
GET
/admin/rate-limits/support-tiers/{tier_name}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

tier_name*string

Tier name

Response Body

application/json

curl -X GET "https://example.com/admin/rate-limits/support-tiers/string"
{  "created_at": "2019-08-24T14:15:22Z",  "description": "string",  "max_requests": 0,  "name": "string",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
DELETE/admin/rate-limits/support-tiers/{tier_name}
DELETE
/admin/rate-limits/support-tiers/{tier_name}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

tier_name*string

Tier name

Response Body

curl -X DELETE "https://example.com/admin/rate-limits/support-tiers/string"
Empty
PUT/admin/rate-limits/support-tiers/{tier_name}
PUT
/admin/rate-limits/support-tiers/{tier_name}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

tier_name*string

Tier name

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to update a support tier

Response Body

application/json

curl -X PUT "https://example.com/admin/rate-limits/support-tiers/string" \  -H "Content-Type: application/json" \  -d '{    "max_requests": 0,    "window_seconds": 0  }'
{  "created_at": "2019-08-24T14:15:22Z",  "description": "string",  "max_requests": 0,  "name": "string",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
GET/admin/rate-limits/tiers/default
GET
/admin/rate-limits/tiers/default

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Response Body

application/json

curl -X GET "https://example.com/admin/rate-limits/tiers/default"
{  "created_at": "2019-08-24T14:15:22Z",  "id": "string",  "max_requests": 0,  "name": "string",  "tier_type": "default",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
PUT/admin/rate-limits/tiers/default
PUT
/admin/rate-limits/tiers/default

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to update the default rate limit tier

Response Body

application/json

curl -X PUT "https://example.com/admin/rate-limits/tiers/default" \  -H "Content-Type: application/json" \  -d '{    "max_requests": 0,    "window_seconds": 0  }'
{  "created_at": "2019-08-24T14:15:22Z",  "id": "string",  "max_requests": 0,  "name": "string",  "tier_type": "default",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
GET/admin/rate-limits/tiers/endpoints
GET
/admin/rate-limits/tiers/endpoints

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Query Parameters

filter?

Conditions as filter[][]=. Conditions on different fields all apply. in (any of) and all (every one of, on fields holding several values) take a comma-separated list (\, for a literal comma). exists takes true or false. Datetimes are RFC 3339, now, or a time before now such as -30m, -6h or -7d.

sort?string

Comma-separated sort keys, - for descending, at most 1. Keys: name, created_at. Default: -created_at.

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

page?integer

A 1-based page number, for jumping. Cannot be combined with cursor.

Range1 <= value
total?boolean

Set to true to include the number of matching rows in page.total.

Response Body

application/json

curl -X GET "https://example.com/admin/rate-limits/tiers/endpoints"
{  "page": {    "has_more": true,    "next_cursor": "string",    "page": 0,    "total": 0  },  "tiers": [    {      "created_at": "2019-08-24T14:15:22Z",      "id": "string",      "max_requests": 0,      "name": "string",      "tier_type": "default",      "updated_at": "2019-08-24T14:15:22Z",      "window_seconds": 0    }  ]}
POST/admin/rate-limits/tiers/endpoints
POST
/admin/rate-limits/tiers/endpoints

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to create an endpoint rate limit tier

Response Body

application/json

curl -X POST "https://example.com/admin/rate-limits/tiers/endpoints" \  -H "Content-Type: application/json" \  -d '{    "endpoint_path": "string",    "max_requests": 0,    "window_seconds": 0  }'
{  "created_at": "2019-08-24T14:15:22Z",  "id": "string",  "max_requests": 0,  "name": "string",  "tier_type": "default",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
GET/admin/rate-limits/tiers/endpoints/{endpoint_path}
GET
/admin/rate-limits/tiers/endpoints/{endpoint_path}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

endpoint_path*string

Endpoint path

Response Body

application/json

curl -X GET "https://example.com/admin/rate-limits/tiers/endpoints/string"
{  "created_at": "2019-08-24T14:15:22Z",  "id": "string",  "max_requests": 0,  "name": "string",  "tier_type": "default",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
DELETE/admin/rate-limits/tiers/endpoints/{endpoint_path}
DELETE
/admin/rate-limits/tiers/endpoints/{endpoint_path}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

endpoint_path*string

Endpoint path

Response Body

curl -X DELETE "https://example.com/admin/rate-limits/tiers/endpoints/string"
Empty
PUT/admin/rate-limits/tiers/endpoints/{endpoint_path}
PUT
/admin/rate-limits/tiers/endpoints/{endpoint_path}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

endpoint_path*string

Endpoint path

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to update an endpoint rate limit tier

Response Body

application/json

curl -X PUT "https://example.com/admin/rate-limits/tiers/endpoints/string" \  -H "Content-Type: application/json" \  -d '{    "max_requests": 0,    "window_seconds": 0  }'
{  "created_at": "2019-08-24T14:15:22Z",  "id": "string",  "max_requests": 0,  "name": "string",  "tier_type": "default",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
GET/admin/rate-limits/tiers/modules
GET
/admin/rate-limits/tiers/modules

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Query Parameters

filter?

Conditions as filter[][]=. Conditions on different fields all apply. in (any of) and all (every one of, on fields holding several values) take a comma-separated list (\, for a literal comma). exists takes true or false. Datetimes are RFC 3339, now, or a time before now such as -30m, -6h or -7d.

sort?string

Comma-separated sort keys, - for descending, at most 1. Keys: name, created_at. Default: -created_at.

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

page?integer

A 1-based page number, for jumping. Cannot be combined with cursor.

Range1 <= value
total?boolean

Set to true to include the number of matching rows in page.total.

Response Body

application/json

curl -X GET "https://example.com/admin/rate-limits/tiers/modules"
{  "page": {    "has_more": true,    "next_cursor": "string",    "page": 0,    "total": 0  },  "tiers": [    {      "created_at": "2019-08-24T14:15:22Z",      "id": "string",      "max_requests": 0,      "name": "string",      "tier_type": "default",      "updated_at": "2019-08-24T14:15:22Z",      "window_seconds": 0    }  ]}
POST/admin/rate-limits/tiers/modules
POST
/admin/rate-limits/tiers/modules

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to create a module rate limit tier

Response Body

application/json

curl -X POST "https://example.com/admin/rate-limits/tiers/modules" \  -H "Content-Type: application/json" \  -d '{    "max_requests": 0,    "module": "string",    "window_seconds": 0  }'
{  "created_at": "2019-08-24T14:15:22Z",  "id": "string",  "max_requests": 0,  "name": "string",  "tier_type": "default",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
GET/admin/rate-limits/tiers/modules/{module}
GET
/admin/rate-limits/tiers/modules/{module}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

module*string

Module name

Response Body

application/json

curl -X GET "https://example.com/admin/rate-limits/tiers/modules/string"
{  "created_at": "2019-08-24T14:15:22Z",  "id": "string",  "max_requests": 0,  "name": "string",  "tier_type": "default",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
DELETE/admin/rate-limits/tiers/modules/{module}
DELETE
/admin/rate-limits/tiers/modules/{module}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

module*string

Module name

Response Body

curl -X DELETE "https://example.com/admin/rate-limits/tiers/modules/string"
Empty
PUT/admin/rate-limits/tiers/modules/{module}
PUT
/admin/rate-limits/tiers/modules/{module}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

module*string

Module name

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to update a module rate limit tier

Response Body

application/json

curl -X PUT "https://example.com/admin/rate-limits/tiers/modules/string" \  -H "Content-Type: application/json" \  -d '{    "max_requests": 0,    "window_seconds": 0  }'
{  "created_at": "2019-08-24T14:15:22Z",  "id": "string",  "max_requests": 0,  "name": "string",  "tier_type": "default",  "updated_at": "2019-08-24T14:15:22Z",  "window_seconds": 0}
GET/admin/rate-limits/users
GET
/admin/rate-limits/users

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Query Parameters

filter?

Conditions as filter[][]=. Conditions on different fields all apply. in (any of) and all (every one of, on fields holding several values) take a comma-separated list (\, for a literal comma). exists takes true or false. Datetimes are RFC 3339, now, or a time before now such as -30m, -6h or -7d.

sort?string

Comma-separated sort keys, - for descending, at most 1. Keys: tier, created_at. Default: -created_at.

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

page?integer

A 1-based page number, for jumping. Cannot be combined with cursor.

Range1 <= value
total?boolean

Set to true to include the number of matching rows in page.total.

Response Body

application/json

curl -X GET "https://example.com/admin/rate-limits/users"
{  "page": {    "has_more": true,    "next_cursor": "string",    "page": 0,    "total": 0  },  "users": [    {      "bypass": true,      "created_at": "2019-08-24T14:15:22Z",      "custom_limits": {        "property1": {          "max_requests": 0,          "window_seconds": 0        },        "property2": {          "max_requests": 0,          "window_seconds": 0        }      },      "tier": "string",      "updated_at": "2019-08-24T14:15:22Z",      "user_id": "string"    }  ]}
POST/admin/rate-limits/users
POST
/admin/rate-limits/users

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to create a user rate limit configuration

Response Body

application/json

curl -X POST "https://example.com/admin/rate-limits/users" \  -H "Content-Type: application/json" \  -d '{    "tier": "string",    "user_id": "string"  }'
{  "bypass": true,  "created_at": "2019-08-24T14:15:22Z",  "custom_limits": {    "property1": {      "max_requests": 0,      "window_seconds": 0    },    "property2": {      "max_requests": 0,      "window_seconds": 0    }  },  "tier": "string",  "updated_at": "2019-08-24T14:15:22Z",  "user_id": "string"}
GET/admin/rate-limits/users/{user_id}
GET
/admin/rate-limits/users/{user_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

user_id*string

User ID

Response Body

application/json

curl -X GET "https://example.com/admin/rate-limits/users/string"
{  "bypass": true,  "created_at": "2019-08-24T14:15:22Z",  "custom_limits": {    "property1": {      "max_requests": 0,      "window_seconds": 0    },    "property2": {      "max_requests": 0,      "window_seconds": 0    }  },  "tier": "string",  "updated_at": "2019-08-24T14:15:22Z",  "user_id": "string"}
DELETE/admin/rate-limits/users/{user_id}
DELETE
/admin/rate-limits/users/{user_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

user_id*string

User ID

Response Body

curl -X DELETE "https://example.com/admin/rate-limits/users/string"
Empty
PUT/admin/rate-limits/users/{user_id}
PUT
/admin/rate-limits/users/{user_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

user_id*string

User ID

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to update a user rate limit configuration

Response Body

application/json

curl -X PUT "https://example.com/admin/rate-limits/users/string" \  -H "Content-Type: application/json" \  -d '{}'
{  "bypass": true,  "created_at": "2019-08-24T14:15:22Z",  "custom_limits": {    "property1": {      "max_requests": 0,      "window_seconds": 0    },    "property2": {      "max_requests": 0,      "window_seconds": 0    }  },  "tier": "string",  "updated_at": "2019-08-24T14:15:22Z",  "user_id": "string"}
GET/api/v1/rate-limits/me
GET
/api/v1/rate-limits/me

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Query Parameters

endpoint?string

Endpoint to resolve the limit against (defaults to the global budget)

Response Body

application/json

curl -X GET "https://example.com/api/v1/rate-limits/me"
{  "bypass": true,  "endpoint": "string",  "endpoint_override_active": true,  "limit": 0,  "principal_id": "string",  "window_seconds": 0}