Publish availability and approve session requests from athletes
Availability & Booking
Surflink uses availability-based booking: coaches publish when they're free, athletes and contacts pick an open slot, and the coach confirms. Confirming creates a training session.
Set your availability
On the Coaches page (/coaches), open a coach and go to the Availability tab (a coach can edit their own; admins can edit anyone):
- Weekly availability -- recurring rules per weekday with a start/end time, slot length, capacity (for group/clinic slots), and optional location.
- Specific dates -- one-off open windows or blocked dates that override the weekly pattern.
- Booking rules -- timezone, minimum lead time, buffer between sessions, max bookings per day, and reschedule/cancel cutoffs.
Open slots are computed from your rules minus blocked dates and anything already booked.
How athletes book
Athletes can book for themselves from their dashboard.
- Pick a coach (from the athlete's assigned coaches).
- Choose an open slot from the next four weeks.
- Optionally repeat weekly for several weeks (each occurrence is validated against availability).
- Send the request -- it lands in the coach's Requests inbox as pending.
Requests are validated against live availability, so an athlete can't request a time outside your hours or one that's already taken.
The Requests inbox
Open Requests (/bookings). Filter by pending, confirmed, declined, or all.
- Confirm -- creates the scheduled training session and notifies the requester.
- Decline -- add an optional note; the requester is notified.
- Reschedule -- the requester can move a request to another open slot (within the reschedule cutoff); it returns to pending for re-approval.
Reminders
Confirmed sessions trigger an automatic reminder to the athlete and the coach roughly 24 hours beforehand.