Surge protection
Visitor Queue
Visitor Queue parks excess sessions when a path exceeds its budget. Estimated wait, bypass for signed-in teammates, and a branded holding page keep origin inside its limits. This is a Cloudflare Cloudflare Waiting Room alternative included on every Zipper plan.
Cloudflare analogue: Cloudflare Waiting Room
What it is
Visitor Queue parks excess sessions when a path exceeds its budget. Estimated wait, bypass for signed-in teammates, and a branded holding page keep origin inside its limits.
Cloudflare analogue: Cloudflare Waiting Room. SLA 99.99% · p99 12ms. Operators tune the budget. Admins attach queues to paths.
- ▸Session budget
- ▸Estimated wait
- ▸Bypass cookies
- ▸Origin protection
How it works
When concurrent origin sessions exceed the budget, extra visitors see a holding page with estimated wait.
Signed-in operators can bypass. Attach one queue per path.
Use cases
Concrete ways teams use this service on day one.
Ticket drop / flash sale
/checkout would melt origin at 800 concurrent sessions.
- Open a Visitor Queue on /checkout, budget 800, estimated wait on, bypass signed-in on.
Set it up in the dashboard
Dashboard → Services → Visitor Queue. Name, path, starting queue size (usually 0).
API
Control-plane: GET|POST /api/v1/waiting. Send Authorization: Bearer tz_live_YOUR_TOKEN.
Creates count against the plan quota. A 402 plan_limit means you are at the cap — upgrade or delete an unused resource.
Attach a queue
curl -sS -X POST https://tinyzipper.com/api/v1/waiting \
-H "Authorization: Bearer tz_live_YOUR_TOKEN" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"name":"Checkout","path":"/checkout","queue_size":0}'List the same resource in JavaScript
const res = await fetch("https://tinyzipper.com/api/v1/waiting", {
method: "GET",
headers: {
Authorization: `Bearer ${process.env.ZIPPER_TOKEN}`,
"Content-Type": "application/json"
}
});
const json = await res.json();
if (!res.ok) throw new Error(json.error ?? res.statusText);
console.log(json);Tips
Set the budget to measured origin capacity, not a guess. Watchtower shows queue depth.
- ▸SOC 2
- ▸Queue fairness
Runbook
Set the session budget to origin capacity. Enable estimated wait. Bypass only signed-in operators.
Next: Getting started · All docs · Create a free account