by System Admin
Tagged with: , , , ,
by System Admin
Tagged with: , , , ,
by System Admin
Tagged with: , , , ,
by System Admin
Tagged with: , , , ,
by System Admin
Tagged with: , , , ,
by MD Faizan Uzzaman
Quick overview This workflow receives appointment requests via webhook, checks slot availability, then creates/updates a contact and books a 30-minute appointment in GoHighLevel (HighLevel). It also creates or updates a related opportunity with custom fields and triggers follow-up sub-workflows for background processing and error handling. How it works Receives a POST webhook request with the patient’s name, phone, address, service type, and preferred date/time. Calls a separate n8n workflow to check whether the requested time slot is available. If the slot is unavailable, returns a response indicating the appointment was not booked and the slot is unavailable. If the slot is available, builds a 30-minute start/end time window from the preferred date/time and creates or updates the contact in GoHighLevel. Books the appointment in the specified GoHighLevel calendar and then searches the GoHighLevel pipeline for an existing opportunity matching the contact/phone. Updates the existing opportunity stage or creates a new opportunity, then uses the LeadConnector/GoHighLevel API to set custom fields (service type, preferred date/time, and event ID). Returns a “booked” response payload and triggers a separate background workflow with the booking details, while routing any GoHighLevel failures to an error workflow. Setup Add GoHighLevel (HighLevel) OAuth2 credentials for the contact, calendar appointment, and opportunity actions. Add a GoHighLevel/LeadConnector private integration bearer token for the HTTP request that updates opportunity custom fields. Update the GoHighLevel location ID, calendar ID, pipeline ID, stage ID, and custom field IDs to match your GoHighLevel account. Publish and configure the dependent sub-workflows (“Ray - Check Slot Availability”, “Ray - Background Workflow”, and “Ray - Error Workflow”) and ensure their workflow IDs are correct. Copy the webhook URL for POST /ray/book-appointment and configure the calling system to send the required request body fields.
by System Admin
Tagged with: , , , ,
by System Admin
Tagged with: , , , ,
by System Admin
Tagged with: , , , ,
by System Admin
Tagged with: , , , ,
by Davide
This workflow transforms n8n into a call automation system, where AI agents can talk directly with people over the phone using Twilio. This workflow integrates Ultravox AI voice agents with Twilio’s telephony service to fully automate outbound phone calls. Ultravox generates the AI conversation and audio, while Twilio handles the PSTN connection to the actual phone network, with the two services connected in real-time via a media stream. Key Advantages AI-Powered Conversations** – Leverage Ultravox agents to handle natural, real-time dialogues with customers. Seamless Telephony Integration** – Twilio ensures reliable phone call delivery worldwide. Flexible Setup** – You can easily change the target phone number, agent, or Twilio line directly in the workflow. Scalable Outreach** – Automates outbound calls for customer support, sales, or appointment reminders. Step-by-Step Guidance** – The workflow includes clear instructions for: Buying and configuring a Twilio number Creating an Ultravox agent Executing the final call How it Works Manual Trigger: The workflow is started manually by a user within n8n. Set Parameters: The "Set Params" node defines the crucial variables for the call: the Ultravox agent_id, the Twilio phone number to call from (twilio_number), and the destination phone_number to call. Initiate Ultravox Session: The "Create Ultravox Call" node sends an HTTP POST request to the Ultravox API. It specifies the agent to use and, crucially, informs Ultravox that the call will be handled by Twilio (medium: { twilio: {} }). Ultravox responds with a unique joinUrl (a WebSocket stream URL). Place the Twilio Call: The "Twilio Call" node uses the details from the previous steps. It instructs Twilio to make a call from the specified twilio_number to the target phone_number. The key instruction (twiml) tells Twilio to connect the call to the joinUrl provided by Ultravox, effectively streaming the audio between the participant and the AI agent. Set Up Steps Twilio Configuration: Log into your Twilio Console. Buy a phone number under the "Phone Numbers" section. Obtain your "Account SID" and "Auth Token" from the dashboard. In the "Twilio Call" node credentials, add your Twilio Account SID and Auth Token. In the "Set Params" node, set the twilio_number value to your newly purchased Twilio number (e.g., +1xxxxxxx). Ultravox Configuration: Log into your Ultravox App. Create a new AI Agent by configuring its voice, tools, and system prompt. Copy the ID of your newly created agent. In the "Set Params" node, set the agent_id value to your Ultravox agent's ID. Execute the Call: In the "Set Params" node, set the phone_number value to the destination number you wish to call (e.g., +1xxxxxxxx). Execute the workflow manually from the n8n editor. The AI agent will call the specified number through Twilio. Need help customizing? Contact me for consulting and support or add me on Linkedin.
by System Admin
Tagged with: , , , ,