We use GHL as our CRM and our flow looks like this
Agent Asks customer for date and time
Customer provides date and time
Agent sends request to make.com
make sends request to GHL to book the selected slot
2 possible outcomes, either 201 or slot taken
If slot taken we send another request to GHL to get available slots around the originally selected slot (lets say 1 hr before and 1hr after)
Sends that back to Agent
And then the user responds with a date and time again and it loops untill the user has found a slot that works for them