Outbound in SalesCrew, warm leads in HubSpot
SalesCrew reaches HubSpot via webhooks. Zapier, Make or n8n catches each signed event and writes it through HubSpot's API.
- Via webhooks
- Signed, retried deliveries
- Each client keeps their HubSpot

The short answer
- SalesCrew connects to HubSpot via webhooks, with Zapier, Make or n8n in the middle. An outbound webhook from your SalesCrew instance fires on the events you pick, and the automation tool creates or updates the matching HubSpot record.
- The pattern suits an agency running outbound for clients who live in HubSpot. You work the list, the cadences and the replies in SalesCrew, and hand over the leads worth a salesperson's time.
- Every delivery is signed with X-SalesCrew-Signature, logged, and retried with backoff when HubSpot or the automation tool is down. You can replay any failed one.
- The return trip uses HubSpot's own webhooks and REST API, documented on developers.hubspot.com as of September 2026, posting into a SalesCrew inbound webhook.
Mechanism
Both directions run through an automation tool you control.
| What | Mechanism | Direction | Objects | Status |
|---|---|---|---|---|
| New lead to HubSpot | lead.created webhook, then Zapier, Make or n8n calls HubSpot's API | Outbound | Contacts | Available |
| Deal progress to HubSpot | deal.stage_changed webhook through the same automation | Outbound | Deals | Available |
| Booked meeting to HubSpot | meeting.booked webhook, logged against the contact | Outbound | Meetings, contacts | Available |
| HubSpot changes to SalesCrew | HubSpot webhook, then a post to a SalesCrew inbound webhook | Inbound | Leads | Available |
| Updates by an agent | MCP tools such as contact_update and deal_update_stage | Inbound | Contacts, deals | Available |
| Delivery log | webhook_deliveries and webhook_retry | Outbound | Deliveries | Available |
SalesCrew mechanisms read from the SalesCrew integration table, September 2026. HubSpot's webhooks and REST API checked on developers.hubspot.com, September 2026.
Setup
Build it once per client HubSpot portal.
- 1
Create the catcher
In Zapier, Make or n8n, start a flow with a webhook trigger and copy its URL. Zapier calls this a Catch Hook.
- 2
Register it in SalesCrew
Settings → Webhooks → Add. Paste the URL and tick the events the client cares about, usually lead.created and meeting.booked.
- 3
Send a test ping
The catcher receives JSON with event, data and sent_at. Map those fields to HubSpot's contact and deal properties in the next step of the flow.
- 4
Match on email
Search HubSpot for the email before you create a contact, so a lead the client already knows gets updated rather than copied.
- 5
Close the loop
Add a HubSpot webhook for the changes you want back, such as a deal won, and post it to a SalesCrew inbound webhook.
Send the leads, keep the work
Questions
- Can I run outbound in SalesCrew and keep the client's HubSpot?
- Yes. SalesCrew runs the data bank, cadences and inbox, and posts a signed webhook when a lead is created, a deal changes stage or a meeting is booked. Zapier, Make or n8n catches it and writes the record into the client's HubSpot.
- How do HubSpot changes get back into SalesCrew?
- HubSpot publishes webhooks and a REST API on its developer site. Point a HubSpot event at your automation tool and have it post to a SalesCrew inbound webhook, which reads name, email, company, phone and message automatically.
- Will contacts end up duplicated in both systems?
- Match on email in the automation step, the same key SalesCrew uses when it fills existing contacts on import. Decide which system owns each field, and let the other one only read it.
- What if we want to leave HubSpot completely?
- Export a CSV from HubSpot and import it into the SalesCrew data bank. Contacts, companies, deals, notes and tasks come across, migration help is included on every tier, and a standard import completes within 7 business days.
Run the outbound, hand over the warm leads
Signed webhooks into the client's HubSpot, with every delivery logged and replayable.