Waiting Room
GET/api/v1/waiting-rooms
Authorization
bearer_token In: header
Query Parameters
Full-text search query applied to room_id
1-indexed page number
int640 <= valuePage size
int640 <= valueSort field (created_at, updated_at, capacity)
Sort order (asc or desc)
Value in
- "asc"
- "desc"
Filter expressions in the form field:operator:value Available filters: status, queue_strategy, created_by, capacity
Response Body
application/json
curl -X GET "https://example.com/api/v1/waiting-rooms"{ "pagination": { "has_more": true, "page": 0, "page_size": 0, "total": 0 }, "rooms": [ { "auto_admit": true, "capacity": 0, "created_at": "2019-08-24T14:15:22Z", "created_by": "string", "queue_strategy": "fifo", "room_id": "string", "status": "active", "updated_at": "2019-08-24T14:15:22Z" } ]}POST/api/v1/waiting-rooms
Authorization
bearer_token In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/api/v1/waiting-rooms" \ -H "Content-Type: application/json" \ -d '{ "admission_rate": { "batch_size": 0, "interval_seconds": 0 }, "capacity": 0, "room_id": "string" }'{ "admission_rate": { "batch_size": 0, "interval_seconds": 0 }, "anti_gaming": { "join_rate_limit_max_attempts": 0, "join_rate_limit_window_seconds": 0, "rejoin_cooldown_seconds": 0 }, "auto_admit": true, "capacity": 0, "created_at": "2019-08-24T14:15:22Z", "created_by": "string", "metadata": { "property1": null, "property2": null }, "priority_groups": [ { "boost": 0, "match_rules": null, "name": "string" } ], "queue_strategy": "fifo", "room_id": "string", "session_ttl_seconds": 0, "status": "active", "updated_at": "2019-08-24T14:15:22Z"}GET/api/v1/waiting-rooms/global-bans/{member_id}
Authorization
bearer_token In: header
Path Parameters
Member ID
Response Body
application/json
curl -X GET "https://example.com/api/v1/waiting-rooms/global-bans/string"[ "string"]GET/api/v1/waiting-rooms/{room_id}
Authorization
bearer_token In: header
Path Parameters
Room ID
Response Body
application/json
curl -X GET "https://example.com/api/v1/waiting-rooms/string"{ "admission_rate": { "batch_size": 0, "interval_seconds": 0 }, "anti_gaming": { "join_rate_limit_max_attempts": 0, "join_rate_limit_window_seconds": 0, "rejoin_cooldown_seconds": 0 }, "auto_admit": true, "capacity": 0, "created_at": "2019-08-24T14:15:22Z", "metadata": { "property1": null, "property2": null }, "priority_groups": [ { "boost": 0, "match_rules": null, "name": "string" } ], "queue_strategy": "fifo", "room_id": "string", "session_ttl_seconds": 0, "statistics": { "active_count": 0, "average_wait_seconds": 0.1, "current_admission_rate": 0.1, "total_admitted": 0, "waiting_count": 0 }, "status": "active", "updated_at": "2019-08-24T14:15:22Z"}DELETE/api/v1/waiting-rooms/{room_id}
Authorization
bearer_token In: header
Path Parameters
Room ID
Response Body
curl -X DELETE "https://example.com/api/v1/waiting-rooms/string"PUT/api/v1/waiting-rooms/{room_id}
Authorization
bearer_token In: header
Path Parameters
Room ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X PUT "https://example.com/api/v1/waiting-rooms/string" \ -H "Content-Type: application/json" \ -d '{}'{ "admission_rate": { "batch_size": 0, "interval_seconds": 0 }, "anti_gaming": { "join_rate_limit_max_attempts": 0, "join_rate_limit_window_seconds": 0, "rejoin_cooldown_seconds": 0 }, "auto_admit": true, "capacity": 0, "created_at": "2019-08-24T14:15:22Z", "created_by": "string", "metadata": { "property1": null, "property2": null }, "priority_groups": [ { "boost": 0, "match_rules": null, "name": "string" } ], "queue_strategy": "fifo", "room_id": "string", "session_ttl_seconds": 0, "status": "active", "updated_at": "2019-08-24T14:15:22Z"}POST/api/v1/waiting-rooms/{room_id}/admit
Authorization
bearer_token In: header
Path Parameters
Room ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/api/v1/waiting-rooms/string/admit" \ -H "Content-Type: application/json" \ -d '{}'{ "admitted": [ { "admitted_at": "2019-08-24T14:15:22Z", "member_id": "string", "wait_time_seconds": 0 } ], "capacity_reached": true, "failed": [ { "member_id": "string", "reason": "string" } ]}GET/api/v1/waiting-rooms/{room_id}/analytics
Authorization
bearer_token In: header
Path Parameters
Room ID
Query Parameters
Start time (unix seconds)
int64End time (unix seconds)
int64Maximum records to return
int320 <= valueResponse Body
application/json
curl -X GET "https://example.com/api/v1/waiting-rooms/string/analytics"{ "hourly_stats": [ { "abandonments": 0, "admissions": 0, "average_wait_time_seconds": 0.1, "hour": "2019-08-24T14:15:22Z", "rejections": 0 } ], "room_id": "string", "summary": { "abandonment_rate": 0.1, "admission_rate": 0.1, "average_wait_time_seconds": 0.1, "max_wait_time_seconds": 0, "min_wait_time_seconds": 0, "rejection_rate": 0.1, "total_abandonments": 0, "total_admissions": 0, "total_rejections": 0 }, "time_range": { "end": "2019-08-24T14:15:22Z", "start": "2019-08-24T14:15:22Z" }}GET/api/v1/waiting-rooms/{room_id}/bans
Authorization
bearer_token In: header
Path Parameters
Room ID
Query Parameters
Include expired bans
Response Body
application/json
curl -X GET "https://example.com/api/v1/waiting-rooms/string/bans?include_expired=true"[ { "banned_until": "2019-08-24T14:15:22Z", "member_id": "string" }]POST/api/v1/waiting-rooms/{room_id}/bans
Authorization
bearer_token In: header
Path Parameters
Room ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/api/v1/waiting-rooms/string/bans" \ -H "Content-Type: application/json" \ -d '{ "member_id": "string", "reason": "string" }'{ "banned_at": "2019-08-24T14:15:22Z", "banned_by": "string", "banned_until": "2019-08-24T14:15:22Z", "member_id": "string", "reason": "string", "room_id": "string"}GET/api/v1/waiting-rooms/{room_id}/bans/{member_id}
Authorization
bearer_token In: header
Path Parameters
Room ID
Member ID
Response Body
application/json
curl -X GET "https://example.com/api/v1/waiting-rooms/string/bans/string"nullDELETE/api/v1/waiting-rooms/{room_id}/bans/{member_id}
Authorization
bearer_token In: header
Path Parameters
Room ID
Member ID
Response Body
curl -X DELETE "https://example.com/api/v1/waiting-rooms/string/bans/string"POST/api/v1/waiting-rooms/{room_id}/groups/{group_id}/admit
Authorization
bearer_token In: header
Path Parameters
Room ID
Group ID
Response Body
application/json
curl -X POST "https://example.com/api/v1/waiting-rooms/string/groups/string/admit"{ "admitted": [ { "admitted_at": "2019-08-24T14:15:22Z", "member_id": "string", "wait_time_seconds": 0 } ], "capacity_reached": true, "failed": [ { "member_id": "string", "reason": "string" } ]}GET/api/v1/waiting-rooms/{room_id}/groups/{group_id}/status
Authorization
bearer_token In: header
Path Parameters
Room ID
Group ID
Response Body
application/json
curl -X GET "https://example.com/api/v1/waiting-rooms/string/groups/string/status"{ "average_position": 0, "can_be_admitted": true, "group_id": "string", "members": [ { "joined_at": "2019-08-24T14:15:22Z", "member_id": "string", "position": 0, "status": "waiting" } ], "members_active": 0, "members_waiting": 0, "total_members": 0}POST/api/v1/waiting-rooms/{room_id}/join
Authorization
bearer_token In: header
Path Parameters
Room ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/api/v1/waiting-rooms/string/join" \ -H "Content-Type: application/json" \ -d '{}'{ "estimated_wait_seconds": 0, "joined_at": "2019-08-24T14:15:22Z", "member_id": "string", "position": 0, "priority_group": "string", "room_id": "string", "status": "waiting"}POST/api/v1/waiting-rooms/{room_id}/leave
Authorization
bearer_token In: header
Path Parameters
Room ID
Response Body
curl -X POST "https://example.com/api/v1/waiting-rooms/string/leave"GET/api/v1/waiting-rooms/{room_id}/members
Authorization
bearer_token In: header
Path Parameters
Room ID
Query Parameters
Filter by status: waiting or active
Maximum members to return
int320 <= valuePagination offset
int320 <= valueResponse Body
application/json
curl -X GET "https://example.com/api/v1/waiting-rooms/string/members"{ "limit": 0, "members": [ { "admitted_at": "2019-08-24T14:15:22Z", "group_id": "string", "joined_at": "2019-08-24T14:15:22Z", "member_id": "string", "metadata": { "property1": null, "property2": null }, "position": 0, "priority": 0, "room_id": "string", "status": "waiting" } ], "offset": 0, "total": 0}GET/api/v1/waiting-rooms/{room_id}/position
Authorization
bearer_token In: header
Path Parameters
Room ID
Response Body
application/json
curl -X GET "https://example.com/api/v1/waiting-rooms/string/position"{ "ahead_count": 0, "estimated_wait_seconds": 0, "joined_at": "2019-08-24T14:15:22Z", "member_id": "string", "position": 0, "priority_effective": 0, "room_id": "string", "status": "waiting"}POST/api/v1/waiting-rooms/{room_id}/refresh
Authorization
bearer_token In: header
Path Parameters
Room ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request to refresh an active session
Response Body
application/json
curl -X POST "https://example.com/api/v1/waiting-rooms/string/refresh" \ -H "Content-Type: application/json" \ -d '{}'{ "new_expiry": 0, "success": true}POST/api/v1/waiting-rooms/{room_id}/reject
Authorization
bearer_token In: header
Path Parameters
Room ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
curl -X POST "https://example.com/api/v1/waiting-rooms/string/reject" \ -H "Content-Type: application/json" \ -d '{ "member_ids": [ "string" ], "reason": "string" }'