Prerequisites
- At least one resource with a configured schedule
- Public endpoint — no authentication required for basic usage
Unified Calendar View
Request path documentation:paths/public/misc.yamlforGET /api/v1/calendar-events
Parameters
Multiple Resources
Query multiple resources in a single request:Event Types
The response contains events of different types, combined from booking and availability data sources:Response Structure
timeslot_id. Use it to fetch the canonical timeslot resource through the admin timeslot endpoints, open the matching editor, or reconcile calendar cards with resource_info and allocation state.
Admin context (display_lines)
When the request runs with an organization context, the admin calendar renders backend-composed display_lines below display_label. Each line is { key, icon, label, image, object }; order is significant. key identifies the line kind so clients can find or override a specific line without parsing label (time for the formatted clock range, timeslot for the timeslot title, customer, service, resource, admin_note, customer_note, order_item).
For timeslot events the lines are: time, then timeslot when the title is non-empty, then resource. Untitled timeslots omit the title line; the time range is the information.
For a single confirmed booking in admin context the lines are: customer (only when the headline is a custom description) → time → timeslot (when the timeslot has a specific title) → service → resource → admin_note → customer_note.
Non-admin responses do not receive this enrichment: display_lines stay the public composition, and is_paid stays null.
For a single confirmed booking in admin context, the event also includes add_on_count: the sum of add-on quantities on that booking. Aggregated events leave the field null at the event level and put the count on each nested bookings[] entry. Sequence wrappers report only their own add-ons, not those of child bookings. Non-admin responses always get null.
Capacity-Based Rendering
The API adapts its response based on resource capacity:- Small resources (capacity ≤ 25): Returns individual
bookingevents with customer details. Use these to render detailed calendar entries. - Large resources (capacity > 25): Returns
booking_countevents with aggregated occupancy numbers. Use these for heatmap or occupancy bar display.
Booking Detail Preview
For calendar detail views, use the booking preview endpoint to get a summary of a specific booking without fetching the full resource:Common Patterns
Daily Calendar View
Weekly Multi-Resource View
Correlate a Calendar Event to Timeslot CRUD
When an event includestimeslot_id, you can jump from the aggregate calendar response to the admin timeslot resource: