Turn a Rate Limit Rule On or Off

PUT /v1/firewall/rate-limits/{uuid}/toggle

Set only a rule's status, without sending the full record that Update Rate Limit Rule requires. Only active rules are enforced: inactive and disabled both stop the rule and keep it, with its conditions, for later. The status=inactive filter of List Rate Limits returns both.

The change is announced to the edges in every region as soon as it is saved. Requires the rate_limits:update permission in the active account and the custom_rate_limits entitlement.

Path parameters

uuid string (uuid) Req
The rule's uuid from List Rate Limits.

Deprecated: the legacy integer id is still accepted in the path until the sunset, answered with Deprecation and Sunset headers. Use the uuid.

Request body

status string Req
active, inactive or disabled (lowercase).

Response (200 OK)

status string
The status you set.

Errors

400 Bad Request
Invalid JSON (Invalid JSON), any other status (status must be active, inactive, or disabled), or an integer id after the sunset (integer_id_unsupported).
401 Unauthorized
Missing or invalid auth.
403 Forbidden
Your role lacks rate_limits:update; your plan doesn't include custom_rate_limits ("code": "entitlement_required"); or the account is suspended (account_suspended).
404 Not Found
Rate limit rule not found — no such rule in the active account.
409 Conflict
quota_paused: the rule is paused over your plan's limits and is read-only.
415 Unsupported Media Type
The request has no Content-Type: application/json header.
Request — turn the rule off
curl -X PUT "https://api.ngris.com/v1/firewall/rate-limits/019ba36e-e098-77b3-9442-42b30e58d656/toggle" \ -H "X-API-KEY: <your_api_key>" \ -H "Content-Type: application/json" \ -d '{"status": "inactive"}'
Response — 200 OK
{ "status": "inactive" }