Quick Overview
This workflow receives Webflow form submissions via webhook, normalizes and validates lead data, upserts accepted contacts into HubSpot by email, and emails only high-quality leads to a chosen team inbox via Gmail.
How it works
- Receives a Webflow form submission through a POST webhook.
- Normalizes common field names (name, email, phone, company, message) and rejects, quarantines, or accepts the lead based on email validity, honeypot fields, and disposable-email domains.
- Returns an HTTP error/accepted response for rejected or quarantined submissions so low-quality leads never reach the CRM.
- Creates or updates the contact in HubSpot using the email address as the unique identifier.
- Scores the synced lead and selects an SDR, CS, or Sales notification inbox based on configured rules.
- Sends an email notification via Gmail only when the lead score meets the high-quality threshold, then returns a JSON webhook response confirming the HubSpot sync (or a 502 JSON response if HubSpot sync fails after retries).
Setup
- Add a HubSpot App Token credential and ensure it has permission to create/update contacts.
- Add a Gmail credential for sending notification emails.
- Copy the production webhook URL into your Webflow form integration or custom form script and ensure it submits via POST.
- Review the normalization and validation expectations (email, name, phone, company, message, and any honeypot field like website/url) to match your Webflow field names.
- Update the lead scoring constants (team selection, inbox addresses, and score threshold logic) in the scoring code to match your routing requirements.