Skip to main content

HealthSherpa Medicare: Webhook

View the technical docs for our webhook here:
​https://docs.medicare.healthsherpa.com/webhooks/introduction

Push enrollment data to your CRM automatically

Our webhook pushes real-time enrollment data directly to your CRM or system of record at the moment an enrollment is submitted.

No exports, no manual dual entry, no lag.

Getting started

  1. Create a HealthSherpa Medicare account

  2. Go to the Integrations tab and in the Webhook card, click Add webhook.

  3. Enter your Destination URL. This is the URL where we’ll send enrollment submission payloads. Your CRM should provide this to you.

  4. Choose an Authentication method:

    • API Key: Enter the API key from your CRM or destination system. We’ll send it as an X-API-Key header.

    • None: Use this only if your destination URL already includes authentication or your endpoint does not require authentication.

  5. Click Save webhook.

  6. You'll then implement your destination URL to ingest the Submission Payload Schema. Use our Test button to send a sample payload to your destination URL that you can use to map fields against.

Video tutorials

These walkthroughs show how to connect your HealthSherpa Medicare webhook to a CRM. Before following along, make sure you've completed the Getting Started steps above to activate your webhook.

Setting up with your CRM directly (Salesforce, GoHighLevel, Zoho, etc.)

Use this if your CRM supports inbound webhooks natively – most do, including GoHighLevel (Automations), Salesforce (Flows), and Zoho (Flows).

⚠️ GoHighLevel users

Make the first action after your Inbound Webhook trigger Create Contact (GHL's built-in action). Don't use Update contact field. An inbound webhook doesn't attach a GHL contact to the workflow, so an update step has nothing to update and the data is dropped. Create Contact matches existing contacts by email or phone, based on your GHL duplicate settings, so it won't duplicate clients you already have. In that same action, map the enrollment fields you want (carrier, plan, effective date, confirmation number, etc.) to GHL custom fields, not just the contact fields.

You don't need the Create Contact V1 / Update Contact V1 actions or the hsmedicare_contact_id field here. Those belong to our separate GoHighLevel integration, which sends data the other direction (GHL → HealthSherpa).


​

Setting up with Zapier

Use this if you want to route enrollment data to any app Zapier supports – Trello, Google Sheets, HubSpot, and hundreds more.

Fields included

We include fields from the enrollment and contact records – see the full list here.

A note about agency accounts:
Your agency account and any connected downline agent accounts are included in the scope of this webhook.

  • Enrollments from accounts joined to you as captive agents send all application and all contact fields in the payload.

  • Enrollments from accounts joined to you as independent agents send all application fields and a limited subset of contact fields. See details here.

  • See the Submission payload schema for full field details.

A note about external_id:

If a contact is created directly in the HealthSherpa UI (rather than passed in via API), the webhook will return external_id: null. You can backfill this value using the PATCH endpoint on the Contacts API – see the contact schema docs for details. Once set, all future webhooks for that contact will include the external_id.
​

Agency accounts & webhooks

You can connect webhooks to agent or agency accounts.

If you're connecting to an agency account, any downline agent accounts will be included in the scope of your webhook, meaning their enrollment submissions will trigger the sending of the payload to your webhook.

Note: The scope of webhooks is intra-agency, it doesn't extend to sub-agencies. Each agency/sub-agency will need to set up their own webhook.

Note: Captive downline agents can't set up webhooks (it won't appear on their integrations tab), only the Primary Admin can.

Note: as an agency, when your captive downline agents submit an enrollment, the full webhook payload fires to your destination URL(s), but when your independent downline agent submits an enrollment, the limited payload fires to your destination URL(s). The limited payload all fields for the enrollment, but limited fields on the contact (only name, state, zip). See the exact differences by looking at the ContactFull vs ContactLimited docs here.

Details

Event triggers

Currently, one event trigger is supported: enrollment submission. We may add more in the future.

Retries

There are three automatic retries if the webhook fails – at 20 seconds, 10 minutes, and 1 hour after the initial delivery.

Terms of Service

By adding a webhook, you're agreeing to send consumer data, including protected health information (PHI), to your destination URL in compliance with the HealthSherpa Terms of Service. You are responsible for ensuring your endpoint and any downstream systems handle this data in accordance with applicable privacy and security requirements.
​

FAQ

What's a webhook?

Our webhook is an automated, real-time notification system that sends data from our platform to your CRM instantly when an enrollment submission event occurs.

What's a destination URL?

A destination URL (also called a callback URL or webhook URL) is a web address your CRM generates that can receive data.

What's an API key?

An API key is a password-like string your CRM generates so we can authenticate when sending data to your endpoint. Some CRMs do not require a separate API key because authentication is built into the webhook URL. In this case, choose None as the authentication method. Only choose this option if your destination URL is already protected or your endpoint does not require authentication.

What triggers this webhook?

This webhook triggers when you submit an enrollment through our platform. Manually added enrollments don't trigger the webhook. We're aiming to add more triggers soon.

Does this work with my CRM?

The webhook works with any system that can receive an HTTP POST request to a URL. This includes GoHighLevel, Salesforce, Zoho, MedicarePro, Onyx, AgencyBloc, GoGuruX, EnrollHere, HubSpot, and most modern CRMs. You can also use Zapier or Make to connect to CRMs that don't have native inbound webhooks.

Does the webhook distinguish between new enrollments and re-submits?

No. Every enrollment submission fires the same event with the same payload structure regardless of whether it's a new enrollment, rewrite, or replacement.

What should I use to deduplicate or match contacts?

We recommend matching on first name + last name + MBI, or first name + last name + date of birth. The confirmation_number field is guaranteed unique per enrollment. The contact id is a stable UUID for each contact in our system.

Is my client data safe?

HealthSherpa does not sell, market to, or otherwise use your client data. The webhook sends data only to the destination URL you provide. See our privacy policy for details.

Where do I get my API Key on GoHighLevel?

For most users, you'll find your API key on the Settings > Business Profile page – see here for a video walkthrough. Some versions of GoHighLevel (such as GoGuru), only have it available under the "Private Integrations" page (also known as the "API keys" page) – to get it there, 1) click new integration 2) give it a name 3) for Scopes, select Edit Contacts and View Contacts, 4) you'll see a popup with your API key, like this.

Can my downline agents see the webhooks I set up for that?

No, if your downline agents look at their Integrations page, they won't see webhooks you've set up for them.

Can my independent agents set up their own webhooks?

Yes, whether or not you've set up webhooks as an agency, your independent agents can always add webhooks to their account as they wish.

How does this work with agency accounts?

In an agency context, only Primary Admins will be able to view and edit agency-level webhooks. Independent downline agents can add and manage their own agent-level webhooks (if an independent agent and their agency both have webhooks, both fire). Captive downline agents do not see the webhook card. Please note that the scope of webhooks is intra-agency, it doesn't include sub-agencies.

Can I edit a webhook?
Not yet. To change a webhook, delete the webhook and add a new one.

Is there a limit to webhooks per account?
Yes – each account can have up to 20 webhooks

Are we notified of failed deliveries, and can we retry webhooks

Currently, we do not have notifications for failed deliveries or the ability for users to manually retry a webhook send


Got feedback?

Please send any feedback, requests, or questions to medicare-integrations@healthsherpa.com

Did this answer your question?