Waiting Rooms
The Waiting Rooms API allows you to manage waiting rooms in your organization, including creating, listing, viewing, and updating waiting rooms.
Waiting Room Properties
| Property | Type | Description |
|---|---|---|
id | integer | Unique identifier for the waiting room |
user_id | integer | ID of the user who owns the waiting room |
slug | string | URL slug for the waiting room |
theme | string | Theme applied to the waiting room |
is_active | boolean | Whether the waiting room is currently active |
created_at | string | ISO 8601 timestamp of when the waiting room was created |
updated_at | string | ISO 8601 timestamp of when the waiting room was last updated |
user | object | User information object |
user.display_name | string | Display name of the user who owns the waiting room |
Endpoints
List Waiting Rooms
Retrieve a paginated list of all waiting rooms in your organization.
GET /api/external/waiting_roomsParameters
| Parameter | Type | Location | Required | Description |
|---|---|---|---|---|
page | integer | query | No | Page number for pagination (default: 1) |
per_page | integer | query | No | Number of results per page (default: 25) |
Example Request
curl -X GET "https://api.kismethealth.com/api/external/waiting_rooms?page=1&per_page=5" \
-H "X-Client-ID: your-client-id" \
-H "X-Client-Secret: your-client-secret" \
-H "Content-Type: application/json"Example Response
{
"waiting_rooms": [
{
"id": 1,
"user_id": 101,
"slug": "dr-smith-room",
"theme": "ocean",
"is_active": true,
"created_at": "2025-07-16T14:00:00Z",
"updated_at": "2025-07-16T14:05:00Z",
"user": {
"display_name": "Dr. Sarah Smith"
}
},
{
"id": 2,
"user_id": 102,
"slug": "therapy-room-1",
"theme": "forest",
"is_active": true,
"created_at": "2025-07-16T13:30:00Z",
"updated_at": "2025-07-16T13:45:00Z",
"user": {
"display_name": "Dr. Michael Johnson"
}
}
],
"pagination": {
"current_page": 1,
"per_page": 5,
"total_pages": 2,
"total_count": 7
}
}Get Waiting Room Details
Retrieve detailed information about a specific waiting room.
GET /api/external/waiting_rooms/{id}Parameters
| Parameter | Type | Location | Required | Description |
|---|---|---|---|---|
id | integer | path | Yes | ID of the waiting room |
Example Request
curl -X GET "https://api.kismethealth.com/api/external/waiting_rooms/1" \
-H "X-Client-ID: your-client-id" \
-H "X-Client-Secret: your-client-secret" \
-H "Content-Type: application/json"Example Response
{
"id": 1,
"user_id": 101,
"slug": "dr-smith-room",
"theme": "ocean",
"is_active": true,
"created_at": "2025-07-16T14:00:00Z",
"updated_at": "2025-07-16T14:05:00Z",
"user": {
"display_name": "Dr. Sarah Smith"
}
}Error Responses
- 404 Not Found: Returned when the waiting room slug does not exist or is not accessible to the authenticated user.
Create Waiting Room
Create a new waiting room for the authenticated user.
POST /api/external/waiting_roomsParameters
| Parameter | Type | Location | Required | Description |
|---|---|---|---|---|
waiting_room | object | body | Yes | Waiting room details object |
waiting_room.slug | string | body | Yes | URL slug for the waiting room (must be unique) |
waiting_room.theme | string | body | No | Theme to apply to the waiting room |
waiting_room.is_active | boolean | body | No | Whether the waiting room is active (default: true) |
Example Request
curl -X POST "https://api.kismethealth.com/api/external/waiting_rooms" \
-H "X-Client-ID: your-client-id" \
-H "X-Client-Secret: your-client-secret" \
-H "Content-Type: application/json" \
-d '{
"waiting_room": {
"slug": "new-provider-room",
"theme": "default",
"is_active": true
}
}'Example Response
{
"id": 3,
"user_id": 103,
"slug": "new-provider-room",
"theme": "default",
"is_active": true,
"created_at": "2025-10-08T16:30:00Z",
"updated_at": "2025-10-08T16:30:00Z",
"user": {
"display_name": "Dr. Jane Wilson"
}
}Update Waiting Room
Update an existing waiting room’s settings.
PUT /api/external/waiting_rooms/{slug}Parameters
| Parameter | Type | Location | Required | Description |
|---|---|---|---|---|
slug | string | path | Yes | Current slug of the waiting room |
waiting_room | object | body | Yes | Waiting room details object |
waiting_room.slug | string | body | No | New URL slug for the waiting room |
waiting_room.theme | string | body | No | Theme to apply to the waiting room |
waiting_room.is_active | boolean | body | No | Whether the waiting room is active |
Example Request
curl -X PUT "https://api.kismethealth.com/api/external/waiting_rooms/dr-smith-room" \
-H "X-Client-ID: your-client-id" \
-H "X-Client-Secret: your-client-secret" \
-H "Content-Type: application/json" \
-d '{
"waiting_room": {
"theme": "default",
"is_active": false
}
}'Example Response
{
"id": 1,
"user_id": 101,
"slug": "dr-smith-room",
"theme": "default",
"is_active": false,
"created_at": "2025-07-16T14:00:00Z",
"updated_at": "2025-10-08T16:45:00Z",
"user": {
"display_name": "Dr. Sarah Smith"
}
}Error Responses
- 404 Not Found: Returned when the waiting room slug does not exist or is not accessible.
- 422 Unprocessable Entity: Returned when validation fails (e.g., slug already exists).
Last updated on