Venue & Settings
Quick Book Links
Last updated 14 June 2026
Quick Book Links
Deep-link customers into the booking flow with pre-filled service, staff, date, time, party size, duration, and resource context via URL parameters. Quick Book Links are useful for marketing campaigns, QR codes, AI auto-responder replies, share-an-opening flows, and waitlist offers.
Where to find it - Auto-generated: AI booking enquiry, share buttons, waitlist offer flows. Manual: build your own URL with the parameters below.
TL;DR
- Supported parameters:
date,time,serviceId,staffId,partySize,durationMinutes,resourceId,resourceCategoryId. - Every combination is valid; missing values fall back to the standard booking flow.
- Resource-led parameters are editable preferences, not locks.
- Availability, holds, and booking creation validate resource-led preferences server-side.
- Public and no auth required. All plans.
URL shape
https://your-slug.openchairpro.com?date=2026-06-15&time=14:00&serviceId={uuid}&staffId={uuid}
Resource-led example:
https://your-slug.openchairpro.com?serviceId={uuid}&partySize=2&durationMinutes=60&resourceId={uuid}
On a custom domain:
https://salonsmith.com?serviceId={uuid}&resourceCategoryId={uuid}&partySize=2
The storefront reads the parameters and:
- Pre-fills the booking wizard with relevant selections
- Skips picker steps only for values that validate
- Falls through to the standard flow for missing, invalid, or ineligible values
Parameters
| Parameter | Format | What it does |
|---|---|---|
date |
YYYY-MM-DD |
Pre-fills the booking date. Silently dropped if in the past. |
time |
HH:mm (24-hour) |
Pre-highlights this slot on the time picker. |
serviceId |
UUID | Pre-selects the service when valid. |
staffId |
UUID | Pre-selects the staff member when valid. |
partySize |
Positive number | Pre-fills guest count for services that allow party-size booking. |
durationMinutes |
Positive number | Pre-fills an allowed duration for variable-duration services. |
resourceId |
UUID | Prefers a specific public resource when the service lets customers choose. |
resourceCategoryId |
UUID | Prefers a public resource type/category when the service exposes type choice. |
All parameters are optional.
?serviceId=... -> service pre-selected; customer picks staff and time
?staffId=...&date=2026-06-15 -> staff pre-selected for this date
?date=2026-06-15&time=14:00 -> customer lands on 2pm where available
?serviceId=...&partySize=2&durationMinutes=60 -> editable resource-led session options
?serviceId=...&resourceId=... -> specific public resource preferred
?serviceId=...&resourceCategoryId=... -> resource type preferred
Where Quick Book Links are auto-used
| Surface | Auto-builds Quick Book URLs |
|---|---|
| AI Booking Enquiry Auto-Responder | Yes - extracts intent from the customer's SMS/email and replies with a pre-filled link |
| Waitlist offer SMS | Yes - offers a specific opening with the slot pre-filled |
| Share-an-opening from calendar day view | Yes - operator taps share, picks the gap, gets a pre-filled link to send |
| Booking detail share button | Yes - same mechanic |
| Flash Deals | No - flash deals use a separate /deal/{token} route |
Building your own
You can construct Quick Book URLs manually for:
- Instagram bio links: pre-fill a popular service
- Email campaigns: send a "Book now" CTA to a specific service
- QR codes: pre-fill a service, party size, duration, resource type, or specific public resource
- Partner sites: share a referral-specific booking URL
Getting the IDs
- Service ID: from the URL when editing a service (
/app/{slug}/services/{serviceId}) - Staff ID: from the URL when editing a staff member (
/app/{slug}/team/{staffId}) - Resource ID: from the resource's public booking setup in Resources. Use only when the resource has a customer-safe public profile.
- Resource category ID: from the category in Resources. Use only for services that expose resource type choice.
If you do not know the IDs and just want a single-service deep link, the embed widget is easier for one-off setup.
Validation behaviour
Parameters fail safely when invalid. The customer sees the storefront's standard booking flow, not an error page.
- Past
date-> dropped - Bad
dateformat -> dropped - Bad
timeformat -> dropped - Unknown
serviceId-> dropped - Unknown or inactive
staffId-> dropped - Invalid
partySizeordurationMinutes-> dropped - Ineligible
resourceIdorresourceCategoryId-> fallback to the nearest safe choice, such as "Any available" or a valid resource type - Type-only services ignore
resourceId - Hidden-auto-assign services ignore public resource preference params
The "skip a step" optimisation only runs after validation. Resource-led availability, slot holds, and booking creation use the same capacity-aware server model, so a stale link cannot reserve an ineligible room or resource.
Mobile and embed compatibility
Quick Book Links work in:
- The standard storefront on
openchairpro.com/{slug}and custom domains - The embed widget (
/embed/{slug}/booking?serviceId=...) - Mobile browsers
The booking wizard reads the parameters on any surface.
Tracking conversions
UTM parameters are preserved through the booking flow and end up in conversion event properties.
https://your-slug.openchairpro.com?serviceId=...&utm_source=instagram&utm_campaign=balayage_promo
Common mistakes
| Problem | What to check |
|---|---|
| Quick Book URL lands at the wrong page | Confirm the slug or custom domain is correct. |
| Service, staff, or resource pre-fill did not work | Confirm the IDs are current, public where required, and valid for the selected service. |
| Customer says the time slot was not available | Past or already-booked slots fall through to the standard time picker. |
| Want a public-friendly URL with names instead of UUIDs | Not supported on Quick Book. UUIDs are the canonical IDs. Staff vanity handle URLs work for staff profile pages only. |
| Embed widget does not pre-fill | Pass parameters to /embed/{slug}/booking?serviceId=..., not only to your main storefront URL. |
FAQ
What's a Quick Book Link?
Your storefront URL with extra query parameters that pre-fill the booking wizard. Pass any combination of date, time, service, staff, party size, duration, and resource context to skip safe picker steps.
Where do these get used in practice?
AI booking enquiry replies, waitlist offers, share buttons, marketing campaigns, Instagram bio links, resource-led campaigns, and QR codes printed for in-venue promo.
What URL parameters are supported?
date, time, serviceId, staffId, partySize, durationMinutes, resourceId, and resourceCategoryId.
Do I need to do anything to enable them?
No. Quick Book Links are part of every venue's storefront automatically. Just append the parameters to your storefront URL and share.
Will the customer be able to change the pre-filled selections?
Yes. Pre-fills are not locks. The customer can pick a different service, staff member, time, party size, duration, or resource option where the service allows it.