Skip to content

Webhook Integration: Auto-Pull Leads from Sheets

TL;DR: Manual lead imports kill conversion rates — every hour of delay costs you follow-ups. Webhook lead integration in real-time connects Google Sheets (and other platforms) directly to Onyx CRM, so new leads hit your pipeline within seconds, automatically assigned and ready to work.

Every minute a new lead sits uncontacted is a minute they’re talking to someone else.

For independent insurance agents, that’s not a hypothetical. Studies from InsideSales.com show that contacting a lead within the first five minutes makes you 100x more likely to actually reach them compared to waiting 30 minutes. And yet most agents are still manually downloading CSVs, copy-pasting rows into their CRM, and importing batches at the end of the day.

Webhook lead integration in real-time changes that entirely. Instead of a manual process that introduces hours of lag, webhooks push lead data from your source — a Google Sheet, a form builder, a phone system — directly into Onyx the moment a new record appears. No copying. No importing. No delay.

This guide walks through exactly how to set that up.


Why Manual Lead Imports Are Costing You Conversions

Manual lead import feels manageable when you’re getting five leads a day. It becomes a liability when volume picks up — and it creates a silent conversion killer that most agents never think to measure.

Here’s what manual importing actually looks like in practice: a lead fills out a form on a vendor website, their data gets appended to a Google Sheet, you download that sheet at the end of the morning, paste it into your CRM, and start calling around noon. That’s a three-to-four hour delay on a lead that has already likely spoken to two other agents by then.

According to research published by LIMRA, consumer expectations around follow-up speed have shifted dramatically — prospects increasingly expect a response within minutes, not hours. In high-intent verticals like Final Expense and Mortgage Protection, that window is even tighter.

The good news: this is a fixable problem. A properly configured webhook lead integration in real-time means the same lead hits Onyx within seconds of appearing in your Sheet — no human in the loop, no delay.

For more on why speed matters at every stage of follow-up, see Mortgage Protection Lead Follow-Up: Speed Wins Everything and Insurance Lead Response Time: 2026 Benchmarks.


How Webhook Lead Integration Real-Time Works in Onyx

Webhook lead integration in real-time works by generating a unique URL inside Onyx that accepts incoming POST requests. When an external platform — like a Zapier automation triggered by a new Google Sheets row — sends data to that URL, Onyx receives it instantly and creates (or updates) a contact record.

Because Onyx is built on GoHighLevel (GHL), which is one of the more webhook-capable CRM foundations on the market, you get a solid out-of-the-box webhook receiver with no custom coding required. Here’s how the native setup works:

Step 1: Generate Your Webhook URL in Onyx

Inside Onyx, navigate to Settings → Integrations → Webhooks. You’ll find the option to create an inbound webhook. Onyx generates a unique URL tied to your account — this is the endpoint you’ll point external platforms toward.

Copy that URL. Keep it secure — anyone with access to it can push data into your CRM.

Step 2: Map Your Lead Fields

Before you connect a source, decide what fields you want to capture. At minimum, you’ll want:

  • First name
  • Last name
  • Phone number
  • Email
  • Lead source tag
  • State (important for routing in insurance verticals)

Onyx accepts standard JSON payloads. You’ll map these fields either in Onyx’s field settings or inside whichever middleware (Zapier, Make, etc.) you’re using.

Step 3: Test with Sample Lead Data

Before going live, always test. Use a tool like Webhook.site to inspect the payload structure first, then send a test submission to your Onyx webhook URL and confirm the contact appears correctly in your pipeline.

Check that:

  • The contact was created (not duplicated)
  • All fields mapped correctly
  • The lead landed in the right pipeline stage
  • Any automation triggers fired as expected

Google Sheets Integration: The Most Common Use Case

For most independent agents, Google Sheets is the data layer sitting between their lead vendor and their CRM. Vendors export to Sheets, agents share Sheets with VAs, and Sheets accumulates rows that eventually need to get somewhere useful.

Here’s how to connect Sheets to Onyx using a webhook so that every new row auto-creates a contact in real-time.

The Zapier Bridge Approach

Zapier is the most reliable middleware for this connection. Onyx supports Zapier natively through its 50+ integrations, and the Zap structure is straightforward:

Trigger: New Row in Google Sheets (specific spreadsheet, specific tab)

Action: Webhook POST to your Onyx inbound webhook URL

Inside Zapier, you’ll configure the POST body to map each Sheets column to the corresponding Onyx field. Name the columns clearly in your Sheet — firstname, lastname, phone, email — and Zapier’s field mapper will pull them cleanly.

Once the Zap is live and tested, every time a new row appears in that Sheet — whether a VA adds it manually, a form appends it automatically, or a vendor drops a batch — the lead hits Onyx within seconds.

