---
title: Waiting Rooms
---

[Skip to content](#_top)

[API Reference](https://developers.cloudflare.com/api/go)

Copy Markdown

Open in **Claude**Open in **ChatGPT**Open in **Cursor**

---

**Copy Markdown****View as Markdown**

# Waiting Rooms

##### [List waiting rooms for account or zone](https://developers.cloudflare.com/api/go/resources/waiting_rooms/methods/list)

client.WaitingRooms.List(ctx, params) (\*V4PagePaginationArray\[[WaitingRoom](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)>)], error)

GET/{accounts\_or\_zones}/{account\_or\_zone\_id}/waiting\_rooms

##### [Waiting room details](https://developers.cloudflare.com/api/go/resources/waiting_rooms/methods/get)

client.WaitingRooms.Get(ctx, waitingRoomID, query) (\*[WaitingRoom](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)>), error)

GET/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}

##### [Create waiting room](https://developers.cloudflare.com/api/go/resources/waiting_rooms/methods/create)

client.WaitingRooms.New(ctx, params) (\*[WaitingRoom](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)>), error)

POST/zones/{zone\_id}/waiting\_rooms

##### [Update waiting room](https://developers.cloudflare.com/api/go/resources/waiting_rooms/methods/update)

client.WaitingRooms.Update(ctx, waitingRoomID, params) (\*[WaitingRoom](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)>), error)

PUT/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}

##### [Patch waiting room](https://developers.cloudflare.com/api/go/resources/waiting_rooms/methods/edit)

client.WaitingRooms.Edit(ctx, waitingRoomID, params) (\*[WaitingRoom](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)>), error)

PATCH/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}

##### [Delete waiting room](https://developers.cloudflare.com/api/go/resources/waiting_rooms/methods/delete)

client.WaitingRooms.Delete(ctx, waitingRoomID, body) (\*[WaitingRoomDeleteResponse](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms%20%3E%20(model)%20WaitingRoomDeleteResponse%20%3E%20(schema)>), error)

DELETE/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}

##### ModelsExpand Collapse

<details>

<summary>

type AdditionalRoutes struct{…}

</summary>

Host stringOptional

The hostname to which this waiting room will be applied (no wildcards). The hostname must be the primary domain, subdomain, or custom hostname (if using SSL for SaaS) of this zone. Please do not include the scheme (http:// or https://).

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20additional_routes%20%3E%20(schema)%20%3E%20(property)%20host">Link to this property</a>

Path stringOptional

Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20additional_routes%20%3E%20(schema)%20%3E%20(property)%20path">Link to this property</a>

</details>

[Link to this property](<#(resource)%20waiting_rooms%20%3E%20(model)%20additional_routes%20%3E%20(schema)>)

<details>

<summary>

type CookieAttributes struct{…}

Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user’s status in the waiting room, such as queue position.

</summary>

<details>

<summary>

Samesite CookieAttributesSamesiteOptional

Configures the SameSite attribute on the waiting room cookie. Value <code>auto</code> will be translated to <code>lax</code> or <code>none</code> depending if **Always Use HTTPS** is enabled. Note that when using value <code>none</code>, the secure attribute cannot be set to <code>never</code>.

</summary>

One of the following:

const CookieAttributesSamesiteAuto CookieAttributesSamesite = "auto"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)%20%3E%20(property)%20samesite%20%3E%20(member)%200">Link to this property</a>

const CookieAttributesSamesiteLax CookieAttributesSamesite = "lax"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)%20%3E%20(property)%20samesite%20%3E%20(member)%201">Link to this property</a>

const CookieAttributesSamesiteNone CookieAttributesSamesite = "none"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)%20%3E%20(property)%20samesite%20%3E%20(member)%202">Link to this property</a>

const CookieAttributesSamesiteStrict CookieAttributesSamesite = "strict"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)%20%3E%20(property)%20samesite%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)%20%3E%20(property)%20samesite">Link to this property</a>

<details>

<summary>

Secure CookieAttributesSecureOptional

Configures the Secure attribute on the waiting room cookie. Value <code>always</code> indicates that the Secure attribute will be set in the Set-Cookie header, <code>never</code> indicates that the Secure attribute will not be set, and <code>auto</code> will set the Secure attribute depending if **Always Use HTTPS** is enabled.

</summary>

One of the following:

const CookieAttributesSecureAuto CookieAttributesSecure = "auto"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)%20%3E%20(property)%20secure%20%3E%20(member)%200">Link to this property</a>

const CookieAttributesSecureAlways CookieAttributesSecure = "always"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)%20%3E%20(property)%20secure%20%3E%20(member)%201">Link to this property</a>

const CookieAttributesSecureNever CookieAttributesSecure = "never"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)%20%3E%20(property)%20secure%20%3E%20(member)%202">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)%20%3E%20(property)%20secure">Link to this property</a>

</details>

