This workflow triggers the moment a new Contact is created in HubSpot. It calls the Lusha API via a webhook action to enrich the contact and company, then writes verified data back to the HubSpot record before a rep opens it.
1
Trigger — New Contact created in HubSpot
The Workflow fires the moment a new Contact record is created — from a form submission, manual entry, CRM import, or inbound integration. Set the enrollment trigger to “Contact is created” with no additional filters to run on every new contact regardless of source.
2
Action — Fire webhook to Lusha contact search and enrich
Add a “Send a webhook” action. Set the method to POST, URL to https://api.lusha.com/v3/contacts/search-and-enrich, and pass the contact email in the request body. Lusha returns the verified contact profile — current title, seniority, department, verified email, and direct dial.
3
Action — Fire webhook to Lusha company search and enrich
A second webhook action calls https://api.lusha.com/v3/companies/search-and-enrich with the company name from the contact record. Lusha returns industry, employee count, revenue range, funding stage, and HQ location.
4
Action — Write enriched data back to HubSpot
Use “Set property value” actions to map Lusha response fields to your custom HubSpot contact and company properties. Set each action to only update if the property is currently empty — existing data is not overwritten.
5
Output — Enriched Contact record, ready for the rep
The Contact record now contains verified contact and company data. A custom property logs the Lusha enrichment date so you always know when data was last confirmed. The rep opens a complete record, not a blank one.
API reference
POST https://api.lusha.com/v3/contacts/search-and-enrich
Headers:
api_key: YOUR_LUSHA_API_KEY
Content-Type: application/json
Body: { "contacts": [ { "clientReferenceId": "1", "email": "{{contact.email}}" } ] }
Map the first item in "results" to HubSpot contact properties:
jobTitle → jobtitle (default property)
phones → lusha_direct_dial, lusha_mobile
emails → email (if empty)
company → company properties below
POST https://api.lusha.com/v3/companies/search-and-enrich
Body: { "companies": [ { "clientReferenceId": "1", "name": "{{contact.company}}" } ] }
Map the first item in "results" to HubSpot company properties:
industry, employee count, revenue range, funding stage, HQ location
Custom properties to create in HubSpot
In HubSpot, go to Settings → Properties → Create property. Add these to the Contact object:
| Property label | Type | Internal name |
|---|
| Lusha — Direct dial | Phone number | lusha_direct_dial |
| Lusha — Mobile | Phone number | lusha_mobile |
| Lusha — Seniority | Single-line text | lusha_seniority |
| Lusha — Department | Single-line text | lusha_department |
| Lusha — Enriched date | Date picker | lusha_enriched_date |
Add these to the Company object:
| Property label | Type | Internal name |
|---|
| Lusha — Funding stage | Single-line text | lusha_funding_stage |
| Lusha — Employee count | Number | lusha_employee_count |
| Lusha — Revenue range | Single-line text | lusha_revenue_range |
| Lusha — Industry verified | Single-line text | lusha_industry |
| Lusha — Enriched date | Date picker | lusha_enriched_date |
Contact record before and after
Contact record after Lusha enrichment
| Property | Before | After |
|---|
| Job title | — | VP of Sales ✓ |
| Seniority | — | VP |
| Direct dial | — | +1 512 555 •••• |
| Industry | — | Revenue Intelligence / SaaS |
| Number of employees | — | 280–320 |
| Funding stage | — | Series B |
| Lusha enriched date | — | [date] ✓ |
Build steps
- Get your Lusha API key. Log in to Lusha → Settings → API. Copy your key. Full documentation at docs.lusha.com/guides.
- Create custom properties. In HubSpot Settings → Properties, add the Contact and Company properties listed above.
- Build the Workflow. In HubSpot → Automation → Workflows → Create Workflow → Contact-based. Set enrollment trigger to “Contact is created.”
- Add the contact webhook action. Add action → Send a webhook. Method: POST. URL:
https://api.lusha.com/v3/contacts/search-and-enrich. Add header: api_key: YOUR_LUSHA_API_KEY. Request body: { "contacts": [ { "clientReferenceId": "1", "email": "{{contact.email}}" } ] }. - Add Set property actions for contact fields. For each Lusha response field, add a “Set property value” action and map the webhook response to the corresponding custom property.
- Add the company webhook action. Repeat for
/v3/companies/search-and-enrich with the company name. Map response fields to Company properties. - Set the enrichment date. Add a final “Set property value” action to write today’s date to
lusha_enriched_date. - Test with a live contact. Create a test contact with a known email. Confirm all Lusha properties populate. Check the Workflow history tab if properties are empty.
Example outputs in this workflow are illustrative — they reflect the structure, fields, and format of real Lusha API output, but were not pulled from a live session. Build this workflow with your own Lusha API key and HubSpot portal to see live results.