Connect GoHighLevel
Step-by-step guide to connecting your GoHighLevel account so messages, contacts, and appointments flow into Signals.
What you'll need
- A Warpflow Signals account
- A GoHighLevel account with at least one location
Connect your account
- In your Signals dashboard, go to Integrations → Connections
- Click Connect GoHighLevel
- You'll be redirected to GoHighLevel to authorize the connection
- Select the location you want to connect
- Click Authorize, and you'll be redirected back to your dashboard with a success confirmation
Tokens are stored securely and refresh automatically. You won't need to reconnect unless you revoke access in GHL.
What data flows once connected
Once connected, the following data flows automatically:
| Data type | Direction | What happens |
|---|---|---|
| Messages | GHL → Signals | Every inbound message is processed through your pipeline |
| Contacts | GHL → Signals | Contact info populates template variables (name, phone, email) |
| Form submissions | GHL → Signals | Form entries are classified and routed like any other signal |
| Appointments | GHL → Signals | Appointment events can trigger confirmation or reminder rules |
| Replies | Signals → GHL | Template and AI replies are sent through GHL Conversations |
| Contact updates | Signals → GHL | Tags, custom fields, notes, and pipeline stage updates sync back |
Agency vs. single-location setup
Single location: Connect one GHL location to one Signals tenant. Most small businesses use this.
Agency (multiple locations): Installing at the agency level automatically maps each location to its own tenant configuration. Each location gets its own routing rules, templates, and settings. Contact your account manager or email support@warpflow.ai for agency setup.
Troubleshooting
Authorization fails or times out:
- Make sure you're logged into the correct GHL account
- Check that your GHL user has admin permissions for the location
- Try again; temporary network issues can cause timeouts
Messages aren't flowing:
- Go to Integrations and verify the connection status shows "Connected"
- Check that webhooks are registered (shown under the connection details)
- Send a test message to your GHL number and check if it appears in the Signals test runner
Replies aren't sending:
- Verify your routing rules have
send_templateorgenerate_replyactions enabled - Check that the template's channel matches the inbound channel (SMS → SMS, email → email)
- Review the test runner output to see if actions are firing in dry-run mode (meaning the adapter isn't connected)