[Link to this property](<#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)>)

<details>

<summary>

type Query struct{…}

</summary>

Host string

The host name to which the waiting room will be applied (no wildcards). Please do not include the scheme (http:// or https://). The host and path combination must be unique.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20host">Link to this property</a>

Name string

A unique name to identify the waiting room. Only alphanumeric characters, hyphens and underscores are allowed.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20name">Link to this property</a>

NewUsersPerMinute int64

Sets the number of new users that will be let into the route every minute. This value is used as baseline for the number of users that are let in per minute. So it is possible that there is a little more or little less traffic coming to the route based on the traffic patterns at that time around the world.

maximum2147483647

minimum200

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20new_users_per_minute">Link to this property</a>

TotalActiveUsers int64

Sets the total number of active user sessions on the route at a point in time. A route is a combination of host and path on which a waiting room is available. This value is used as a baseline for the total number of active user sessions on the route. It is possible to have a situation where there are more or less active users sessions on the route based on the traffic patterns at that time around the world.

maximum2147483647

minimum200

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20total_active_users">Link to this property</a>

<details>

<summary>

AdditionalRoutes \[]<a href="https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms%20%3E%20(model)%20additional_routes%20%3E%20(schema)">AdditionalRoutes</a>Optional

Only available for the Waiting Room Advanced subscription. Additional hostname and path combinations to which this waiting room will be applied. There is an implied wildcard at the end of the path. The hostname and path combination must be unique to this and all other waiting rooms.

</summary>

Host stringOptional

The hostname to which this waiting room will be applied (no wildcards). The hostname must be the primary domain, subdomain, or custom hostname (if using SSL for SaaS) of this zone. Please do not include the scheme (http:// or https://).

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20additional_routes%20%3E%20(schema)%20%3E%20(property)%20host">Link to this property</a>

Path stringOptional

Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20additional_routes%20%3E%20(schema)%20%3E%20(property)%20path">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20additional_routes">Link to this property</a>

CookieAttributes <a href="https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)">CookieAttributes</a>Optional

Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user’s status in the waiting room, such as queue position.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20cookie_attributes">Link to this property</a>

CookieSuffix stringOptional

Appends a ’\_’ + a custom suffix to the end of Cloudflare Waiting Room’s cookie name(\_\_cf\_waitingroom). If <code>cookie_suffix</code> is “abcd”, the cookie name will be <code>__cf_waitingroom_abcd</code>. This field is required if using <code>additional_routes</code>.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20cookie_suffix">Link to this property</a>

CustomPageHTML stringOptional

Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom\_page\_html is provided, the default waiting room will be used. The template is based on mustache ( <a href="https://mustache.github.io/">https://mustache.github.io/</a> ). There are several variables that are evaluated by the Cloudflare edge:

1. {{<code>waitTimeKnown</code>}} Acts like a boolean value that indicates the behavior to take when wait time is not available, for instance when queue\_all is **true**.
2. {{<code>waitTimeFormatted</code>}} Estimated wait time for the user. For example, five minutes. Alternatively, you can use:
3. {{<code>waitTime</code>}} Number of minutes of estimated wait for a user.
4. {{<code>waitTimeHours</code>}} Number of hours of estimated wait for a user (<code>Math.floor(waitTime/60)</code>).
5. {{<code>waitTimeHourMinutes</code>}} Number of minutes above the <code>waitTimeHours</code> value (<code>waitTime%60</code>).
6. {{<code>queueIsFull</code>}} Changes to **true** when no more people can be added to the queue.

To view the full list of variables, look at the <code>cfWaitingRoom</code> object described under the <code>json_response_enabled</code> property in other Waiting Room API calls.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20custom_page_html">Link to this property</a>

<details>

<summary>

DefaultTemplateLanguage QueryDefaultTemplateLanguageOptional

The language of the default page template. If no default\_template\_language is provided, then <code>en-US</code> (English) will be used.

</summary>

One of the following:

const QueryDefaultTemplateLanguageEnUs QueryDefaultTemplateLanguage = "en-US"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%200">Link to this property</a>

const QueryDefaultTemplateLanguageEsEs QueryDefaultTemplateLanguage = "es-ES"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%201">Link to this property</a>

const QueryDefaultTemplateLanguageDeDe QueryDefaultTemplateLanguage = "de-DE"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%202">Link to this property</a>

const QueryDefaultTemplateLanguageFrFr QueryDefaultTemplateLanguage = "fr-FR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%203">Link to this property</a>

const QueryDefaultTemplateLanguageItIt QueryDefaultTemplateLanguage = "it-IT"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%204">Link to this property</a>

const QueryDefaultTemplateLanguageJaJp QueryDefaultTemplateLanguage = "ja-JP"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%205">Link to this property</a>

const QueryDefaultTemplateLanguageKoKr QueryDefaultTemplateLanguage = "ko-KR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%206">Link to this property</a>

const QueryDefaultTemplateLanguagePtBr QueryDefaultTemplateLanguage = "pt-BR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%207">Link to this property</a>

const QueryDefaultTemplateLanguageZhCn QueryDefaultTemplateLanguage = "zh-CN"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%208">Link to this property</a>

const QueryDefaultTemplateLanguageZhTw QueryDefaultTemplateLanguage = "zh-TW"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%209">Link to this property</a>

const QueryDefaultTemplateLanguageNlNl QueryDefaultTemplateLanguage = "nl-NL"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2010">Link to this property</a>

const QueryDefaultTemplateLanguagePlPl QueryDefaultTemplateLanguage = "pl-PL"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2011">Link to this property</a>

const QueryDefaultTemplateLanguageIDID QueryDefaultTemplateLanguage = "id-ID"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2012">Link to this property</a>

const QueryDefaultTemplateLanguageTrTr QueryDefaultTemplateLanguage = "tr-TR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2013">Link to this property</a>

const QueryDefaultTemplateLanguageArEg QueryDefaultTemplateLanguage = "ar-EG"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2014">Link to this property</a>

const QueryDefaultTemplateLanguageRuRu QueryDefaultTemplateLanguage = "ru-RU"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2015">Link to this property</a>

const QueryDefaultTemplateLanguageFaIr QueryDefaultTemplateLanguage = "fa-IR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2016">Link to this property</a>

const QueryDefaultTemplateLanguageBgBg QueryDefaultTemplateLanguage = "bg-BG"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2017">Link to this property</a>

const QueryDefaultTemplateLanguageHrHr QueryDefaultTemplateLanguage = "hr-HR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2018">Link to this property</a>

const QueryDefaultTemplateLanguageCsCz QueryDefaultTemplateLanguage = "cs-CZ"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2019">Link to this property</a>

const QueryDefaultTemplateLanguageDaDK QueryDefaultTemplateLanguage = "da-DK"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2020">Link to this property</a>

const QueryDefaultTemplateLanguageFiFi QueryDefaultTemplateLanguage = "fi-FI"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2021">Link to this property</a>

const QueryDefaultTemplateLanguageLtLt QueryDefaultTemplateLanguage = "lt-LT"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2022">Link to this property</a>

const QueryDefaultTemplateLanguageLvLv QueryDefaultTemplateLanguage = "lv-LV"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2023">Link to this property</a>

const QueryDefaultTemplateLanguageMsMy QueryDefaultTemplateLanguage = "ms-MY"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2024">Link to this property</a>

const QueryDefaultTemplateLanguageNbNo QueryDefaultTemplateLanguage = "nb-NO"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2025">Link to this property</a>

const QueryDefaultTemplateLanguageRoRo QueryDefaultTemplateLanguage = "ro-RO"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2026">Link to this property</a>

const QueryDefaultTemplateLanguageElGr QueryDefaultTemplateLanguage = "el-GR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2027">Link to this property</a>

const QueryDefaultTemplateLanguageHeIl QueryDefaultTemplateLanguage = "he-IL"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2028">Link to this property</a>

const QueryDefaultTemplateLanguageHiIn QueryDefaultTemplateLanguage = "hi-IN"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2029">Link to this property</a>

const QueryDefaultTemplateLanguageHuHu QueryDefaultTemplateLanguage = "hu-HU"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2030">Link to this property</a>

const QueryDefaultTemplateLanguageSrBa QueryDefaultTemplateLanguage = "sr-BA"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2031">Link to this property</a>

const QueryDefaultTemplateLanguageSkSk QueryDefaultTemplateLanguage = "sk-SK"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2032">Link to this property</a>

const QueryDefaultTemplateLanguageSlSi QueryDefaultTemplateLanguage = "sl-SI"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2033">Link to this property</a>

const QueryDefaultTemplateLanguageSvSe QueryDefaultTemplateLanguage = "sv-SE"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2034">Link to this property</a>

const QueryDefaultTemplateLanguageTlPh QueryDefaultTemplateLanguage = "tl-PH"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2035">Link to this property</a>

const QueryDefaultTemplateLanguageThTh QueryDefaultTemplateLanguage = "th-TH"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2036">Link to this property</a>

const QueryDefaultTemplateLanguageUkUA QueryDefaultTemplateLanguage = "uk-UA"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2037">Link to this property</a>

const QueryDefaultTemplateLanguageViVn QueryDefaultTemplateLanguage = "vi-VN"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2038">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20default_template_language">Link to this property</a>

Description stringOptional

A note that you can use to add more details about the waiting room.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20description">Link to this property</a>

DisableSessionRenewal boolOptional

Only available for the Waiting Room Advanced subscription. Disables automatic renewal of session cookies. If <code>true</code>, an accepted user will have session\_duration minutes to browse the site. After that, they will have to go through the waiting room again. If <code>false</code>, a user’s session cookie will be automatically renewed on every request.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20disable_session_renewal">Link to this property</a>

EnabledOriginCommands \[]QueryEnabledOriginCommandOptional

A list of enabled origin commands.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20enabled_origin_commands">Link to this property</a>

JsonResponseEnabled boolOptional

Only available for the Waiting Room Advanced subscription. If <code>true</code>, requests to the waiting room with the header <code>Accept: application/json</code> will receive a JSON response object with information on the user’s status in the waiting room as opposed to the configured static HTML page. This JSON response object has one property <code>cfWaitingRoom</code> which is an object containing the following fields:

1. <code>inWaitingRoom</code>: Boolean indicating if the user is in the waiting room (always **true**).
2. <code>waitTimeKnown</code>: Boolean indicating if the current estimated wait times are accurate. If **false**, they are not available.
3. <code>waitTime</code>: Valid only when <code>waitTimeKnown</code> is **true**. Integer indicating the current estimated time in minutes the user will wait in the waiting room. When <code>queueingMethod</code> is **random**, this is set to <code>waitTime50Percentile</code>.
4. <code>waitTime25Percentile</code>: Valid only when <code>queueingMethod</code> is **random** and <code>waitTimeKnown</code> is **true**. Integer indicating the current estimated maximum wait time for the 25% of users that gain entry the fastest (25th percentile).
5. <code>waitTime50Percentile</code>: Valid only when <code>queueingMethod</code> is **random** and <code>waitTimeKnown</code> is **true**. Integer indicating the current estimated maximum wait time for the 50% of users that gain entry the fastest (50th percentile). In other words, half of the queued users are expected to let into the origin website before <code>waitTime50Percentile</code> and half are expected to be let in after it.
6. <code>waitTime75Percentile</code>: Valid only when <code>queueingMethod</code> is **random** and <code>waitTimeKnown</code> is **true**. Integer indicating the current estimated maximum wait time for the 75% of users that gain entry the fastest (75th percentile).
7. <code>waitTimeFormatted</code>: String displaying the <code>waitTime</code> formatted in English for users. If <code>waitTimeKnown</code> is **false**, <code>waitTimeFormatted</code> will display **unavailable**.
8. <code>queueIsFull</code>: Boolean indicating if the waiting room’s queue is currently full and not accepting new users at the moment.
9. <code>queueAll</code>: Boolean indicating if all users will be queued in the waiting room and no one will be let into the origin website.
10. <code>lastUpdated</code>: String displaying the timestamp as an ISO 8601 string of the user’s last attempt to leave the waiting room and be let into the origin website. The user is able to make another attempt after <code>refreshIntervalSeconds</code> past this time. If the user makes a request too soon, it will be ignored and <code>lastUpdated</code> will not change.
11. <code>refreshIntervalSeconds</code>: Integer indicating the number of seconds after <code>lastUpdated</code> until the user is able to make another attempt to leave the waiting room and be let into the origin website. When the <code>queueingMethod</code> is <code>reject</code>, there is no specified refresh time —\_it will always be **zero**.
12. <code>queueingMethod</code>: The queueing method currently used by the waiting room. It is either **fifo**, **random**, **passthrough**, or **reject**.
13. <code>isFIFOQueue</code>: Boolean indicating if the waiting room uses a FIFO (First-In-First-Out) queue.
14. <code>isRandomQueue</code>: Boolean indicating if the waiting room uses a Random queue where users gain access randomly.
15. <code>isPassthroughQueue</code>: Boolean indicating if the waiting room uses a passthrough queue. Keep in mind that when passthrough is enabled, this JSON response will only exist when <code>queueAll</code> is **true** or <code>isEventPrequeueing</code> is **true** because in all other cases requests will go directly to the origin.
16. <code>isRejectQueue</code>: Boolean indicating if the waiting room uses a reject queue.
17. <code>isEventActive</code>: Boolean indicating if an event is currently occurring. Events are able to change a waiting room’s behavior during a specified period of time. For additional information, look at the event properties <code>prequeue_start_time</code>, <code>event_start_time</code>, and <code>event_end_time</code> in the documentation for creating waiting room events. Events are considered active between these start and end times, as well as during the prequeueing period if it exists.
18. <code>isEventPrequeueing</code>: Valid only when <code>isEventActive</code> is **true**. Boolean indicating if an event is currently prequeueing users before it starts.
19. <code>timeUntilEventStart</code>: Valid only when <code>isEventPrequeueing</code> is **true**. Integer indicating the number of minutes until the event starts.
20. <code>timeUntilEventStartFormatted</code>: String displaying the <code>timeUntilEventStart</code> formatted in English for users. If <code>isEventPrequeueing</code> is **false**, <code>timeUntilEventStartFormatted</code> will display **unavailable**.
21. <code>timeUntilEventEnd</code>: Valid only when <code>isEventActive</code> is **true**. Integer indicating the number of minutes until the event ends.
22. <code>timeUntilEventEndFormatted</code>: String displaying the <code>timeUntilEventEnd</code> formatted in English for users. If <code>isEventActive</code> is **false**, <code>timeUntilEventEndFormatted</code> will display **unavailable**.
23. <code>shuffleAtEventStart</code>: Valid only when <code>isEventActive</code> is **true**. Boolean indicating if the users in the prequeue are shuffled randomly when the event starts.
24. <code>turnstile</code>: Empty when turnstile isn’t enabled. String displaying an html tag to display the Turnstile widget. Please add the <code>{{{turnstile}}}</code> tag to the <code>custom_html</code> template to ensure the Turnstile widget appears.
25. <code>infiniteQueue</code>: Boolean indicating whether the response is for a user in the infinite queue.

An example cURL to a waiting room could be:

```plaintext
curl -X GET "https://example.com/waitingroom" \
	-H "Accept: application/json"
```

If <code>json_response_enabled</code> is **true** and the request hits the waiting room, an example JSON response when <code>queueingMethod</code> is **fifo** and no event is active could be:

```plaintext
{
	"cfWaitingRoom": {
		"inWaitingRoom": true,
		"waitTimeKnown": true,
		"waitTime": 10,
		"waitTime25Percentile": 0,
		"waitTime50Percentile": 0,
		"waitTime75Percentile": 0,
		"waitTimeFormatted": "10 minutes",
		"queueIsFull": false,
		"queueAll": false,
		"lastUpdated": "2020-08-03T23:46:00.000Z",
		"refreshIntervalSeconds": 20,
		"queueingMethod": "fifo",
		"isFIFOQueue": true,
		"isRandomQueue": false,
		"isPassthroughQueue": false,
		"isRejectQueue": false,
		"isEventActive": false,
		"isEventPrequeueing": false,
		"timeUntilEventStart": 0,
		"timeUntilEventStartFormatted": "unavailable",
		"timeUntilEventEnd": 0,
		"timeUntilEventEndFormatted": "unavailable",
		"shuffleAtEventStart": false
	}
}
```

If <code>json_response_enabled</code> is **true** and the request hits the waiting room, an example JSON response when <code>queueingMethod</code> is **random** and an event is active could be:

```plaintext
{
	"cfWaitingRoom": {
		"inWaitingRoom": true,
		"waitTimeKnown": true,
		"waitTime": 10,
		"waitTime25Percentile": 5,
		"waitTime50Percentile": 10,
		"waitTime75Percentile": 15,
		"waitTimeFormatted": "5 minutes to 15 minutes",
		"queueIsFull": false,
		"queueAll": false,
		"lastUpdated": "2020-08-03T23:46:00.000Z",
		"refreshIntervalSeconds": 20,
		"queueingMethod": "random",
		"isFIFOQueue": false,
		"isRandomQueue": true,
		"isPassthroughQueue": false,
		"isRejectQueue": false,
		"isEventActive": true,
		"isEventPrequeueing": false,
		"timeUntilEventStart": 0,
		"timeUntilEventStartFormatted": "unavailable",
		"timeUntilEventEnd": 15,
		"timeUntilEventEndFormatted": "15 minutes",
		"shuffleAtEventStart": true
	}
}
```

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20json_response_enabled">Link to this property</a>

Path stringOptional

Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20path">Link to this property</a>

QueueAll boolOptional

If queue\_all is <code>true</code>, all the traffic that is coming to a route will be sent to the waiting room. No new traffic can get to the route once this field is set and estimated time will become unavailable.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20queue_all">Link to this property</a>

<details>

<summary>

QueueingMethod QueryQueueingMethodOptional

Sets the queueing method used by the waiting room. Changing this parameter from the **default** queueing method is only available for the Waiting Room Advanced subscription. Regardless of the queueing method, if <code>queue_all</code> is enabled or an event is prequeueing, users in the waiting room will not be accepted to the origin. These users will always see a waiting room page that refreshes automatically. The valid queueing methods are:

1. <code>fifo</code> **(default)**: First-In-First-Out queue where customers gain access in the order they arrived.
2. <code>random</code>: Random queue where customers gain access randomly, regardless of arrival time.
3. <code>passthrough</code>: Users will pass directly through the waiting room and into the origin website. As a result, any configured limits will not be respected while this is enabled. This method can be used as an alternative to disabling a waiting room (with <code>suspended</code>) so that analytics are still reported. This can be used if you wish to allow all traffic normally, but want to restrict traffic during a waiting room event, or vice versa.
4. <code>reject</code>: Users will be immediately rejected from the waiting room. As a result, no users will reach the origin website while this is enabled. This can be used if you wish to reject all traffic while performing maintenance, block traffic during a specified period of time (an event), or block traffic while events are not occurring. Consider a waiting room used for vaccine distribution that only allows traffic during sign-up events, and otherwise blocks all traffic. For this case, the waiting room uses <code>reject</code>, and its events override this with <code>fifo</code>, <code>random</code>, or <code>passthrough</code>. When this queueing method is enabled and neither <code>queueAll</code> is enabled nor an event is prequeueing, the waiting room page **will not refresh automatically**.

</summary>

One of the following:

const QueryQueueingMethodFifo QueryQueueingMethod = "fifo"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20queueing_method%20%3E%20(member)%200">Link to this property</a>

const QueryQueueingMethodRandom QueryQueueingMethod = "random"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20queueing_method%20%3E%20(member)%201">Link to this property</a>

const QueryQueueingMethodPassthrough QueryQueueingMethod = "passthrough"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20queueing_method%20%3E%20(member)%202">Link to this property</a>

const QueryQueueingMethodReject QueryQueueingMethod = "reject"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20queueing_method%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20queueing_method">Link to this property</a>

<details>

<summary>

QueueingStatusCode QueryQueueingStatusCodeOptional

HTTP status code returned to a user while in the queue.

</summary>

One of the following:

const QueryQueueingStatusCode200 QueryQueueingStatusCode = 200

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20queueing_status_code%20%3E%20(member)%200">Link to this property</a>

const QueryQueueingStatusCode202 QueryQueueingStatusCode = 202

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20queueing_status_code%20%3E%20(member)%201">Link to this property</a>

const QueryQueueingStatusCode429 QueryQueueingStatusCode = 429

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20queueing_status_code%20%3E%20(member)%202">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20queueing_status_code">Link to this property</a>

SessionDuration int64Optional

Lifetime of a cookie (in minutes) set by Cloudflare for users who get access to the route. If a user is not seen by Cloudflare again in that time period, they will be treated as a new user that visits the route.

maximum30

minimum1

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20session_duration">Link to this property</a>

Suspended boolOptional

Suspends or allows traffic going to the waiting room. If set to <code>true</code>, the traffic will not go to the waiting room.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20suspended">Link to this property</a>

<details>

<summary>

TurnstileAction QueryTurnstileActionOptional

Which action to take when a bot is detected using Turnstile. <code>log</code> will have no impact on queueing behavior, simply keeping track of how many bots are detected in Waiting Room Analytics. <code>infinite_queue</code> will send bots to a false queueing state, where they will never reach your origin. <code>infinite_queue</code> requires Advanced Waiting Room.

</summary>

One of the following:

const QueryTurnstileActionLog QueryTurnstileAction = "log"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20turnstile_action%20%3E%20(member)%200">Link to this property</a>

const QueryTurnstileActionInfiniteQueue QueryTurnstileAction = "infinite\_queue"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20turnstile_action%20%3E%20(member)%201">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20turnstile_action">Link to this property</a>

<details>

<summary>

TurnstileMode QueryTurnstileModeOptional

Which Turnstile widget type to use for detecting bot traffic. See <a href="https://developers.cloudflare.com/turnstile/concepts/widget/#widget-types">the Turnstile documentation</a> for the definitions of these widget types. Set to <code>off</code> to disable the Turnstile integration entirely. Setting this to anything other than <code>off</code> or <code>invisible</code> requires Advanced Waiting Room.

</summary>

One of the following:

const QueryTurnstileModeOff QueryTurnstileMode = "off"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%200">Link to this property</a>

const QueryTurnstileModeInvisible QueryTurnstileMode = "invisible"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%201">Link to this property</a>

const QueryTurnstileModeVisibleNonInteractive QueryTurnstileMode = "visible\_non\_interactive"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%202">Link to this property</a>

const QueryTurnstileModeVisibleManaged QueryTurnstileMode = "visible\_managed"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode">Link to this property</a>

</details>

[Link to this property](<#(resource)%20waiting_rooms%20%3E%20(model)%20query%20%3E%20(schema)>)

<details>

<summary>

type WaitingRoom struct{…}

</summary>

ID stringOptional

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20id">Link to this property</a>

<details>

<summary>

AdditionalRoutes \[]<a href="https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms%20%3E%20(model)%20additional_routes%20%3E%20(schema)">AdditionalRoutes</a>Optional

Only available for the Waiting Room Advanced subscription. Additional hostname and path combinations to which this waiting room will be applied. There is an implied wildcard at the end of the path. The hostname and path combination must be unique to this and all other waiting rooms.

</summary>

Host stringOptional

The hostname to which this waiting room will be applied (no wildcards). The hostname must be the primary domain, subdomain, or custom hostname (if using SSL for SaaS) of this zone. Please do not include the scheme (http:// or https://).

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20additional_routes%20%3E%20(schema)%20%3E%20(property)%20host">Link to this property</a>

Path stringOptional

Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20additional_routes%20%3E%20(schema)%20%3E%20(property)%20path">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20additional_routes">Link to this property</a>

CookieAttributes <a href="https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms%20%3E%20(model)%20cookie_attributes%20%3E%20(schema)">CookieAttributes</a>Optional

Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user’s status in the waiting room, such as queue position.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20cookie_attributes">Link to this property</a>

CookieSuffix stringOptional

Appends a ’\_’ + a custom suffix to the end of Cloudflare Waiting Room’s cookie name(\_\_cf\_waitingroom). If <code>cookie_suffix</code> is “abcd”, the cookie name will be <code>__cf_waitingroom_abcd</code>. This field is required if using <code>additional_routes</code>.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20cookie_suffix">Link to this property</a>

CreatedOn TimeOptional

formatdate-time

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20created_on">Link to this property</a>

CustomPageHTML stringOptional

Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom\_page\_html is provided, the default waiting room will be used. The template is based on mustache ( <a href="https://mustache.github.io/">https://mustache.github.io/</a> ). There are several variables that are evaluated by the Cloudflare edge:

1. {{<code>waitTimeKnown</code>}} Acts like a boolean value that indicates the behavior to take when wait time is not available, for instance when queue\_all is **true**.
2. {{<code>waitTimeFormatted</code>}} Estimated wait time for the user. For example, five minutes. Alternatively, you can use:
3. {{<code>waitTime</code>}} Number of minutes of estimated wait for a user.
4. {{<code>waitTimeHours</code>}} Number of hours of estimated wait for a user (<code>Math.floor(waitTime/60)</code>).
5. {{<code>waitTimeHourMinutes</code>}} Number of minutes above the <code>waitTimeHours</code> value (<code>waitTime%60</code>).
6. {{<code>queueIsFull</code>}} Changes to **true** when no more people can be added to the queue.

To view the full list of variables, look at the <code>cfWaitingRoom</code> object described under the <code>json_response_enabled</code> property in other Waiting Room API calls.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20custom_page_html">Link to this property</a>

<details>

<summary>

DefaultTemplateLanguage WaitingRoomDefaultTemplateLanguageOptional

The language of the default page template. If no default\_template\_language is provided, then <code>en-US</code> (English) will be used.

</summary>

One of the following:

const WaitingRoomDefaultTemplateLanguageEnUs WaitingRoomDefaultTemplateLanguage = "en-US"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%200">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageEsEs WaitingRoomDefaultTemplateLanguage = "es-ES"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%201">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageDeDe WaitingRoomDefaultTemplateLanguage = "de-DE"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%202">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageFrFr WaitingRoomDefaultTemplateLanguage = "fr-FR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%203">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageItIt WaitingRoomDefaultTemplateLanguage = "it-IT"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%204">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageJaJp WaitingRoomDefaultTemplateLanguage = "ja-JP"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%205">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageKoKr WaitingRoomDefaultTemplateLanguage = "ko-KR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%206">Link to this property</a>

const WaitingRoomDefaultTemplateLanguagePtBr WaitingRoomDefaultTemplateLanguage = "pt-BR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%207">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageZhCn WaitingRoomDefaultTemplateLanguage = "zh-CN"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%208">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageZhTw WaitingRoomDefaultTemplateLanguage = "zh-TW"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%209">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageNlNl WaitingRoomDefaultTemplateLanguage = "nl-NL"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2010">Link to this property</a>

const WaitingRoomDefaultTemplateLanguagePlPl WaitingRoomDefaultTemplateLanguage = "pl-PL"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2011">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageIDID WaitingRoomDefaultTemplateLanguage = "id-ID"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2012">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageTrTr WaitingRoomDefaultTemplateLanguage = "tr-TR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2013">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageArEg WaitingRoomDefaultTemplateLanguage = "ar-EG"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2014">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageRuRu WaitingRoomDefaultTemplateLanguage = "ru-RU"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2015">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageFaIr WaitingRoomDefaultTemplateLanguage = "fa-IR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2016">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageBgBg WaitingRoomDefaultTemplateLanguage = "bg-BG"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2017">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageHrHr WaitingRoomDefaultTemplateLanguage = "hr-HR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2018">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageCsCz WaitingRoomDefaultTemplateLanguage = "cs-CZ"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2019">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageDaDK WaitingRoomDefaultTemplateLanguage = "da-DK"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2020">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageFiFi WaitingRoomDefaultTemplateLanguage = "fi-FI"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2021">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageLtLt WaitingRoomDefaultTemplateLanguage = "lt-LT"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2022">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageLvLv WaitingRoomDefaultTemplateLanguage = "lv-LV"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2023">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageMsMy WaitingRoomDefaultTemplateLanguage = "ms-MY"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2024">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageNbNo WaitingRoomDefaultTemplateLanguage = "nb-NO"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2025">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageRoRo WaitingRoomDefaultTemplateLanguage = "ro-RO"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2026">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageElGr WaitingRoomDefaultTemplateLanguage = "el-GR"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2027">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageHeIl WaitingRoomDefaultTemplateLanguage = "he-IL"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2028">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageHiIn WaitingRoomDefaultTemplateLanguage = "hi-IN"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2029">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageHuHu WaitingRoomDefaultTemplateLanguage = "hu-HU"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2030">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageSrBa WaitingRoomDefaultTemplateLanguage = "sr-BA"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2031">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageSkSk WaitingRoomDefaultTemplateLanguage = "sk-SK"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2032">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageSlSi WaitingRoomDefaultTemplateLanguage = "sl-SI"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2033">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageSvSe WaitingRoomDefaultTemplateLanguage = "sv-SE"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2034">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageTlPh WaitingRoomDefaultTemplateLanguage = "tl-PH"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2035">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageThTh WaitingRoomDefaultTemplateLanguage = "th-TH"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2036">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageUkUA WaitingRoomDefaultTemplateLanguage = "uk-UA"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2037">Link to this property</a>

const WaitingRoomDefaultTemplateLanguageViVn WaitingRoomDefaultTemplateLanguage = "vi-VN"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language%20%3E%20(member)%2038">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20default_template_language">Link to this property</a>

Description stringOptional

A note that you can use to add more details about the waiting room.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20description">Link to this property</a>

DisableSessionRenewal boolOptional

Only available for the Waiting Room Advanced subscription. Disables automatic renewal of session cookies. If <code>true</code>, an accepted user will have session\_duration minutes to browse the site. After that, they will have to go through the waiting room again. If <code>false</code>, a user’s session cookie will be automatically renewed on every request.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20disable_session_renewal">Link to this property</a>

EnabledOriginCommands \[]WaitingRoomEnabledOriginCommandOptional

A list of enabled origin commands.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20enabled_origin_commands">Link to this property</a>

Host stringOptional

The host name to which the waiting room will be applied (no wildcards). Please do not include the scheme (http:// or https://). The host and path combination must be unique.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20host">Link to this property</a>

JsonResponseEnabled boolOptional

Only available for the Waiting Room Advanced subscription. If <code>true</code>, requests to the waiting room with the header <code>Accept: application/json</code> will receive a JSON response object with information on the user’s status in the waiting room as opposed to the configured static HTML page. This JSON response object has one property <code>cfWaitingRoom</code> which is an object containing the following fields:

1. <code>inWaitingRoom</code>: Boolean indicating if the user is in the waiting room (always **true**).
2. <code>waitTimeKnown</code>: Boolean indicating if the current estimated wait times are accurate. If **false**, they are not available.
3. <code>waitTime</code>: Valid only when <code>waitTimeKnown</code> is **true**. Integer indicating the current estimated time in minutes the user will wait in the waiting room. When <code>queueingMethod</code> is **random**, this is set to <code>waitTime50Percentile</code>.
4. <code>waitTime25Percentile</code>: Valid only when <code>queueingMethod</code> is **random** and <code>waitTimeKnown</code> is **true**. Integer indicating the current estimated maximum wait time for the 25% of users that gain entry the fastest (25th percentile).
5. <code>waitTime50Percentile</code>: Valid only when <code>queueingMethod</code> is **random** and <code>waitTimeKnown</code> is **true**. Integer indicating the current estimated maximum wait time for the 50% of users that gain entry the fastest (50th percentile). In other words, half of the queued users are expected to let into the origin website before <code>waitTime50Percentile</code> and half are expected to be let in after it.
6. <code>waitTime75Percentile</code>: Valid only when <code>queueingMethod</code> is **random** and <code>waitTimeKnown</code> is **true**. Integer indicating the current estimated maximum wait time for the 75% of users that gain entry the fastest (75th percentile).
7. <code>waitTimeFormatted</code>: String displaying the <code>waitTime</code> formatted in English for users. If <code>waitTimeKnown</code> is **false**, <code>waitTimeFormatted</code> will display **unavailable**.
8. <code>queueIsFull</code>: Boolean indicating if the waiting room’s queue is currently full and not accepting new users at the moment.
9. <code>queueAll</code>: Boolean indicating if all users will be queued in the waiting room and no one will be let into the origin website.
10. <code>lastUpdated</code>: String displaying the timestamp as an ISO 8601 string of the user’s last attempt to leave the waiting room and be let into the origin website. The user is able to make another attempt after <code>refreshIntervalSeconds</code> past this time. If the user makes a request too soon, it will be ignored and <code>lastUpdated</code> will not change.
11. <code>refreshIntervalSeconds</code>: Integer indicating the number of seconds after <code>lastUpdated</code> until the user is able to make another attempt to leave the waiting room and be let into the origin website. When the <code>queueingMethod</code> is <code>reject</code>, there is no specified refresh time —\_it will always be **zero**.
12. <code>queueingMethod</code>: The queueing method currently used by the waiting room. It is either **fifo**, **random**, **passthrough**, or **reject**.
13. <code>isFIFOQueue</code>: Boolean indicating if the waiting room uses a FIFO (First-In-First-Out) queue.
14. <code>isRandomQueue</code>: Boolean indicating if the waiting room uses a Random queue where users gain access randomly.
15. <code>isPassthroughQueue</code>: Boolean indicating if the waiting room uses a passthrough queue. Keep in mind that when passthrough is enabled, this JSON response will only exist when <code>queueAll</code> is **true** or <code>isEventPrequeueing</code> is **true** because in all other cases requests will go directly to the origin.
16. <code>isRejectQueue</code>: Boolean indicating if the waiting room uses a reject queue.
17. <code>isEventActive</code>: Boolean indicating if an event is currently occurring. Events are able to change a waiting room’s behavior during a specified period of time. For additional information, look at the event properties <code>prequeue_start_time</code>, <code>event_start_time</code>, and <code>event_end_time</code> in the documentation for creating waiting room events. Events are considered active between these start and end times, as well as during the prequeueing period if it exists.
18. <code>isEventPrequeueing</code>: Valid only when <code>isEventActive</code> is **true**. Boolean indicating if an event is currently prequeueing users before it starts.
19. <code>timeUntilEventStart</code>: Valid only when <code>isEventPrequeueing</code> is **true**. Integer indicating the number of minutes until the event starts.
20. <code>timeUntilEventStartFormatted</code>: String displaying the <code>timeUntilEventStart</code> formatted in English for users. If <code>isEventPrequeueing</code> is **false**, <code>timeUntilEventStartFormatted</code> will display **unavailable**.
21. <code>timeUntilEventEnd</code>: Valid only when <code>isEventActive</code> is **true**. Integer indicating the number of minutes until the event ends.
22. <code>timeUntilEventEndFormatted</code>: String displaying the <code>timeUntilEventEnd</code> formatted in English for users. If <code>isEventActive</code> is **false**, <code>timeUntilEventEndFormatted</code> will display **unavailable**.
23. <code>shuffleAtEventStart</code>: Valid only when <code>isEventActive</code> is **true**. Boolean indicating if the users in the prequeue are shuffled randomly when the event starts.
24. <code>turnstile</code>: Empty when turnstile isn’t enabled. String displaying an html tag to display the Turnstile widget. Please add the <code>{{{turnstile}}}</code> tag to the <code>custom_html</code> template to ensure the Turnstile widget appears.
25. <code>infiniteQueue</code>: Boolean indicating whether the response is for a user in the infinite queue.

An example cURL to a waiting room could be:

```plaintext
curl -X GET "https://example.com/waitingroom" \
	-H "Accept: application/json"
```

If <code>json_response_enabled</code> is **true** and the request hits the waiting room, an example JSON response when <code>queueingMethod</code> is **fifo** and no event is active could be:

```plaintext
{
	"cfWaitingRoom": {
		"inWaitingRoom": true,
		"waitTimeKnown": true,
		"waitTime": 10,
		"waitTime25Percentile": 0,
		"waitTime50Percentile": 0,
		"waitTime75Percentile": 0,
		"waitTimeFormatted": "10 minutes",
		"queueIsFull": false,
		"queueAll": false,
		"lastUpdated": "2020-08-03T23:46:00.000Z",
		"refreshIntervalSeconds": 20,
		"queueingMethod": "fifo",
		"isFIFOQueue": true,
		"isRandomQueue": false,
		"isPassthroughQueue": false,
		"isRejectQueue": false,
		"isEventActive": false,
		"isEventPrequeueing": false,
		"timeUntilEventStart": 0,
		"timeUntilEventStartFormatted": "unavailable",
		"timeUntilEventEnd": 0,
		"timeUntilEventEndFormatted": "unavailable",
		"shuffleAtEventStart": false
	}
}
```

If <code>json_response_enabled</code> is **true** and the request hits the waiting room, an example JSON response when <code>queueingMethod</code> is **random** and an event is active could be:

```plaintext
{
	"cfWaitingRoom": {
		"inWaitingRoom": true,
		"waitTimeKnown": true,
		"waitTime": 10,
		"waitTime25Percentile": 5,
		"waitTime50Percentile": 10,
		"waitTime75Percentile": 15,
		"waitTimeFormatted": "5 minutes to 15 minutes",
		"queueIsFull": false,
		"queueAll": false,
		"lastUpdated": "2020-08-03T23:46:00.000Z",
		"refreshIntervalSeconds": 20,
		"queueingMethod": "random",
		"isFIFOQueue": false,
		"isRandomQueue": true,
		"isPassthroughQueue": false,
		"isRejectQueue": false,
		"isEventActive": true,
		"isEventPrequeueing": false,
		"timeUntilEventStart": 0,
		"timeUntilEventStartFormatted": "unavailable",
		"timeUntilEventEnd": 15,
		"timeUntilEventEndFormatted": "15 minutes",
		"shuffleAtEventStart": true
	}
}
```

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20json_response_enabled">Link to this property</a>

ModifiedOn TimeOptional

formatdate-time

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20modified_on">Link to this property</a>

Name stringOptional

A unique name to identify the waiting room. Only alphanumeric characters, hyphens and underscores are allowed.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20name">Link to this property</a>

NewUsersPerMinute int64Optional

Sets the number of new users that will be let into the route every minute. This value is used as baseline for the number of users that are let in per minute. So it is possible that there is a little more or little less traffic coming to the route based on the traffic patterns at that time around the world.

maximum2147483647

minimum200

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20new_users_per_minute">Link to this property</a>

NextEventPrequeueStartTime stringOptional

An ISO 8601 timestamp that marks when the next event will begin queueing.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20next_event_prequeue_start_time">Link to this property</a>

NextEventStartTime stringOptional

An ISO 8601 timestamp that marks when the next event will start.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20next_event_start_time">Link to this property</a>

Path stringOptional

Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20path">Link to this property</a>

QueueAll boolOptional

If queue\_all is <code>true</code>, all the traffic that is coming to a route will be sent to the waiting room. No new traffic can get to the route once this field is set and estimated time will become unavailable.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20queue_all">Link to this property</a>

<details>

<summary>

QueueingMethod WaitingRoomQueueingMethodOptional

Sets the queueing method used by the waiting room. Changing this parameter from the **default** queueing method is only available for the Waiting Room Advanced subscription. Regardless of the queueing method, if <code>queue_all</code> is enabled or an event is prequeueing, users in the waiting room will not be accepted to the origin. These users will always see a waiting room page that refreshes automatically. The valid queueing methods are:

1. <code>fifo</code> **(default)**: First-In-First-Out queue where customers gain access in the order they arrived.
2. <code>random</code>: Random queue where customers gain access randomly, regardless of arrival time.
3. <code>passthrough</code>: Users will pass directly through the waiting room and into the origin website. As a result, any configured limits will not be respected while this is enabled. This method can be used as an alternative to disabling a waiting room (with <code>suspended</code>) so that analytics are still reported. This can be used if you wish to allow all traffic normally, but want to restrict traffic during a waiting room event, or vice versa.
4. <code>reject</code>: Users will be immediately rejected from the waiting room. As a result, no users will reach the origin website while this is enabled. This can be used if you wish to reject all traffic while performing maintenance, block traffic during a specified period of time (an event), or block traffic while events are not occurring. Consider a waiting room used for vaccine distribution that only allows traffic during sign-up events, and otherwise blocks all traffic. For this case, the waiting room uses <code>reject</code>, and its events override this with <code>fifo</code>, <code>random</code>, or <code>passthrough</code>. When this queueing method is enabled and neither <code>queueAll</code> is enabled nor an event is prequeueing, the waiting room page **will not refresh automatically**.

</summary>

One of the following:

const WaitingRoomQueueingMethodFifo WaitingRoomQueueingMethod = "fifo"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20queueing_method%20%3E%20(member)%200">Link to this property</a>

const WaitingRoomQueueingMethodRandom WaitingRoomQueueingMethod = "random"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20queueing_method%20%3E%20(member)%201">Link to this property</a>

const WaitingRoomQueueingMethodPassthrough WaitingRoomQueueingMethod = "passthrough"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20queueing_method%20%3E%20(member)%202">Link to this property</a>

const WaitingRoomQueueingMethodReject WaitingRoomQueueingMethod = "reject"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20queueing_method%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20queueing_method">Link to this property</a>

<details>

<summary>

QueueingStatusCode WaitingRoomQueueingStatusCodeOptional

HTTP status code returned to a user while in the queue.

</summary>

One of the following:

const WaitingRoomQueueingStatusCode200 WaitingRoomQueueingStatusCode = 200

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20queueing_status_code%20%3E%20(member)%200">Link to this property</a>

const WaitingRoomQueueingStatusCode202 WaitingRoomQueueingStatusCode = 202

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20queueing_status_code%20%3E%20(member)%201">Link to this property</a>

const WaitingRoomQueueingStatusCode429 WaitingRoomQueueingStatusCode = 429

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20queueing_status_code%20%3E%20(member)%202">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20queueing_status_code">Link to this property</a>

SessionDuration int64Optional

Lifetime of a cookie (in minutes) set by Cloudflare for users who get access to the route. If a user is not seen by Cloudflare again in that time period, they will be treated as a new user that visits the route.

maximum30

minimum1

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20session_duration">Link to this property</a>

Suspended boolOptional

Suspends or allows traffic going to the waiting room. If set to <code>true</code>, the traffic will not go to the waiting room.

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20suspended">Link to this property</a>

TotalActiveUsers int64Optional

Sets the total number of active user sessions on the route at a point in time. A route is a combination of host and path on which a waiting room is available. This value is used as a baseline for the total number of active user sessions on the route. It is possible to have a situation where there are more or less active users sessions on the route based on the traffic patterns at that time around the world.

maximum2147483647

minimum200

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20total_active_users">Link to this property</a>

<details>

<summary>

TurnstileAction WaitingRoomTurnstileActionOptional

Which action to take when a bot is detected using Turnstile. <code>log</code> will have no impact on queueing behavior, simply keeping track of how many bots are detected in Waiting Room Analytics. <code>infinite_queue</code> will send bots to a false queueing state, where they will never reach your origin. <code>infinite_queue</code> requires Advanced Waiting Room.

</summary>

One of the following:

const WaitingRoomTurnstileActionLog WaitingRoomTurnstileAction = "log"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20turnstile_action%20%3E%20(member)%200">Link to this property</a>

const WaitingRoomTurnstileActionInfiniteQueue WaitingRoomTurnstileAction = "infinite\_queue"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20turnstile_action%20%3E%20(member)%201">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20turnstile_action">Link to this property</a>

<details>

<summary>

TurnstileMode WaitingRoomTurnstileModeOptional

Which Turnstile widget type to use for detecting bot traffic. See <a href="https://developers.cloudflare.com/turnstile/concepts/widget/#widget-types">the Turnstile documentation</a> for the definitions of these widget types. Set to <code>off</code> to disable the Turnstile integration entirely. Setting this to anything other than <code>off</code> or <code>invisible</code> requires Advanced Waiting Room.

</summary>

One of the following:

const WaitingRoomTurnstileModeOff WaitingRoomTurnstileMode = "off"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%200">Link to this property</a>

const WaitingRoomTurnstileModeInvisible WaitingRoomTurnstileMode = "invisible"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%201">Link to this property</a>

const WaitingRoomTurnstileModeVisibleNonInteractive WaitingRoomTurnstileMode = "visible\_non\_interactive"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%202">Link to this property</a>

const WaitingRoomTurnstileModeVisibleManaged WaitingRoomTurnstileMode = "visible\_managed"

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode">Link to this property</a>

</details>

[Link to this property](<#(resource)%20waiting_rooms%20%3E%20(model)%20waiting_room%20%3E%20(schema)>)

#### Waiting RoomsPage

##### [Create a custom waiting room page preview](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/page/methods/preview)

client.WaitingRooms.Page.Preview(ctx, params) (\*[PagePreviewResponse](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.page%20%3E%20(model)%20PagePreviewResponse%20%3E%20(schema)>), error)

POST/zones/{zone\_id}/waiting\_rooms/preview

#### Waiting RoomsEvents

##### [List events](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/events/methods/list)

client.WaitingRooms.Events.List(ctx, waitingRoomID, params) (\*V4PagePaginationArray\[[Event](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)>)], error)

GET/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/events

##### [Event details](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/events/methods/get)

client.WaitingRooms.Events.Get(ctx, waitingRoomID, eventID, query) (\*[Event](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)>), error)

GET/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/events/{event\_id}

##### [Create event](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/events/methods/create)

client.WaitingRooms.Events.New(ctx, waitingRoomID, params) (\*[Event](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)>), error)

POST/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/events

##### [Update event](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/events/methods/update)

client.WaitingRooms.Events.Update(ctx, waitingRoomID, eventID, params) (\*[Event](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)>), error)

PUT/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/events/{event\_id}

##### [Patch event](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/events/methods/edit)

client.WaitingRooms.Events.Edit(ctx, waitingRoomID, eventID, params) (\*[Event](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)>), error)

PATCH/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/events/{event\_id}

##### [Delete event](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/events/methods/delete)

client.WaitingRooms.Events.Delete(ctx, waitingRoomID, eventID, body) (\*[EventDeleteResponse](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.events%20%3E%20(model)%20EventDeleteResponse%20%3E%20(schema)>), error)

DELETE/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/events/{event\_id}

##### ModelsExpand Collapse

<details>

<summary>

type Event struct{…}

</summary>

ID stringOptional

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20id">Link to this property</a>

CreatedOn TimeOptional

formatdate-time

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20created_on">Link to this property</a>

CustomPageHTML stringOptional

If set, the event will override the waiting room’s <code>custom_page_html</code> property while it is active. If null, the event will inherit it.

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20custom_page_html">Link to this property</a>

Description stringOptional

A note that you can use to add more details about the event.

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20description">Link to this property</a>

DisableSessionRenewal boolOptional

If set, the event will override the waiting room’s <code>disable_session_renewal</code> property while it is active. If null, the event will inherit it.

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20disable_session_renewal">Link to this property</a>

EventEndTime stringOptional

An ISO 8601 timestamp that marks the end of the event.

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20event_end_time">Link to this property</a>

EventStartTime stringOptional

An ISO 8601 timestamp that marks the start of the event. At this time, queued users will be processed with the event’s configuration. The start time must be at least one minute before <code>event_end_time</code>.

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20event_start_time">Link to this property</a>

ModifiedOn TimeOptional

formatdate-time

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20modified_on">Link to this property</a>

Name stringOptional

A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20name">Link to this property</a>

NewUsersPerMinute int64Optional

If set, the event will override the waiting room’s <code>new_users_per_minute</code> property while it is active. If null, the event will inherit it. This can only be set if the event’s <code>total_active_users</code> property is also set.

maximum2147483647

minimum200

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20new_users_per_minute">Link to this property</a>

PrequeueStartTime stringOptional

An ISO 8601 timestamp that marks when to begin queueing all users before the event starts. The prequeue must start at least five minutes before <code>event_start_time</code>.

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20prequeue_start_time">Link to this property</a>

QueueingMethod stringOptional

If set, the event will override the waiting room’s <code>queueing_method</code> property while it is active. If null, the event will inherit it.

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20queueing_method">Link to this property</a>

SessionDuration int64Optional

If set, the event will override the waiting room’s <code>session_duration</code> property while it is active. If null, the event will inherit it.

maximum30

minimum1

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20session_duration">Link to this property</a>

ShuffleAtEventStart boolOptional

If enabled, users in the prequeue will be shuffled randomly at the <code>event_start_time</code>. Requires that <code>prequeue_start_time</code> is not null. This is useful for situations when many users will join the event prequeue at the same time and you want to shuffle them to ensure fairness. Naturally, it makes the most sense to enable this feature when the <code>queueing_method</code> during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary.

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20shuffle_at_event_start">Link to this property</a>

Suspended boolOptional

Suspends or allows an event. If set to <code>true</code>, the event is ignored and traffic will be handled based on the waiting room configuration.

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20suspended">Link to this property</a>

TotalActiveUsers int64Optional

If set, the event will override the waiting room’s <code>total_active_users</code> property while it is active. If null, the event will inherit it. This can only be set if the event’s <code>new_users_per_minute</code> property is also set.

maximum2147483647

minimum200

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20total_active_users">Link to this property</a>

<details>

<summary>

TurnstileAction EventTurnstileActionOptional

If set, the event will override the waiting room’s <code>turnstile_action</code> property while it is active. If null, the event will inherit it.

</summary>

One of the following:

const EventTurnstileActionLog EventTurnstileAction = "log"

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20turnstile_action%20%3E%20(member)%200">Link to this property</a>

const EventTurnstileActionInfiniteQueue EventTurnstileAction = "infinite\_queue"

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20turnstile_action%20%3E%20(member)%201">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20turnstile_action">Link to this property</a>

<details>

<summary>

TurnstileMode EventTurnstileModeOptional

If set, the event will override the waiting room’s <code>turnstile_mode</code> property while it is active. If null, the event will inherit it.

</summary>

One of the following:

const EventTurnstileModeOff EventTurnstileMode = "off"

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%200">Link to this property</a>

const EventTurnstileModeInvisible EventTurnstileMode = "invisible"

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%201">Link to this property</a>

const EventTurnstileModeVisibleNonInteractive EventTurnstileMode = "visible\_non\_interactive"

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%202">Link to this property</a>

const EventTurnstileModeVisibleManaged EventTurnstileMode = "visible\_managed"

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode">Link to this property</a>

</details>

[Link to this property](<#(resource)%20waiting_rooms.events%20%3E%20(model)%20event%20%3E%20(schema)>)

#### Waiting RoomsEventsDetails

##### [Preview active event details](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/events/subresources/details/methods/get)

client.WaitingRooms.Events.Details.Get(ctx, waitingRoomID, eventID, query) (\*[EventDetailGetResponse](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20EventDetailGetResponse%20%3E%20(schema)>), error)

GET/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/events/{event\_id}/details

##### ModelsExpand Collapse

<details>

<summary>

type EventQuery struct{…}

</summary>

EventEndTime string

An ISO 8601 timestamp that marks the end of the event.

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20event_end_time">Link to this property</a>

EventStartTime string

An ISO 8601 timestamp that marks the start of the event. At this time, queued users will be processed with the event’s configuration. The start time must be at least one minute before <code>event_end_time</code>.

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20event_start_time">Link to this property</a>

Name string

A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20name">Link to this property</a>

CustomPageHTML stringOptional

If set, the event will override the waiting room’s <code>custom_page_html</code> property while it is active. If null, the event will inherit it.

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20custom_page_html">Link to this property</a>

Description stringOptional

A note that you can use to add more details about the event.

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20description">Link to this property</a>

DisableSessionRenewal boolOptional

If set, the event will override the waiting room’s <code>disable_session_renewal</code> property while it is active. If null, the event will inherit it.

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20disable_session_renewal">Link to this property</a>

NewUsersPerMinute int64Optional

If set, the event will override the waiting room’s <code>new_users_per_minute</code> property while it is active. If null, the event will inherit it. This can only be set if the event’s <code>total_active_users</code> property is also set.

maximum2147483647

minimum200

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20new_users_per_minute">Link to this property</a>

PrequeueStartTime stringOptional

An ISO 8601 timestamp that marks when to begin queueing all users before the event starts. The prequeue must start at least five minutes before <code>event_start_time</code>.

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20prequeue_start_time">Link to this property</a>

QueueingMethod stringOptional

If set, the event will override the waiting room’s <code>queueing_method</code> property while it is active. If null, the event will inherit it.

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20queueing_method">Link to this property</a>

SessionDuration int64Optional

If set, the event will override the waiting room’s <code>session_duration</code> property while it is active. If null, the event will inherit it.

maximum30

minimum1

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20session_duration">Link to this property</a>

ShuffleAtEventStart boolOptional

If enabled, users in the prequeue will be shuffled randomly at the <code>event_start_time</code>. Requires that <code>prequeue_start_time</code> is not null. This is useful for situations when many users will join the event prequeue at the same time and you want to shuffle them to ensure fairness. Naturally, it makes the most sense to enable this feature when the <code>queueing_method</code> during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary.

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20shuffle_at_event_start">Link to this property</a>

Suspended boolOptional

Suspends or allows an event. If set to <code>true</code>, the event is ignored and traffic will be handled based on the waiting room configuration.

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20suspended">Link to this property</a>

TotalActiveUsers int64Optional

If set, the event will override the waiting room’s <code>total_active_users</code> property while it is active. If null, the event will inherit it. This can only be set if the event’s <code>new_users_per_minute</code> property is also set.

maximum2147483647

minimum200

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20total_active_users">Link to this property</a>

<details>

<summary>

TurnstileAction EventQueryTurnstileActionOptional

If set, the event will override the waiting room’s <code>turnstile_action</code> property while it is active. If null, the event will inherit it.

</summary>

One of the following:

const EventQueryTurnstileActionLog EventQueryTurnstileAction = "log"

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20turnstile_action%20%3E%20(member)%200">Link to this property</a>

const EventQueryTurnstileActionInfiniteQueue EventQueryTurnstileAction = "infinite\_queue"

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20turnstile_action%20%3E%20(member)%201">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20turnstile_action">Link to this property</a>

<details>

<summary>

TurnstileMode EventQueryTurnstileModeOptional

If set, the event will override the waiting room’s <code>turnstile_mode</code> property while it is active. If null, the event will inherit it.

</summary>

One of the following:

const EventQueryTurnstileModeOff EventQueryTurnstileMode = "off"

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%200">Link to this property</a>

const EventQueryTurnstileModeInvisible EventQueryTurnstileMode = "invisible"

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%201">Link to this property</a>

const EventQueryTurnstileModeVisibleNonInteractive EventQueryTurnstileMode = "visible\_non\_interactive"

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%202">Link to this property</a>

const EventQueryTurnstileModeVisibleManaged EventQueryTurnstileMode = "visible\_managed"

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)%20%3E%20(property)%20turnstile_mode">Link to this property</a>

</details>

[Link to this property](<#(resource)%20waiting_rooms.events.details%20%3E%20(model)%20event_query%20%3E%20(schema)>)

#### Waiting RoomsRules

##### [List Waiting Room Rules](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/rules/methods/get)

client.WaitingRooms.Rules.Get(ctx, waitingRoomID, query) (\*SinglePage\[[WaitingRoomRule](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)>)], error)

GET/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/rules

##### [Create Waiting Room Rule](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/rules/methods/create)

client.WaitingRooms.Rules.New(ctx, waitingRoomID, params) (\*SinglePage\[[WaitingRoomRule](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)>)], error)

POST/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/rules

##### [Replace Waiting Room Rules](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/rules/methods/update)

client.WaitingRooms.Rules.Update(ctx, waitingRoomID, params) (\*SinglePage\[[WaitingRoomRule](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)>)], error)

PUT/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/rules

##### [Patch Waiting Room Rule](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/rules/methods/edit)

client.WaitingRooms.Rules.Edit(ctx, waitingRoomID, ruleID, params) (\*SinglePage\[[WaitingRoomRule](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)>)], error)

PATCH/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/rules/{rule\_id}

##### [Delete Waiting Room Rule](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/rules/methods/delete)

client.WaitingRooms.Rules.Delete(ctx, waitingRoomID, ruleID, body) (\*SinglePage\[[WaitingRoomRule](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)>)], error)

