List all bookings
Scope: crm:booking-services.read https://api.alladdin.com/api/v2/bookings
Returns a paginated list of bookings for your account.
Results are cursor-paginated: the response includes a cursor value and a has_more boolean. Default page size is 50, configurable up to 200 with limit.
You can filter by date range and service.
To query bookings for a single day pass the same date for both start_date and end_date (e.g. start_date=2024-01-15&end_date=2024-01-15). A date-only value for end_date automatically includes the full day up to 23:59:59.
When items is an empty array and has_more is false, there are no bookings matching the given criteria — this is a definitive result, do not retry with different parameters.
Parameters
Query parameters
start_date string<date-time> optional
Filter bookings starting from this date. Accepts ISO 8601 datetime (e.g. 2024-01-01T00:00:00+00:00) or date only (e.g. 2024-01-01)
end_date string<date-time> optional
Filter bookings up to this date (inclusive). Accepts ISO 8601 datetime (e.g. 2024-12-31T23:59:59+00:00) or date only (e.g. 2024-12-31). A date-only value includes the full day up to 23:59:59.
service_id string optional
Filter by service identifier
sort_field string optional
Field to sort by
"start_time" "created_at" sort_order string optional
Sort direction
"asc" "desc" cursor string optional
Opaque cursor for pagination
limit integer optional = 50
Number of items per page
Request
import requests
url = "https://api.alladdin.com/api/v2/bookings?start_date=2024-01-01T00:00:00+00:00&end_date=2024-12-31T23:59:59+00:00&service_id=value"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
}
response = requests.get(url, headers=headers)
print(response.json())Responses
Response
{
"items": [
{
"id": "507f1f77bcf86cd799439011",
"start_time": "2024-01-15T10:30:00+00:00",
"end_time": "2024-01-15T11:30:00+00:00",
"duration": 3600,
"created_at": "2024-01-15T10:30:00+00:00",
"updated_at": "2024-01-15T10:30:00Z",
"status": "confirmed",
"service": {
"id": "507f1f77bcf86cd799439011",
"name": "string",
"description": "string",
"duration": 3600,
"subtotal": {
"amount": "...",
"currency": "..."
},
"total": {
"amount": "...",
"currency": "..."
}
},
"space": {
"id": "507f1f77bcf86cd799439011",
"name": "string"
},
"outcome": {
"document_id": "string",
"type": "string",
"exported_at": "2024-01-15T10:30:00Z"
},
"custom_fields": [
{
"key": "...",
"label": "...",
"type": "...",
"value": "..."
}
]
}
],
"cursor": "string",
"has_more": false
}Success responses
200 List of all bookings application/json object items[] object[] id string
Unique identifier of the booking
start_time string<date-time>
Start time in ISO 8601 format
end_time string<date-time>
End time in ISO 8601 format
duration integer
Duration in seconds
created_at string<date-time>
Creation timestamp in ISO 8601 format
updated_at string<date-time> | null
Last update timestamp in ISO 8601 format
status string
Booking status
Enum: confirmed cancelled service object
Service associated with this booking
space object
Space where the booking takes place
outcome object | null
Exported document linked to this booking
custom_fields[] object[]
Custom field values associated with the booking
cursor string | null has_more boolean
Error responses
401 Invalid or missing API key application/json 403 Insufficient permissions application/json 429 Rate limit exceeded application/json