Auto-Trigger on New Row

Zapier polls Google Sheets on a schedule (every 1-15 minutes depending on your plan). For truly real-time sync, the faster option is to use Google Sheets’ built-in Apps Script to push data to your webhook the moment a row is added — no polling lag.

The Apps Script trigger fires onEdit or onChange, constructs a JSON payload from the new row’s values, and sends it directly to your Onyx webhook URL via UrlFetchApp.fetch(). This gives you sub-second sync between your Sheet and your CRM.

This is the setup that makes speed-to-lead automation actually work — Onyx’s AI can begin a follow-up sequence within seconds of the lead appearing, not within minutes of Zapier’s next poll cycle.

For a deeper look at how Onyx’s AI handles that first contact, see AI-Powered Lead Appointment Scheduling.


Real-Time Synchronization Benefits for Insurance Agents

Webhook lead integration in real-time isn’t just a technical nicety — it creates measurable workflow improvements that compound over time. Here’s what actually changes when leads flow into Onyx automatically:

Leads Hit Your Pipeline in Seconds

Onyx’s speed-to-lead AI is designed to contact new leads within seconds of them entering the system. But that clock doesn’t start until the lead exists in Onyx. Every minute of import lag is a minute that automated outreach hasn’t started.

With a live webhook connection, a lead who filled out a form at 2:14pm gets an SMS from Onyx at 2:14pm. That’s the competitive difference.

Automatic Assignment by Rules

Once a lead lands in Onyx via webhook, your existing assignment rules kick in immediately. Leads can be routed by state, by vertical, by lead source tag, or round-robin across your team — all without anyone touching a keyboard.

For agents running multiple lines (say, Medicare and Final Expense), Onyx’s 7 vertical Stacks let you route leads into the correct pipeline automatically based on tags included in the webhook payload.

No Manual Copy-Paste Errors

Manual data entry introduces mistakes — transposed phone numbers, wrong states, missing emails. Webhook-driven imports carry the data exactly as it was entered at the source. If there’s an error, it’s an error in the original lead data, not one introduced during import.

This matters more than it sounds. A single transposed digit in a phone number means your AI sends a message into the void and you never know why the lead didn’t respond.

CRM Updated Instantly, All Channels Ready

The moment a lead lands in Onyx, your unified inbox — SMS, email, Facebook Messenger, voicemail drops, and more — is ready to engage them. No warm-up period. No manual trigger. The automation fires as soon as the contact record exists.

For agents weighing how much automation to run vs. when a human VA should step in, AI-Only vs. AI + VA: Automation Models Explained is worth reading before you configure your assignment rules.


Advanced: Custom Webhooks from Other Platforms

Google Sheets is the most common use case, but webhooks in Onyx can accept data from essentially any platform that can make an HTTP POST request. That includes:

  • Lead form builders (Typeform, JotForm, Facebook Lead Ads via Zapier)
  • Phone systems (inbound call triggers via Twilio — which Onyx already integrates with)
  • Custom websites (any web form with a backend that can send a POST request)
  • Lead vendor portals that support webhook delivery natively

Webhook Authentication Best Practices

Your Onyx webhook URL is essentially an open door — if someone has the URL, they can push data in. A few practices to protect it:

1. Keep the URL private. Treat it like an API key. Don’t paste it in Slack channels or public documentation.

2. Add a secret header. Most webhook senders let you include a custom header (like X-API-Key: yoursecretvalue). You can validate this on the Onyx/GHL side or in your middleware.

3. Use HTTPS only. Onyx webhook URLs are HTTPS by default — make sure any middleware you use sends to HTTPS endpoints.

Error Handling and Logging

Webhooks fail silently if you’re not watching for it. Zapier logs failures in your task history, but native webhook pushes (like the Apps Script approach) will fail without any notification unless you build that in.

Best practice: log every webhook send in a separate Sheets tab (timestamp, status code, payload) so you can audit when a lead might have been missed. Zapier’s paid tiers include error alerting that will email or Slack you on failed tasks — worth enabling if you’re running high volume.

For staying on top of delivery and notification issues across the platform, see Real-Time Lead Notifications: Never Miss Leads.


Webhook Integration Inside Onyx’s Automation Library

Onyx ships with 441 pre-built automation workflows — and webhook triggers are one of the entry points that powers many of them. When you connect a webhook source, you’re not just dumping leads into a contact list. You’re triggering a full nurture sequence calibrated to the vertical that lead belongs to.

For a Final Expense lead coming in via webhook, Onyx can:

1. Create the contact and tag by vertical

2. Fire an immediate SMS via the speed-to-lead AI

