Open Appointments settings
Dashboard → Widget Settings → Appointments. Toggle booking on for your site.
Let visitors book appointments inside the Wiretalk chat widget. Configure slots, bot follow-up buttons, availability API, and agent inbox management.
Let visitors book time slots directly inside the chat widget — no external Calendly link required. Appointments respect your business hours, show green available slots and red booked slots, and work from bot quick replies or AI follow-up buttons.
Dashboard → Widget Settings → Appointments. Toggle booking on for your site.
Configure duration, interval between slots, buffer time, how far ahead visitors can book (advance_days), and minimum notice (min_notice_hours).
Slots are generated only during your weekly schedule. Set timezone and hours under Widget Settings → Online schedule.
Visitors pick a date, see all slots for that day, and confirm a time. Available slots are selectable (green); already booked slots appear disabled (red).
Booking requires a visitor name or email. If your pre-chat form collects these, they are reused automatically. Otherwise inline fields appear in the picker.
Add an Appointment picker follow-up button on bot templates, or let AI suggest booking when configured. See Bot follow-up buttons.
View upcoming bookings under Widget Settings → Appointments in the agent dashboard. Update status (pending, confirmed, cancelled, completed) and add notes.
When editing a bot reply template, add a follow-up button with type appointment:
{
"type": "appointment",
"label": "Book a demo"
}
When the visitor taps the button, the widget opens the appointment picker inline. Standard quick-reply buttons use "type": "button" and send a text message instead.
The embed bootstrap exposes appointment settings under config.appointments (enabled flag, duration, advance window, timezone). The widget calls the availability and book endpoints automatically — custom embeds rarely need to call these directly.
Full request/response examples are in the API reference → Widget appointments and Agent appointments sections.
| Endpoint | Purpose |
|---|---|
POST /api/widget/appointments/availability | List slots for a date (available, status per slot) |
POST /api/widget/appointments/book | Book a slot (requires visitor name or email) |
GET /api/agent/appointments | List organization appointments |
PATCH /api/agent/appointments/{id} | Update status or notes |
GET/PATCH /api/agent/appointment-settings | Read or update slot rules |