This guide walks you through the process of integrating your GoHighLevel (GHL) CRM with your HealthSherpa Medicare account.
This works with all GHL/LeadConnector white-labels too – such as Done For You, AgentCRM, GoGuru, or any other white-label.
If you have any questions, email medicare-integrations@healthsherpa.com.
What this integration offers
This streamlines your workflow from GHL, to quoting, to enrollment, eliminating dual data entry.
GHL contacts sync to HealthSherpa Medicare in real-time – both when created and when updated:
Each GHL contact gets a unique link to their HealthSherpa Medicare quoting session:
So, your GHL contact data flows to HealthSherpa Medicare all the way through quoting and enrollment – eliminating double data entry:
1. Before you begin
Make sure:
You know your GHL Sub-account location ID(s)
You’ve converted your HealthSherpa Medicare account to an agency. You can do even if you’re a solo agent.
(If your agency has a unique Sub-account for every agent, you don't need to convert to an agency account, as long as your agency has added your LocationID to their API key. Learn more)
For any of your downline agents using this integration – their HealthSherpa Medicare account is joined to your agency account.
User emails match between GHL and HealthSherpa Medicare accounts. (See how to update your HS Medicare email here.)
2. Setting up the integration
To set up the integration, watch this video or follow the instructions below.
Generate your API key
Log into your HealthSherpa Medicare agency account.
Go to the Integrations tab.
Under the GoHighLevel section, click Generate your API key.
Enter one or more GHL location IDs (comma-separated).
Entering more than one location is applicable if each of your GHL agents has their own sub-account/location ID. Learn more below.
Click "Generate API key."
⚠️ If you need to edit Location IDs after generating your key, contact us: medicare-integrations@healthsherpa.com (soon you'll be able to do this yourself).
Install the HealthSherpa Medicare for Workflows App
Log into your HealthSherpa Medicare account, and in the same browser, click one of these install links:
Using classic GoHighLevel? > Click this install link
Using a whitelabel such as GoGuru, DFY, AgentCRM? > Click this install link
You’ll land on this page – scroll down and click the Next button:
Select the GHL Sub-account you'd like to integrate with:
Enter the API key you generated and press Verify & Install:
You'll be directed to HealthSherpa Medicare, and see this success message:
3. Setting up Workflows
To set up Workflows, watch this video or follow the instructions below.
• Required custom fields
In GHL, go to Settings > Custom Fields and add two custom fields attached to the Contacts object.
Click the Add field button
Select Single Line
Enter hsmedicare_contact_id as the Name
Select Contact as the Group
Press Save
Then repeat the above, but using hsmedicare_redirect_url as the Name
• Create Contact Workflow
To access your Workflows, navigate to the Automations tab.
1. Click the Create Workflow button
2. Add a trigger and choose Contact Created
If you want, you can add a filter here. For example, if you have ACA and Medicare contacts, you can add a filter for contacts tagged "Medicare."
3. Add an Assign to User step and assign the contact to your agent
4. Add the Create Contact V1 workflow action defined in the HealthSherpa Medicare for Workflows app
Make any edits you need to the workflow action
5. Add a new step Update contact field that updates the two custom fields you defined with values returned from the previous action:
hsmedicare_contact_id: HealthSherpa Medicare For Workflows > Create Contact V1 > Contact ID
hsmedicare_redirect_url: HealthSherpa Medicare For Workflows > Update Contact V1 > Redirect URL
• Update Contact Workflow
Now you'll go through similar steps, but for the Update Contact Workflow:
1. Go back to your Automations tab, and click the Create Workflow button
2. Define your trigger when you want to update the contact record that was previously synced over, for example upon updating the email address.
3. Add the Update Contact V1 workflow action defined in the HealthSherpa Medicare for Workflows app
Make any edits you need to the workflow action
4. Add a new step Update contact field that updates the redirect URL custom field you defined with the value returned from the previous action:
hsmedicare_redirect_url: HealthSherpa Medicare For Workflows > Update Contact V1 > Redirect URL
• Backfilling (optional)
Here's how to move all or some of your existing GHL Contacts over to HealthSherpa Medicare at once:
In GHL, go to your Contacts tab
Select any Contacts you'd like to move over from your Contacts list
Click the Add to Automation icon:
Add an Action Name – this can be anything, it's just for your logs
Select the Create Contact Workflow – or in other scenarios, you may want to run the Update Contact Workflow
Click Add to Automation and your Contacts will transfer to HS Medicare
✅ With that, you're all set! Your contacts will sync, and you'll have a HS Medicare redirect link on each GHL contact record.
⚠️ Important: Make sure each contact is assigned to an agent with a HealthSherpa account and is connected to your agency. The sync will not occur if there is no agent assigned to the Contact.
⚠️ Important: If you'll be updating a contact's assigned agent over time, this will require a separate custom Workflow – see below for how handle that.
Contact reassignment between agents
If you use GHL in a way where contacts may be reassigned from one agent to another over time, you’ll need to add a separate Reassignment Workflow to keep your sync working as expected.
Without this workflow, when you update the agent assigned to a contact, it will fail to sync, because the contact will be tied to a original agent’s HealthSherpa account.
You'll handle for this by building a Reassignment Workflow:
Reassignment Workflow
This workflow triggers when a contact's assigned agent changes and syncs the contact to the new agent’s HealthSherpa account.
⚠️ Important: This is not a true "transfer” of the Contact record in HealthSherpa – it results in a new contact being created in HealthSherpa, in the new agent's account.
Step 1. Create a new workflow
Go to Automation > Workflows in GHL and click + Create workflow
Select Start from scratch
Set the trigger to: Contact Changed
Then apply a filter: Assigned User > Has changed
Press Save trigger
Step 2. Add conditional logic (important!)
Add a condition block immediately after the trigger:
Only continue if:
HS Medicare Contact ID
exists on the contact
This prevents the workflow from running for brand new contacts (since those should use the Create Contact workflow instead). It ensures this workflow only runs when an already-synced contact is being reassigned.
Step 3. Add the Create Contact workflow action
Under the Yes branch of your condition:
Click the + sign
Add the Create Contact V1 action from the HealthSherpa Medicare for Workflows app
Configure as needed (e.g. lead vs client, contact fields, etc.)
Step 4. Update the custom fields
Add an Update Contact Field step to set the new contact’s:
hsmedicare_contact_id
→ value returned from the Create Contact stephsmedicare_redirect_url
→ value returned from the Create Contact step
What to expect
After a contact is reassigned to a new agent, a new HealthSherpa contact is created in the new agent's HealthSherpa Medicare account.
The redirect link now points to that new contact
Old redirect links (from the previous agent) will still work – but only for that agent
Medicare applications are not transferred between agents (since they're tied to separate contact records in HealthSherpa)
Let us know at medicare-integrations@healthsherpa.com if you have any questions.
If you have a Sub-account per agent
Some agencies set up their GHL principal agent as a Sub-account, and downline agents are Users below that Sub-account.
Other agencies set up their GHL principal agent as an Agency, and each downline agent is a Sub-account below that Agency. If you're operating this way, here's what you need to do:
When you generate your API key, enter the Location IDs of all of your downline agents' Sub-accounts, comma separated.
Then, each agent should go through the integration process outlined in the Workflow Creation section above.
⚠️ After you create your API key, if you need to add or remove Location IDs, email medicare-integrations@healthsherpa.com (soon you'll be able to do this yourself).
Field reference & validation
Below are the contact fields HealthSherpa expects, with their rules. Any optional fields that did not pass validation will be ignored and contact creation/update will sync, so long as the required fields pass validation:
Field | Required? | Rules / Format |
external_id | Required (hidden) | Auto‑populated from contact.id |
agent_email | Required (hidden) | Auto‑populated from user.email. An agent with a HealthSherpa Medicare account must be assigned to the contact in order for the sync to occur |
first_name | Required | String, 1–100 chars. Defaults to contact.first_name |
last_name | Required | String, 1–100 chars. Defaults to contact.last_name |
Optional | Must be a valid email format if present. Defaults to contact.email | |
phone | Optional | Must be a valid US phone number if present and E.164 format. Defaults to contact.phone_raw |
address_1 / address_2 | Optional | Strings, max 100 chars each. address_1 defaults to contact.address1 |
city | Optional | String, max 100 chars. Defaults to contact.city |
state | Optional | Must be a valid US state (e.g., TX or Texas). Defaults to contact.state |
zip | Optional | 5-digit US ZIP code (e.g., 77001) |
birth_date | Optional | Use a Date Picker field. |
sex | Optional | Must be male or female if provided |
type | Optional | Must be client or lead, defaults to lead |
medicare_number | Optional | String, max 100 chars |
medicaid_number | Optional | String, max 100 chars |
medicare_part_a_effective_date | Optional | Use a Date Picker field type in GHL |
medicare_part_b_effective_date | Optional | Use a Date Picker field type in GHL |
medicaid_eligible | Optional | Must be either true or false |
extra_help | Optional | Must be either true or false |
Troubleshooting
My integration didn't connect, why?
Troubleshooting steps:
Did you log into your HealthSherpa Medicare account first, and from the same browser, load the installation link?
Did you load the correct installation link? There are 2: one for GoHighLevel classic, and one for LeadConnector/Whitelabel brands (such as DFY, Agent CRM, GoGuru, etc.)
Did you use the correct LocationID?
Did you copy your API key into the GHL integration page, and not your LocationID?
My contacts aren't syncing, why?
Troubleshooting steps
Make sure that you are the user/agent assigned to the contact in GHL
Make sure your GHL account's email matches the email for your HealthSherpa Medicare account.
If you're a downline agent, and your agency set up the integration for you, check your HealthSherpa Medicare account is joined to the HealthSherpa Medicare agency account that set up the GHL integration.
Check the Execution Logs of the Workflow for the Create Contact v1 action with a Failed status and click View Details. This will reveal the Event Details and any messages about why the contact failed to sync:
My fields aren't all syncing, why?
If your contacts are syncing, but certain fields aren't transferring over, please reference the field validation section above to ensure that your values match the Rules / Format criteria there.
To investigate further, from your workflow, click Execution Logs, look for any logs with the Create Contact v1 action and click View Details. This will reveal the Event Details and any messages about specific fields that failed to be saved:
FAQ
What is my Location ID?
In your GHL account, click into Settings and then Business Profile:
Can I sync a contact's prescriptions, providers, or pharmacies?
Not yet, but it's on our roadmap.
Does data sync from HealthSherpa Medicare back to my GHL CRM?
Not yet, but it's on our roadmap. First, to sync back enrollment record data.
Got questions? Contact support
Call (855) 521-4984 or email medicare-agents@healthsherpa.com with questions.