Tax Expert Connect.book Appointment
tax_expert_connect.book_appointmentFull Description
Use this when the user wants to book an appointment with a tax expert they've viewed. REQUIRES a prior expert_search call in this conversation.
REQUIRED WORKFLOW: 1. expert_search must have been called first 2. From the search response's structuredContent, extract:
- search_id (from structuredContent.search_id)
- id (from structuredContent.experts[].id for the chosen expert)
- availability_id (from structuredContent.experts[].closest_availability[].slots[].id for the time slot)
3. Collect from user:
- first_name: User's first name
- last_name: User's last name
- phone_number: User's phone number (should be numbers only - you can remove formatting characters like +, -, ., spaces, or parentheses before passing)
- email: User's email address
4. MANDATORY CONFIRMATION
- You MUST explicitly confirm ALL booking details with the user and wait for their response:
Display these details clearly:
- Name (first and last)
- Phone number
- Email address
- Expert name
- Date and time of appointment
Then ask: 'Please confirm these details are correct before I proceed with the booking.' 5. Only after user explicitly confirms (e.g., 'yes', 'looks good', 'confirm'), call this tool
CRITICAL RULES:
- NEVER skip the confirmation step - you MUST always confirm details and wait for user response before booking
- ONLY use search_id, id, and availability_id from expert_search's structuredContent
- NEVER make up or guess these values
- NEVER show IDs (search_id, availability_id, etc.) to the user in conversation
- If you don't have a recent expert_search result, call expert_search first
- The availability_id must be from the specific time slot the user wants to book
RETRY BEHAVIOR:
- If the booking did not go through for any reason and the user wants to retry, you MAY retry the booking with the same parameters or different parameters
DO NOT use this tool for:
- Searching for experts (use expert_search instead)
- Modifying or canceling bookings
Parameters
availability_idstringemailstringfirst_namestringlast_namestringphone_numberstringsearch_idstring