3. Add them to the Final Expense drip campaign

4. Assign to the correct agent

5. Schedule a follow-up task if no response in 2 hours

All of that starts automatically, in seconds, without any manual intervention — as long as the lead enters the system via a live webhook.

Onyx plans that include this level of automation start at Prime ($149/mo), which adds AI appointment booking and custom workflows on top of the Core platform’s automation library. See full pricing at onyx-crm.com/pricing.


Frequently Asked Questions

Does Onyx support inbound webhooks natively, or do I need third-party middleware?

Onyx is built on GoHighLevel (GHL), which includes native inbound webhook support. You can generate a webhook URL directly inside Onyx’s settings and receive POST requests from external platforms without needing middleware. That said, middleware like Zapier is useful for connecting sources that don’t send webhooks natively — Google Sheets being the primary example, since Sheets doesn’t push data on its own. For Sheets specifically, you’ll either use a Zapier trigger (which polls for new rows) or a Google Apps Script that fires immediately on row addition. Both work well; Apps Script gives you faster sync. Other platforms — form builders, lead vendors, custom websites — can post directly to your Onyx webhook URL without any middleware at all, as long as they support HTTP POST requests.

How fast does a lead actually appear in Onyx after it’s added to Google Sheets?

Speed depends on your connection method. With Zapier’s free or Starter tier, polling intervals are typically every 15 minutes — meaning a lead could wait up to 15 minutes before hitting Onyx. On Zapier’s paid tiers, polling speeds up to every 1-2 minutes. For truly real-time sync — sub-second — you’ll want a Google Apps Script trigger that fires the moment a row is added. This sends the data directly to your Onyx webhook URL without waiting for a poll cycle. That’s the setup that makes Onyx’s speed-to-lead AI genuinely work at full speed, since the automated outreach clock starts the moment the contact record is created.

Can I route webhook leads into different Onyx pipelines based on lead type?

Yes. When a lead arrives via webhook, Onyx can use tags or custom field values included in the payload to determine routing. If your webhook payload includes a vertical field — say, medicare or final_expense — you can build workflow conditions inside Onyx that route that contact into the correct vertical-specific pipeline. Onyx has 7 dedicated Stacks (Mortgage Protection, Final Expense, Life Insurance, Medicare, Health/ACA, IULs, Annuities), each with its own pipeline stages and campaigns. Routing is configured in your workflow automation settings, not in the webhook itself — so the payload just needs to carry the right tag or field value, and Onyx handles the rest.

What happens if a webhook send fails — does the lead get lost?

If a webhook POST fails (network error, server timeout, invalid payload), the behavior depends on your sending platform. Zapier automatically retries failed tasks and logs them in your task history — you’ll see failures flagged and can replay them manually. For custom webhook senders like Google Apps Script, you’ll need to build in your own error handling: catch HTTP errors, log failed sends to a separate sheet, and optionally trigger a retry. On the Onyx side, if a webhook is never received, no contact is created — so monitoring your sending platform’s logs is the only way to catch silent failures. Setting up error alerts in Zapier (or logging in Apps Script) is the safest way to ensure no lead slips through.

Is webhook integration available on all Onyx pricing tiers?

Webhook functionality is part of the GoHighLevel foundation that all Onyx tiers are built on, so Core ($99/mo) accounts have access to inbound webhooks. However, to get the most value from real-time lead webhooks — specifically AI appointment booking that fires the moment a lead lands, plus custom workflow triggers — you’ll want Prime ($149/mo) or above. Prime adds AI appointment booking, database reactivation, and custom workflows, which are the features that turn a webhook lead into a booked appointment without human intervention. Elite AI ($499/mo + $1,499 setup) adds inbound voice AI for phone-based follow-up on those same webhook-triggered leads. Full details at onyx-crm.com/pricing.


Stop Letting Import Lag Kill Your Pipeline

Manual lead import is one of those silent problems — it doesn’t feel urgent until you realize the lead you called at noon had already signed with someone else at 9am.

Webhook lead integration in real-time fixes that. New leads flow from your source directly into Onyx in seconds, your automation sequences fire immediately, and your speed-to-lead AI gets to work before a competitor even knows the lead exists.

If you’re running Google Sheets as your lead collection layer, the Zapier bridge or Apps Script approach gets you connected in an afternoon. If your lead vendor supports native webhook delivery, you can skip middleware entirely.

Either way, the result is the same: leads in Onyx fast enough for the automation to actually matter.

Start your 14-day free trial at onyx-crm.com and connect your first webhook source today.

Ready to automate your follow-up?

See how Onyx can help you book more appointments and grow your insurance business.

Book a Free Demo