Yes this only works for outbound calls tho. For inbound you would still need make/n8n
In the ghl workflow that triggers a call setup a custom code action that uses the GHL api to pull all available slots within a x day window from the current time (I'd recommend 5-10 days)
In the vapi call trigger include the available slots as a dynamic variable.
Now your Assistant knows the available slots when you add that variable to the prompt.
As long as you also add a variable for the current date and time it can now conversationally book slot.
Once a user books/confirms an appointment, trigger a function call back to ghl. The function call needs to include the booked slot in the right timestring format.
Your prompting has to be very clear for this to work.
In the ghl workflow that gets triggered from the function call use the appointment booking action to book the appointment.