List waiting-list entries
curl --request GET \
--url https://api.dialtu.com/api/v2/public/calendar/waitlist/entries \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.dialtu.com/api/v2/public/calendar/waitlist/entries"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.dialtu.com/api/v2/public/calendar/waitlist/entries', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"total": 123,
"limit": 123,
"offset": 123,
"entries": [
{
"id": 123,
"waitlist_id": 123,
"client": {
"id": 123,
"first_name": "<string>",
"last_name": "<string>",
"phone": "<string>",
"email": "<string>"
},
"service": {
"id": 123,
"name": "<string>"
},
"status": "<string>",
"priority": 123,
"source": "<string>",
"created_at": "<string>",
"position": 123,
"queue_attempts": 0,
"flagged_for_review": false,
"snooze_until": "<string>",
"queued_at": "<string>",
"seat_expires_at": "<string>",
"preferred_professional_id": 123,
"preferred_professional_name": "<string>",
"earliest_date": "<string>",
"latest_date": "<string>",
"preferred_time_windows": [
"<string>"
],
"notes": "",
"days_waiting": 0,
"resolved_at": "<string>",
"resolution_reason": "<string>",
"created": true
}
]
},
"status": "success"
}Calendar
List waiting-list entries
Entries across every list, oldest first.
status defaults to all (every OPEN entry) and accepts the virtual
values waiting (open, not snoozed), queued (seat claimed, being
contacted), snoozed, flagged, or the terminal booked /
removed / expired; several may be comma-joined.
GET
/
api
/
v2
/
public
/
calendar
/
waitlist
/
entries
List waiting-list entries
curl --request GET \
--url https://api.dialtu.com/api/v2/public/calendar/waitlist/entries \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.dialtu.com/api/v2/public/calendar/waitlist/entries"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.dialtu.com/api/v2/public/calendar/waitlist/entries', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"total": 123,
"limit": 123,
"offset": 123,
"entries": [
{
"id": 123,
"waitlist_id": 123,
"client": {
"id": 123,
"first_name": "<string>",
"last_name": "<string>",
"phone": "<string>",
"email": "<string>"
},
"service": {
"id": 123,
"name": "<string>"
},
"status": "<string>",
"priority": 123,
"source": "<string>",
"created_at": "<string>",
"position": 123,
"queue_attempts": 0,
"flagged_for_review": false,
"snooze_until": "<string>",
"queued_at": "<string>",
"seat_expires_at": "<string>",
"preferred_professional_id": 123,
"preferred_professional_name": "<string>",
"earliest_date": "<string>",
"latest_date": "<string>",
"preferred_time_windows": [
"<string>"
],
"notes": "",
"days_waiting": 0,
"resolved_at": "<string>",
"resolution_reason": "<string>",
"created": true
}
]
},
"status": "success"
}Authorizations
API key created in the dashboard under Settings → API Keys. Send it as Authorization: Bearer pk_....
Query Parameters
Entry status filter. Defaults to all (every open entry). Accepts waiting, queued, snoozed, flagged, booked, removed, expired; several may be comma-joined.
Only entries for this service.
Only entries for this client.
Only entries on this waiting list.
Page size, 1–200. Defaults to 50.
Number of entries to skip.