DELETE/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/rules/{rule\_id}

##### ModelsExpand Collapse

<details>

<summary>

type WaitingRoomRule struct{…}

</summary>

ID stringOptional

The ID of the rule.

<a href="#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)%20%3E%20(property)%20id">Link to this property</a>

Action WaitingRoomRuleActionOptional

The action to take when the expression matches.

<a href="#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)%20%3E%20(property)%20action">Link to this property</a>

Description stringOptional

The description of the rule.

<a href="#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)%20%3E%20(property)%20description">Link to this property</a>

Enabled boolOptional

When set to true, the rule is enabled.

<a href="#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)%20%3E%20(property)%20enabled">Link to this property</a>

Expression stringOptional

Criteria defining when there is a match for the current rule.

<a href="#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)%20%3E%20(property)%20expression">Link to this property</a>

LastUpdated TimeOptional

formatdate-time

<a href="#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)%20%3E%20(property)%20last_updated">Link to this property</a>

Version stringOptional

The version of the rule.

<a href="#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)%20%3E%20(property)%20version">Link to this property</a>

</details>

[Link to this property](<#(resource)%20waiting_rooms.rules%20%3E%20(model)%20waiting_room_rule%20%3E%20(schema)>)

#### Waiting RoomsStatuses

##### [Get waiting room status](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/statuses/methods/get)

client.WaitingRooms.Statuses.Get(ctx, waitingRoomID, query) (\*[StatusGetResponse](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.statuses%20%3E%20(model)%20StatusGetResponse%20%3E%20(schema)>), error)

GET/zones/{zone\_id}/waiting\_rooms/{waiting\_room\_id}/status

#### Waiting RoomsSettings

##### [Get zone-level Waiting Room settings](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/settings/methods/get)

client.WaitingRooms.Settings.Get(ctx, query) (\*[SettingGetResponse](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.settings%20%3E%20(model)%20SettingGetResponse%20%3E%20(schema)>), error)

GET/zones/{zone\_id}/waiting\_rooms/settings

##### [Update zone-level Waiting Room settings](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/settings/methods/update)

client.WaitingRooms.Settings.Update(ctx, params) (\*[SettingUpdateResponse](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.settings%20%3E%20(model)%20SettingUpdateResponse%20%3E%20(schema)>), error)

PUT/zones/{zone\_id}/waiting\_rooms/settings

##### [Patch zone-level Waiting Room settings](https://developers.cloudflare.com/api/go/resources/waiting_rooms/subresources/settings/methods/edit)

client.WaitingRooms.Settings.Edit(ctx, params) (\*[SettingEditResponse](<https://developers.cloudflare.com/api/go/resources/waiting_rooms#(resource)%20waiting_rooms.settings%20%3E%20(model)%20SettingEditResponse%20%3E%20(schema)>), error)

PATCH/zones/{zone\_id}/waiting\_rooms/settings

##### ModelsExpand Collapse

<details>

<summary>

type Setting struct{…}

</summary>

SearchEngineCrawlerBypass bool

Whether to allow verified search engine crawlers to bypass all waiting rooms on this zone. Verified search engine crawlers will not be tracked or counted by the waiting room system, and will not appear in waiting room analytics.

<a href="#(resource)%20waiting_rooms.settings%20%3E%20(model)%20setting%20%3E%20(schema)%20%3E%20(property)%20search_engine_crawler_bypass">Link to this property</a>

</details>

[Link to this property](<#(resource)%20waiting_rooms.settings%20%3E%20(model)%20setting%20%3E%20(schema)>)