Background & Purpose
This SOP is designed to assist in troubleshooting issues related to conversational calendar booking for client-facing interactions. Following the outlined CASPER triage process ensures efficient problem identification and resolution, enabling the booking bot to perform as intended and provide reliable support for AI deployment.Required Resources
- Access to conversational booking tool (e.g., GoHighLevel)
- Logs for tool activity (availability checks and booking actions)
- Client’s calendar settings and availability link
- Access to assistant configuration (e.g., prompts, calendar connections)
The CASPER Methodology
Use this systematic triage order: C-A-S-P-E-RC - Calendar Access
A - Ability (Tools)
S - Settings
P - Prompt
E - Event Tool Calls
R - Refresh Connection
1. Calendar Access (C)
Objective
Ensure the assistant has access to the specific calendar and verify correct integration.Verification Steps
Check Calendar Integration
- Navigate to Assistant Settings
- Go to the Calendars tab
- Verify calendar is listed and connected
Add Calendar if Missing
- Click “Add Calendars” to open the calendar menu
- Sync your calendars with GoHighLevel
- Click “Add to Assistant” to begin verification process
Verification Process
- The verification process runs a simulation for booking
- Calendar only verifies if simulation is successful
- Look for green checkmark in upper right corner after verification
- Click “Add to Assistant” to complete the process
Success Criteria
✅ Calendar appears in assistant’s calendar list ✅ Green checkmark indicates successful verification ✅ Calendar is actively connected to assistantTroubleshooting
Calendar not appearing:- Check GoHighLevel calendar permissions
- Verify calendar is properly configured in GoHighLevel
- Ensure OAuth connection is active
- Review calendar availability settings
- Check for booking conflicts or restrictions
- Verify calendar has available time slots
2. Ability (A)
Objective
Confirm the assistant has access to essential tool calls for calendar management.Required Tools for Booking
- Check Availability - Retrieves available time slots
- Book Appointment - Creates appointments on calendar
Verification Steps
Check Existing Tools
- Navigate to Tools & Abilities in assistant settings
- Verify presence of calendar management tools
- Confirm “Check Availability” and “Book Appointment” are enabled
Add Missing Tools
- Click “Add Function” if tools are missing
- Select from pre-built tools (should be first two options)
- Enable required calendar tools
Additional Useful Tools
- Reschedule Appointments - Modify existing bookings
- Cancel Appointments - Remove scheduled appointments
- Check Contact’s Current Appointments - View existing bookings
Success Criteria
✅ “Check Availability” tool is enabled ✅ “Book Appointment” tool is enabled ✅ Tools appear in assistant’s function listTroubleshooting
Tools not working:- Verify tool permissions are correctly set
- Check tool configuration parameters
- Test tools with simple booking scenarios
3. Settings (S)
Objective
Verify calendar settings to ensure booking works as expected and availability is correctly configured.Calendar Settings Verification
Access Calendar Settings
- Navigate to Calendars in GoHighLevel
- Go to Calendar Settings
- View all configured calendars
Check Objective Availability
- Click the 3 dots on your calendar
- Click “Share” to open popup
- Copy the permanent calendar link
- Paste link in new tab to view public availability
Common Settings Issues
Third-Party Calendar Integration
Problem: Google or other calendar integration blocking availability Solution:- Review third-party calendar settings
- Check for personal calendar conflicts
- Adjust integration settings to allow availability
General Calendar Settings
Potential Conflicts:- “Look Busy” settings limiting availability
- Date range restrictions blocking certain periods
- Buffer time conflicts consuming available slots
- Working hours not properly configured
Settings Audit Checklist
- ✅ Working hours align with intended availability
- ✅ Buffer times are appropriate
- ✅ Third-party integrations don’t block availability
- ✅ Date restrictions are properly configured
- ✅ Public availability matches expectations
Troubleshooting
Availability doesn’t match expectations:- Review all calendar integrations
- Check working hours and time zones
- Verify buffer and break settings
- Audit any special restrictions or rules
4. Prompt (P)
Objective
Ensure prompts are concise and focused solely on booking tasks without confusion.The Simplicity Principle
Key Insight: You can create a perfectly functional booking assistant with a simple prompt: “You are an appointment booking bot”
Common Prompt Problems
Information Overload
Problem: Using prompt as a place to dump context and information Issues:- Confuses the AI about primary objectives
- Creates conflicting instructions
- Interferes with booking functionality
Proper Content Distribution
Prompt Should Contain:- Personality/Identity - Who the assistant is
- Response Guidelines - How to communicate
- Style Guardrails - Tone and approach
- Important Points - Key behavioral notes
- Instruction Set - What to do and when
- Domain Knowledge - Industry-specific information
- Business Information - Company details
- FAQs - Frequently asked questions
- Objection Handling - Response strategies
- Pricing Information - Simple pricing details
- Key-Value Trained Output - Structured responses
- Context Injection - Conditional instructions
- Data Retrieval - Getting information
- Data Processing - Performing actions
- Parameter Scaling - Dynamic functionality
Prompt Best Practices
Structure Guidelines
- Be concise and direct
- Use clear, simple language
- Avoid complex scenario handling
- Remove unnecessary markdown (only use ## headers)
- Focus on core booking functionality
Example Effective Booking Instruction
Success Criteria
✅ Prompt is concise and focused ✅ Booking instructions are clear and simple ✅ No conflicting or confusing directives ✅ Business information moved to knowledge baseTroubleshooting
AI not following booking protocol:- Simplify prompt language
- Remove conflicting instructions
- Separate business info into knowledge base
- Test with minimal prompt first
5. Event Tool Calls (E)
Objective
Confirm tools successfully execute for booking and availability checking.Log Analysis
Check Task Performed Events
- Review conversation logs
- Look for “Task Performed” entries
- Examine metadata for tool calls
Availability Check Issues
AI Giving Improper Times:- Verify availability tool call shows in logs
- Check metadata for retrieved time slots
- Compare with actual GoHighLevel availability
- If discrepancy exists: Review calendar settings (not OAuth issue)
- Conflicting booking instructions
- Unclear language around appointment scheduling
- Complex time handling instructions
Booking Execution Issues
AI Giving Correct Times but Not Booking:- Check booking tool metadata for GoHighLevel response
- Review error codes in tool call results
- Authorization Errors: OAuth configuration issues
- Bad Request: Instruction injection or timezone conflicts
- Permission Denied: Insufficient OAuth permissions
Tool Call Verification
Successful Tool Calls Should Show:
- Timestamps for when tools were executed
- Calendar details in metadata
- Response metadata (e.g., “appointment booked”)
- No error codes like “unauthorized” or “bad request”
Success Criteria
✅ Availability checks show correct time slots ✅ Booking attempts execute successfully ✅ Tool metadata shows proper responses ✅ No authorization or permission errorsTroubleshooting
Tool calls failing:- Check OAuth connection status
- Verify tool permissions
- Review instruction clarity
- Test with simple booking scenarios
6. Refresh Connection (R)
Objective
If all settings and tools appear correctly configured but issues persist, refresh all connections.Comprehensive Refresh Process
OAuth Connection Reset
- Disconnect OAuth from GoHighLevel
- Clear any cached connections
- Reconnect with fresh authentication
- Verify all permissions are granted
Tool Refresh
- Remove calendar tools from assistant
- Re-add tools with fresh configuration
- Test each tool individually
- Verify tool permissions
Calendar Resync
- Delete calendar from assistant
- Resync calendar with GoHighLevel
- Complete verification process again
- Test booking functionality
Prompt Reset
- Simplify prompt to basics
- Remove unnecessary information
- Build complexity gradually
- Test after each modification
Testing After Refresh
- Run simple availability check
- Attempt test booking
- Verify booking appears in calendar
- Test with multiple time slots
Success Criteria
✅ Fresh OAuth connection established ✅ Tools responding correctly ✅ Calendar properly synced ✅ Test bookings work flawlesslyDefinition of Done
This debugging checklist is complete when:- ✅ Assistant accurately checks for availability
- ✅ Booking functionality works reliably
- ✅ Calendar times align with intended availability
- ✅ Prompts are clean and focused
- ✅ Tool call logs show successful operations
- ✅ No error responses in system logs
Additional Troubleshooting
Common Error Messages
”Unauthorized” Error
Cause: OAuth connection issues Solution:- Refresh OAuth connection
- Verify all permissions granted
- Check GoHighLevel account access
”Bad Request” Error
Cause: Instruction injection or data formatting issues Solution:- Simplify booking instructions
- Let AI handle timezone conversions naturally
- Remove conflicting prompt directives
Incorrect Availability Times
Cause: Calendar configuration issues Solution:- Check GoHighLevel calendar settings
- Review third-party calendar integrations
- Verify working hours and restrictions
Quick Reference CASPER Checklist
C - Calendar Access
- Calendar connected to assistant
- Verification successful (green checkmark)
- Calendar appears in assistant settings
A - Ability (Tools)
- “Check Availability” tool enabled
- “Book Appointment” tool enabled
- Tools configured with proper permissions
S - Settings
- Calendar availability matches expectations
- Third-party integrations working correctly
- Working hours and restrictions properly set
P - Prompt
- Prompt is concise and focused
- No conflicting instructions
- Business info moved to knowledge base
E - Event Tool Calls
- Availability checks working in logs
- Booking tool calls successful
- No error codes in metadata
R - Refresh
- OAuth connection refreshed if needed
- Tools removed and re-added
- Calendar resynced if necessary
Best Practices
Prompt Engineering
- Start simple with basic booking instructions
- Add complexity gradually only when needed
- Test each change thoroughly
- Keep business information in knowledge base
System Maintenance
- Regular OAuth checks to ensure connection health
- Periodic calendar setting audits
- Monitor tool call success rates
- Keep prompts clean and focused
Testing Strategy
- Test with real scenarios regularly
- Use multiple time slots for testing
- Verify bookings appear correctly in calendar
- Check from user perspective using public calendar link