---
title: Events
---

[Skip to content](#%5Ftop) 

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

[Waiting Rooms](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms)

Copy Markdown

Open in **Claude**

Open in **ChatGPT**

Open in **Cursor**

---

**Copy Markdown**

**View as Markdown**

# Events

##### [List events](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms/subresources/events/methods/list)

client.waitingRooms.events.list(stringwaitingRoomID, EventListParams { zone\_id, page, per\_page } params, RequestOptionsoptions?): V4PagePaginationArray<[Event](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms#%28resource%29%20waiting%5Frooms.events%20%3E%20%28model%29%20event%20%3E%20%28schema%29) { id, created\_on, custom\_page\_html, 15 more } \>

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

##### [Event details](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms/subresources/events/methods/get)

client.waitingRooms.events.get(stringeventID, EventGetParams { zone\_id, waiting\_room\_id } params, RequestOptionsoptions?): [Event](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms#%28resource%29%20waiting%5Frooms.events%20%3E%20%28model%29%20event%20%3E%20%28schema%29) { id, created\_on, custom\_page\_html, 15 more } 

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

##### [Create event](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms/subresources/events/methods/create)

client.waitingRooms.events.create(stringwaitingRoomID, EventCreateParams { zone\_id, event\_end\_time, event\_start\_time, 13 more } params, RequestOptionsoptions?): [Event](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms#%28resource%29%20waiting%5Frooms.events%20%3E%20%28model%29%20event%20%3E%20%28schema%29) { id, created\_on, custom\_page\_html, 15 more } 

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

##### [Update event](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms/subresources/events/methods/update)

client.waitingRooms.events.update(stringeventID, EventUpdateParams { zone\_id, waiting\_room\_id, event\_end\_time, 14 more } params, RequestOptionsoptions?): [Event](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms#%28resource%29%20waiting%5Frooms.events%20%3E%20%28model%29%20event%20%3E%20%28schema%29) { id, created\_on, custom\_page\_html, 15 more } 

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

##### [Patch event](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms/subresources/events/methods/edit)

client.waitingRooms.events.edit(stringeventID, EventEditParams { zone\_id, waiting\_room\_id, event\_end\_time, 14 more } params, RequestOptionsoptions?): [Event](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms#%28resource%29%20waiting%5Frooms.events%20%3E%20%28model%29%20event%20%3E%20%28schema%29) { id, created\_on, custom\_page\_html, 15 more } 

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

##### [Delete event](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms/subresources/events/methods/delete)

client.waitingRooms.events.delete(stringeventID, EventDeleteParams { zone\_id, waiting\_room\_id } params, RequestOptionsoptions?): [EventDeleteResponse](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms#%28resource%29%20waiting%5Frooms.events%20%3E%20%28model%29%20event%5Fdelete%5Fresponse%20%3E%20%28schema%29) { id } 

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

##### ModelsExpand Collapse 

Event { id, created\_on, custom\_page\_html, 15 more } 

id?: string

created\_on?: string

formatdate-time

custom\_page\_html?: string | null

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

description?: string

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

disable\_session\_renewal?: boolean | null

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

event\_end\_time?: string

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

event\_start\_time?: 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 `event_end_time`.

modified\_on?: string

formatdate-time

name?: string

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

new\_users\_per\_minute?: number | null

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

maximum2147483647

minimum200

prequeue\_start\_time?: string | null

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 `event_start_time`.

queueing\_method?: string | null

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

session\_duration?: number | null

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

maximum30

minimum1

shuffle\_at\_event\_start?: boolean

If enabled, users in the prequeue will be shuffled randomly at the `event_start_time`. Requires that `prequeue_start_time` 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 `queueing_method` during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary.

suspended?: boolean

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

total\_active\_users?: number | null

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

maximum2147483647

minimum200

turnstile\_action?: "log" | "infinite\_queue" | null

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

One of the following:

"log"

"infinite\_queue"

turnstile\_mode?: "off" | "invisible" | "visible\_non\_interactive" | "visible\_managed" | null

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

One of the following:

"off"

"invisible"

"visible\_non\_interactive"

"visible\_managed"

EventDeleteResponse { id } 

id?: string

#### EventsDetails

##### [Preview active event details](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms/subresources/events/subresources/details/methods/get)

client.waitingRooms.events.details.get(stringeventID, DetailGetParams { zone\_id, waiting\_room\_id } params, RequestOptionsoptions?): [DetailGetResponse](https://developers.cloudflare.com/api/typescript/resources/waiting%5Frooms#%28resource%29%20waiting%5Frooms.events.details%20%3E%20%28model%29%20detail%5Fget%5Fresponse%20%3E%20%28schema%29) { id, created\_on, custom\_page\_html, 13 more } 

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

##### ModelsExpand Collapse 

EventQuery { event\_end\_time, event\_start\_time, name, 12 more } 

event\_end\_time: string

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

event\_start\_time: 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 `event_end_time`.

name: string

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

custom\_page\_html?: string | null

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

description?: string

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

disable\_session\_renewal?: boolean | null

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

new\_users\_per\_minute?: number | null

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

maximum2147483647

minimum200

prequeue\_start\_time?: string | null

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 `event_start_time`.

queueing\_method?: string | null

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

session\_duration?: number | null

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

maximum30

minimum1

shuffle\_at\_event\_start?: boolean

If enabled, users in the prequeue will be shuffled randomly at the `event_start_time`. Requires that `prequeue_start_time` 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 `queueing_method` during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary.

suspended?: boolean

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

total\_active\_users?: number | null

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

maximum2147483647

minimum200

turnstile\_action?: "log" | "infinite\_queue" | null

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

One of the following:

"log"

"infinite\_queue"

turnstile\_mode?: "off" | "invisible" | "visible\_non\_interactive" | "visible\_managed" | null

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

One of the following:

"off"

"invisible"

"visible\_non\_interactive"

"visible\_managed"

DetailGetResponse { id, created\_on, custom\_page\_html, 13 more } 

id?: string

created\_on?: string

formatdate-time

custom\_page\_html?: string

description?: string

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

disable\_session\_renewal?: boolean

event\_end\_time?: string

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

event\_start\_time?: 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 `event_end_time`.

modified\_on?: string

formatdate-time

name?: string

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

new\_users\_per\_minute?: number

prequeue\_start\_time?: string | null

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 `event_start_time`.

queueing\_method?: string

session\_duration?: number

shuffle\_at\_event\_start?: boolean

If enabled, users in the prequeue will be shuffled randomly at the `event_start_time`. Requires that `prequeue_start_time` 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 `queueing_method` during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary.

suspended?: boolean

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

total\_active\_users?: number