Request a booking (the person confirms)
request_bookingHold one free time for the user for 5 minutes. This does NOT book the appointment. It returns confirm_url: you MUST show that link to the user right away and tell them to open it, enter their phone number and the code we text them, and confirm. Until they do, nothing is booked; never say the appointment is booked or confirmed. Depending on the professional, confirming books it at once or sends a request the office accepts or declines. Use a start_local value from get_availability. If the professional cannot be booked online, the answer gives their contact options instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language of the confirm page and messages for the user (ISO 639-1). Default: the professional's language. | |
| mode | No | office (in person) or video. Default: in person when offered. | |
| slug | Yes | The professional's slug. | |
| start | Yes | Start time in the professional's local time, YYYY-MM-DDTHH:MM (start_local from get_availability). An ISO time with offset is also accepted. | |
| reason | No | Optional short reason for the visit, in the user's words. Leave out sensitive details. | |
| client_name | Yes | Full name of the person who will attend (they can correct it on the confirm page). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | ||
| when | No | ||
| start | No | ||
| reason | No | ||
| status | Yes | ||
| contact | No | ||
| expires_at | No | ||
| confirm_url | No | ||
| start_local | No | ||
| alternatives | No | ||
| hold_minutes | No | ||
| professional | Yes | ||
| what_to_tell_user | Yes | ||
| needs_professional_approval | No |