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
Property | Type | Description |
---|---|---|
id | integer | Unique identifier for the sub |
waiting_room_id | integer | ID of the waiting room this sub request belongs to |
user_id | integer | ID of the user who has this sub. Null imples a sub that has not been filled yet. |
sub_waiting_room_slug | string | Slug of the substitute waiting room (if applicable). Null implies a sub that has not been filled yet. |
datetime_start | string | ISO 8601 timestamp of when the sub starts in UTC |
datetime_end | string | ISO 8601 timestamp of when the sub ends in UTC |
created_at | string | ISO 8601 timestamp of when the sub was created |
updated_at | string | ISO 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
Parameter | Type | Location | Required | Description |
---|---|---|---|---|
waiting_room_slug | string | path | Yes | Slug 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
Parameter | Type | Location | Required | Description |
---|---|---|---|---|
waiting_room_slug | string | path | Yes | Slug of the waiting room |
waiting_room_sub | object | body | Yes | Sub details object |
waiting_room_sub.user_id | integer | body | Yes | ID of the user for this sub |
waiting_room_sub.datetime_start | string | body | Yes | ISO 8601 timestamp of when the sub starts. Must be in UTC. |
waiting_room_sub.datetime_end | string | body | No | ISO 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
Parameter | Type | Location | Required | Description |
---|---|---|---|---|
waiting_room_slug | string | path | Yes | Slug of the waiting room |
id | integer | path | Yes | ID of the sub to update |
waiting_room_sub | object | body | Yes | Sub details object |
waiting_room_sub.user_id | integer | body | No | ID of the user for this sub |
waiting_room_sub.datetime_start | string | body | No | ISO 8601 timestamp of when the sub starts |
waiting_room_sub.datetime_end | string | body | No | ISO 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
Parameter | Type | Location | Required | Description |
---|---|---|---|---|
waiting_room_slug | string | path | Yes | Slug of the waiting room |
id | integer | path | Yes | ID 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