Skip to Content
Kismet's Organization API is officially released 🎉
APIWaiting Room Subs

Waiting Room Subs

The Waiting Room Subs API allows you to manage provider substitutions for specific waiting rooms, allowing you to redirect waiting room participants to another provider’s room during specific time periods.

Waiting Room Sub Properties

PropertyTypeDescription
idintegerUnique identifier for the sub
waiting_room_idintegerID of the waiting room this sub request belongs to
user_idintegerID of the user who has this sub. Null imples a sub that has not been filled yet.
sub_waiting_room_slugstringSlug of the substitute waiting room (if applicable). Null implies a sub that has not been filled yet.
datetime_startstringISO 8601 timestamp of when the sub starts in UTC
datetime_endstringISO 8601 timestamp of when the sub ends in UTC
created_atstringISO 8601 timestamp of when the sub was created
updated_atstringISO 8601 timestamp of when the sub was last updated

Endpoints

List Waiting Room Subs

Retrieve all subs in the future for a specific waiting room.

GET /api/external/waiting_rooms/{waiting_room_slug}/waiting_room_subs

Parameters

ParameterTypeLocationRequiredDescription
waiting_room_slugstringpathYesSlug of the waiting room

Example Request

curl -X GET "https://api.kismethealth.com/api/external/waiting_rooms/backup-room/waiting_room_subs" \ -H "X-Client-ID: your-client-id" \ -H "X-Client-Secret: your-client-secret" \ -H "Content-Type: application/json"

Example Response

{ "waiting_room_subs": [ { "id": 1, "waiting_room_id": 1, "user_id": 102, "sub_waiting_room_slug": "backup-room", "datetime_start": "2025-08-15T14:30:00Z", "datetime_end": "2025-08-15T15:30:00Z", "created_at": "2025-08-15T10:00:00Z", "updated_at": "2025-08-15T10:00:00Z" } ] }

Error Responses

  • 404 Not Found: Returned when the waiting room does not exist or is not accessible.

Create Waiting Room Sub

Create a new sub for a waiting room.

POST /api/external/waiting_rooms/{waiting_room_slug}/waiting_room_subs

Parameters

ParameterTypeLocationRequiredDescription
waiting_room_slugstringpathYesSlug of the waiting room
waiting_room_subobjectbodyYesSub details object
waiting_room_sub.user_idintegerbodyYesID of the user for this sub
waiting_room_sub.datetime_startstringbodyYesISO 8601 timestamp of when the sub starts. Must be in UTC.
waiting_room_sub.datetime_endstringbodyNoISO 8601 timestamp of when the sub ends. Must be in UTC

Example Request

curl -X POST "https://api.kismethealth.com/api/external/waiting_rooms/backup-room/waiting_room_subs" \ -H "X-Client-ID: your-client-id" \ -H "X-Client-Secret: your-client-secret" \ -H "Content-Type: application/json" \ -d '{ "waiting_room_sub": { "user_id": 102, "datetime_start": "2025-08-15T14:30:00Z", "datetime_end": "2025-08-15T15:30:00Z", } }'

Example Response

{ "id": 1, "waiting_room_id": 1, "user_id": 102, "sub_waiting_room_slug": "backup-room", "datetime_start": "2025-08-15T14:30:00Z", "datetime_end": "2025-08-15T15:30:00Z", "created_at": "2025-08-15T10:00:00Z", "updated_at": "2025-08-15T10:00:00Z" }

Error Responses

  • 404 Not Found: Returned when the waiting room does not exist or is not accessible.
  • 422 Unprocessable Content: Returned when sub times overlap with existing sub for the waiting room.

Update Waiting Room Sub

Update an existing sub for a waiting room.

PUT /api/external/waiting_rooms/{waiting_room_slug}/waiting_room_subs/{id}

Parameters

ParameterTypeLocationRequiredDescription
waiting_room_slugstringpathYesSlug of the waiting room
idintegerpathYesID of the sub to update
waiting_room_subobjectbodyYesSub details object
waiting_room_sub.user_idintegerbodyNoID of the user for this sub
waiting_room_sub.datetime_startstringbodyNoISO 8601 timestamp of when the sub starts
waiting_room_sub.datetime_endstringbodyNoISO 8601 timestamp of when the sub ends

Example Request

curl -X PUT "https://api.kismethealth.com/api/external/waiting_rooms/backup-room/waiting_room_subs/1" \ -H "X-Client-ID: your-client-id" \ -H "X-Client-Secret: your-client-secret" \ -H "Content-Type: application/json" \ -d '{ "waiting_room_sub": { "user_id": 103, "datetime_start": "2025-08-15T15:00:00Z", "datetime_end": "2025-08-15T16:00:00Z" } }'

Example Response

{ "id": 1, "waiting_room_id": 1, "user_id": 103, "sub_waiting_room_slug": "backup-room", "datetime_start": "2025-08-15T15:00:00Z", "datetime_end": "2025-08-15T16:00:00Z", "created_at": "2025-08-15T10:00:00Z", "updated_at": "2025-08-15T11:00:00Z" }

Error Responses

  • 404 Not Found: Returned when the waiting room or sub does not exist or is not accessible.
  • 422 Unprocessable Content: Returned when updated sub times overlap with existing subs for the waiting room.

Delete Waiting Room Sub

Remove a sub from a waiting room.

DELETE /api/external/waiting_rooms/{waiting_room_slug}/waiting_room_subs/{id}

Parameters

ParameterTypeLocationRequiredDescription
waiting_room_slugstringpathYesSlug of the waiting room
idintegerpathYesID of the sub to delete

Example Request

curl -X DELETE "https://api.kismethealth.com/api/external/waiting_rooms/backup-room/waiting_room_subs/1" \ -H "X-Client-ID: your-client-id" \ -H "X-Client-Secret: your-client-secret" \ -H "Content-Type: application/json"

Example Response

Status: 204 No Content

Error Responses

  • 404 Not Found: Returned when the waiting room or sub does not exist or is not accessible.
Last updated on