Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.voxworks.ai/llms.txt

Use this file to discover all available pages before exploring further.

Description

Creates a booking in Calendly for the time slot the user selected during the conversation. The tool uses AI to extract the appointment date and time from the conversation context, then calls the Calendly API to create the booking. Returns true if the appointment is booked successfully. Provider: Calendly (calendly.com) Timezone: Australia/Sydney (automatically converted to UTC for API) Location Type: Outbound call (the assistant will call the user at their phone number)

Manual Inputs

NameData TypeRequiredDescription
Invitee namestringYesFull name of the person booking the appointment
Invitee emailstringYesEmail address of the person booking the appointment
Invitee phonestringYesPhone number of the person booking the appointment
You can use variables in these fields:
  • [Contact - First Name] for the name
  • [Contact - Email] or [Contact - Email (Verified)] for the email
  • [Contact - Phone] for the phone number

Global Inputs

This tool automatically uses:
VariableDescription
[Calendar - Event ID]The Calendly event URL (set by Calendly - Get Availabilities)
The tool also uses the conversation context to extract which time slot the user selected.

Manual Outputs

NameData TypeDescription
resultbooltrue if appointment was booked successfully

Global Outputs

VariableData TypeDescription
[Calendar - Booking Time - Raw]stringBooked time in YYYY-MM-DD HH:MM format
[Calendar - Booking Time - Written]stringBooked time in human-readable format
[Calendar - Booking Time - Spoken]stringBooked time in natural spoken format
[Calendar - Booking ID]stringCalendly event URI (used for cancellation)
[Calendar - Booking Link]stringURL to view/modify the booking
[Calendar - Booking Error - Spoken]stringError message if booking failed (for assistant to speak)

Conditions

Success (true)

The tool returns true when:
  • The booking is successfully created in Calendly
  • The Calendly API returns a confirmation

Failure (false)

The tool returns false when:
  • The invitee email is missing or invalid
  • The selected time slot is no longer available (race condition)
  • The AI cannot extract a valid date/time from the conversation
  • [Calendar - Event ID] is empty (run Calendly - Get Availabilities first)
  • The Calendly API credentials are missing or invalid
  • A network or API error occurs

Example Usage

Step 1 (Tool): Calendly - Get Availabilities
   -> Success -> Step 2

Step 2 (Tool): Calendar - Check Availability
   -> Success -> Step 3

Step 3 (Voice): "I have [Calendar - Availability - Spoken]. Which works best?"
   -> User selects time -> Step 4

Step 4 (Tool): Calendly - Book Time
   Input:
     Invitee name = "[Contact - First Name]"
     Invitee email = "[Contact - Email]"
     Invitee phone = "[Contact - Phone]"

   Condition: true (success)
   -> Next: confirmation_step
   -> Script: "You're all set for [Calendar - Booking Time - Spoken]!"

   Condition: Otherwise (failure)
   -> Next: retry_step
   -> Script: "That slot just got taken. Let me check for other times."

Prerequisites

This tool requires:
  1. Calendly API Token — Connected via your team integrations settings
  2. [Calendar - Event ID] — Set by running Calendly - Get Availabilities first
  3. User’s time selection — The user must have selected a time from the available options

Best Practices

  1. Get availability first — Run Calendly - Get Availabilities before booking
  2. Confirm before booking — Verify the selected time with the user
  3. Handle race conditions — Slots can be taken between checking and booking; have a retry flow
  4. Send confirmation — Follow up with SMS containing booking details
  5. Use contact variables — Pre-fill invitee details from contact record
  6. Ensure email exists — Use the Contact Email is Available function first

Next Steps