Booking lifecycle — pending, confirmed, rescheduled, cancelled — plus attendees, references, no-shows, and reminders.
Scanned 5/27/2026
Install via CLI
openskills install BuilderIO/agent-native---
name: bookings
description: Booking lifecycle — pending, confirmed, rescheduled, cancelled — plus attendees, references, no-shows, and reminders.
---
# Bookings
## Lifecycle
- **pending** — requires-confirmation event types start here
- **confirmed** — normal state
- **rescheduled** — the old booking after a reschedule (the new one is
confirmed; `from_reschedule` links them)
- **cancelled** — either party cancelled
- **rejected** — pending was declined
## Reschedule vs cancel+rebook
The `reschedule-booking` action creates a new booking with a link back to
the old via `fromReschedule`. iCalUID is preserved across the reschedule
chain (RFC 5545), and `iCalSequence` is bumped.
## No-show
`mark-no-show` sets `noShow: true` on an attendee. Round-robin calibration
uses this to penalize hosts whose attendees no-show frequently.
## Cancel / reschedule tokens
Every booking has a `cancelToken` and `rescheduleToken` used in public
magic links sent to attendees. These let them manage the booking without
logging in.
## References
External system IDs: Google Calendar event id, Zoom meeting id, Daily.co
room name. Stored in `booking_references`, used during cancel/reschedule to
propagate changes back to the source system.
## ICS
`/booking/:uid.ics` returns the RFC 5545 calendar file. Used for
confirmation-email attachments and "Add to calendar" buttons.
No comments yet. Be the first to comment!