Cloudflare Waiting Room

cloudflareRate limitercloudflare-waiting-room

Edge queue that caps concurrent users and admits new visitors to the origin at a fixed rate.

Provider
cloudflare
Category
Edge
Properties · 4 set by this component
propertytypevaluesrequiredkind defaultthis component
algorithmenumtoken-bucket | leaky-bucket | sliding-window | fixed-window | adaptivenotoken-bucket▸ fixed-window
atomicOps · advancedboolean—notrueinherited
distributedboolean—nofalse▸ true
failModeenumopen | closednoopeninherited
jsonResponseEnabled · component propertyboolean—nofalseinherited
managedboolean—nofalse▸ true
placementenumedge | gateway | sidecar | in-processnogateway▸ edge
queueingMethod · component propertyenumfifo | random | passthrough | rejectnofifoinherited
queueingStatusCode · component propertyinteger—no200inherited
scopeenumglobal | user | ip | api-key | concurrencynouserinherited
sessionDurationMinutes · component propertyinteger—no5inherited
Rules that apply · 0

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

No rule reads this kind yet. That is a gap, not a guarantee.
Use it in a design
nodes:
  - { id: "waiting-room", component: "cloudflare-waiting-room" }
Other Rate limiter products · 6
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Cloudflare Waiting Room: edge queue that admits a fixed number of new users per minute to an origin.
# "Waiting Room configuration settings": session duration defaults to 5 minutes, the queueing status
# code to 200, and total active users has a minimum of 200. FIFO is the queueing method for all plans.
schemaVersion: "1"
type: "component"
id: "cloudflare-waiting-room"
kind: "rate-limiter"
provider: "cloudflare"
docs: "https://developers.cloudflare.com/waiting-room/reference/configuration-settings/"
defaults:
  managed: true
  algorithm: "fixed-window"
  placement: "edge"
  distributed: true
properties:
  queueingMethod:
    type: "enum"
    values: ["fifo", "random", "passthrough", "reject"]
    default: "fifo"
  sessionDurationMinutes:
    type: "integer"
    default: 5
  queueingStatusCode:
    type: "integer"
    default: 200
  jsonResponseEnabled:
    type: "boolean"
    default: false

The same page as markdown, for an agent: /catalogue/components/cloudflare-waiting-room.md