This workflow runs on a daily scheduled cadence. It checks every company associated with an open deal against Lusha’s signal layer, writes new signals directly to the HubSpot deal record, and alerts the rep when a high-priority signal fires at an active deal account.
1
Trigger — Scheduled Workflow runs daily at 5am
Set the enrollment trigger to “Deal property — Deal stage — is not equal to ‘Closed Won’ or ‘Closed Lost.’” Enable re-enrollment so every open deal is checked every time the Workflow runs. For each deal, the Workflow retrieves the associated Company to use as the Lusha signal lookup identifier.
2
Action — Fire webhook to Lusha signals endpoint
Add a “Send a webhook” action. GET request to https://api.lusha.com/v2/companies/signals with the company domain as the query parameter. Lusha returns all active buying signals at the account — funding events, executive moves, hiring surges, and intent signals — each scored and dated.
3
Action — Filter for new signals only
Add an If/Then branch comparing signal dates against lusha_last_signal_check on the deal record. Only signals that appeared since the last check are processed — so the rep sees what’s new, not a repeat of signals already logged.
4
Action — Write signals to the deal record
Use “Set property value” actions to write the latest signal summary to lusha_latest_signal, the signal score to lusha_signal_score, and append the full signal to lusha_signal_log on the Deal record. Update lusha_last_signal_check to today.
5
Action — Create task and fire alert for high-priority signals
Add an If/Then branch on lusha_signal_score. If High — funding event, executive hire, or intent above 65 — create a high-priority task for the deal owner and optionally fire a Slack notification via webhook with the signal details and a link to the HubSpot deal record.
6
Output — Rep sees live signals on every open deal
The rep opens a deal record and sees exactly what has happened at the account since the last call — without checking a separate tool, without manually researching the account, and without waiting for the manager to ask in a pipeline review.
Signal endpoint
GET https://api.lusha.com/v2/companies/signals
?domain={{company.domain}}
Headers:
api_key: YOUR_LUSHA_API_KEY
Returns signal array. Each signal has:
type (funding / executive_move / hiring_surge / intent)
score (0–100)
date (ISO timestamp)
description (plain text summary)
Filter: keep signals where date > lusha_last_signal_check
Alert threshold: score >= 65
Score classification:
65–74 → Medium signal — log to deal, no immediate alert
75–84 → High signal — log + create task
85+ → High signal — log + task + Slack notification
Example deal record after signal check
Live signals on open deal
| Property | Value |
|---|
| Lusha — Latest signal | Series B closed — $22M — 8 days ago |
| Lusha — Signal score | High |
| Lusha — Signal log | Series B $22M (8 days) · New CRO (14 days) · 8 SDR roles (11 days) |
| Lusha — Last signal check | [date] ✓ |
| Alert fired | ✓ Task created · Slack notification sent |
Example Slack alert on high signal
⚡ New buying signal — open deal
Account: [Company A]
Deal: [Deal name] — Deal stage 3 — $42K
Signal: Series B closed — $22M — 8 days ago
Additional signals: New CRO (14 days) · 8 SDR roles posted (11 days)
Signal score: High
Re-engage this week — the timing window is open.
View deal in HubSpot →
Custom properties to add to the Deal object
| Property label | Type | Internal name |
|---|
| Lusha — Latest signal | Single-line text | lusha_latest_signal |
| Lusha — Signal score | Dropdown (High / Medium / Low / None) | lusha_signal_score |
| Lusha — Signal log | Multi-line text | lusha_signal_log |
| Lusha — Last signal check | Date picker | lusha_last_signal_check |
| Lusha — Alert fired | Single checkbox | lusha_alert_fired |
Build steps
1
Create the signal properties on the Deal object
In HubSpot → Settings → Properties, add all deal signal properties listed in the table above. Create lusha_signal_score as a Dropdown select with four options: High, Medium, Low, None.
2
Add signal fields to the deal view
In HubSpot → CRM → Deals → Actions → Edit properties. Add lusha_latest_signal and lusha_signal_score to the deal card so reps see signal status in pipeline board view without opening the full record.
3
Build the Deal-based Workflow
In HubSpot → Automation → Workflows → Create Workflow → Deal-based. Set enrollment trigger to “Deal stage is not Closed Won or Closed Lost.” Enable re-enrollment. Set schedule to run daily at 5am.
4
Add the signals webhook
Add action → Send a webhook. GET request to https://api.lusha.com/v2/companies/signals?domain={{company.domain}}. Add header api_key: YOUR_LUSHA_API_KEY. The response returns the full signal array for the account.
5
Add signal filtering and property updates
Add If/Then branch: signal date is after lusha_last_signal_check. On the Yes branch, write the latest signal summary, score, and log to the deal properties. Update lusha_last_signal_check to today on all paths.
6
Add alert actions for high-priority signals
Add If/Then branch: lusha_signal_score is equal to High. Yes branch: create a high-priority task for the deal owner. Add a second webhook to your Slack incoming webhook URL with the signal summary and deal link.
7
Test with a live deal
Open a test deal associated with a company you know has recent signal activity. Manually enroll it in the Workflow from the deal record. Confirm the signal fields populate correctly and the task is created with the right priority. Check the Workflow history tab if signal fields 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.