Connect HubSpot and Spruce to power AI-driven automation
- No-code AI automation
- Full audit trails and controls
- SOC 2 and GDPR compliant
- Easy visual workflow builder
- 9,000+ apps, 450+ AI tools
- Free tier available
Top companies trust Zapier to automate work that solves their unique business problems—no coding required.
How Zapier works
Zapier makes it easy to integrate HubSpot with Spruce - no code necessary. See how you can get setup in minutes.
Choose a trigger
A trigger is the event that starts your Zap—like a "New Company" from HubSpot.
Add your action
An action happens after the trigger—such as "Create Job" in Spruce.
You’re connected!
Zapier seamlessly connects HubSpot and Spruce, automating your workflow.
Supported triggers and actions
Zapier helps you create workflows that connect your apps to automate repetitive tasks. A trigger is an event that starts a workflow, and an action is an event a Zap performs.
- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Object TypeRequired
- Properties to Retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Blog UrlRequired
- Article StateRequired
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan
New DealTriggers when a new Deal is created.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.- Property NameRequired
- Properties to retrieveRequired
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Object TypeRequired
- Property NameRequired
- Additional Properties to Retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Property NameRequired
- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.- Note
- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Note
- List NameRequired
- ContactRequired
- Halt my task if contact is already a member of the list
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Create CompanyCreates a Company in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Create AssociationsCreates associations between objects.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- Halt task if any associations error occurred
- Engagement TypeRequired
- Assigned To
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- Social Media ChannelRequired
- Message ContentRequired
- When
- Save as draft
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- Note
- NameRequired
- Company
- Contact
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Delete CRM ObjectDeletes a CRM object from HubSpot
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Company IDRequired
- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Type of Custom ObjectRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Product IDRequired
- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Create Line_itemCreates a Line_item in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- Contact Email AddressRequired
- Event IDRequired
- Contact Value
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Get CRM ObjectGets a CRM object from HubSpot by ID
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- List NameRequired
- ContactRequired
- Halt my task if contact wasn't a member of the listRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Create TicketCreates a Ticket in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Update ContactUpdate a Contact in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Update Line_itemUpdate a Line_item in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Update ProductUpdate a Product in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Type of Custom ObjectRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- FolderRequired
- FilenameRequired
- Access levelRequired
- FileRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Stop on errorRequired
- HTTP MethodRequired
- URLRequired
- Query string parameters
- Additional request headers
- Body
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- NameRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.SearchFind existing data in your app- Note
- NameRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app
Find AssociationsFind associations between objects.
ActionThis is an event a Zap performs.SearchFind existing data in your app- Object TypeRequired
- Pipeline IdRequired
- Stage IdRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.SearchFind existing data in your app- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.SearchFind existing data in your app- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found- Type of Custom ObjectRequired
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found
Estimate AcceptedTriggers when an estimate is accepted.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Estimate OpenedTriggers when an estimate is opened.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Estimate SentTriggers when a new estimate is sent to a customer.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Handover Pack SentTriggers when a new handover pack is sent to a customer.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Job Owner ChangedTriggers when Job owner is changed.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Proposal AcceptedTriggers when a proposal is accepted.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Proposal OpenedTriggers when a proposal is opened.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Quote Downloaded by InstallerTriggers when a quote is downloaded by the installer.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Quote SentTriggers when a new quote is sent to a customer.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Report OpenedTriggers when a report is opened.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.- Property altitude in meters
- Built form of the propertyRequired
- Total floor area in square metersRequired
- Current heating fuel typeRequired
- Loft insulation thicknessRequired
- Number of bathrooms
- Number of bedroomsRequired
- Number of storeys
- UK postcodeRequired
- Property typeRequired
- Room height in metres
- Wall construction and insulation typeRequired
- Window glazing typeRequired
- Full property address (consisting of optional apartment number, street and post town) without postcodeRequired
- Customer's email addressRequired
- Customer's first nameRequired
- Customer's last nameRequired
- Customer's phone numberRequired
- EPC Certificate number for an English/Welsh EPC. If this is present, we will make a best-effort attempt to retrieve the EPC data and link it to the job.
- Optional custom name for the job
- Optional job reference, which must be unique within the company. If not provided, will be generated from the customer surname. Must be at least 3 characters long and not contain the # character. The API will return an error if the reference is invalid or already exists.
- Latitude and longitude coordinates of the address [lat, lng]Required
- Outdoor space availability. Only relevant for flats - indicates where the heat pump could be installed.
- The ID of an associated Payaca project. If included and the authed company has a Payaca integration set up, the job in Spruce will be linked to this Payaca project. This ID cannot be changed after the job is created.
- Source of the lead (e.g., 'API', 'Social media', 'Search engine', 'Word of mouth', 'Trade show')
- Tags to apply to this job. If a tag name does not exist for your company, it will be created automatically.
- Unique Delivery Point Reference Number
- Unique Property Reference Number. If this is included but the EPC certificate number key is omitted, we will attempt to retrieve the EPC from this. Passing the EPC certificate number is a more reliable method to retrieve an EPC.
- Year the property was built.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Property NameRequired
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Email Subscriptions TimelineTriggers when new email timeline subscription added for the portal.
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Contact ListRequired
- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.- Type of Custom ObjectRequired
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.- Note
- Additional properties to retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Object TypeRequired
- Properties to Retrieve
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Type of Custom ObjectRequired
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.- Note
- Contact EmailRequired
- Subscription TypesRequired
- Legal Basis Explanation
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- NameRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Create ContactCreates a Contact in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Create CRM ObjectCreates a CRM object in HubSpot
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- List NameRequired
- Object TypeRequired
- Processing TypeRequired
- Folder ID
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Type of Custom ObjectRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Create DealCreates a Deal in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- Workflow NameRequired
- Contact's EmailRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Contact IDRequired
- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Deal IDRequired
- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Line_item IDRequired
- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Ticket IDRequired
- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- Blog URLRequired
- Blog AuthorRequired
- Publish This Post?Required
- Blog Post URLRequired
- Blog Post TitleRequired
- Blog Post ContentRequired
- Meta DescriptionRequired
- Featured image URL
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Create ProductCreates a Product in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Remove AssociationsRemoves associations between objects.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- FormRequired
- Note
- HubSpot usertoken
- IP address
- Page name
- Page URI
- Page ID
- SFDC campaign ID
- GoToWebinar key/ID
- Submission timestamp
- Skip validation
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Update CompanyUpdate a Company in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Update DealUpdate a Deal in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Update CRM ObjectUpdates a CRM object in HubSpot
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Update TicketUpdate a Ticket in HubSpot.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- EmailRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Note
- Note
- Contact EmailRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Find CRM ObjectFinds CRM objects by searching with filters
ActionThis is an event a Zap performs.SearchFind existing data in your app- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.SearchFind existing data in your app- Type of Custom ObjectRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.SearchFind existing data in your app- Owner emailRequired
- Search among deactivated owners
ActionThis is an event a Zap performs.SearchFind existing data in your app- Owner IdRequired
- Search among deactivated owners
ActionThis is an event a Zap performs.SearchFind existing data in your app- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.SearchFind existing data in your app- Note
- NameRequired
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found- Note
- NameRequired
- Note
- Company
- Contact
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found- Note
- Additional properties to retrieve
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found
Estimate Callback RequestedTriggers when a callback for an estimate is requested.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Estimate RejectedTriggers when an estimate is rejected by the customer.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Handover Pack Downloaded by InstallerTriggers when a handover pack is downloaded by the installer.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Job CreatedTriggers when a new Job is created.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Job Status ChangedTriggers when Job status is changed.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Proposal Downloaded by InstallerTriggers when a proposal is downloaded by the installer.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Proposal SentTriggers when a new proposal is sent to a customer.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Quote OpenedTriggers when a quote is opened.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Report Downloaded by InstallerTriggers when a report is downloaded by the installer.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Report SentTriggers when a new report is sent to a customer.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.
Zapier is the automation platform of choice for 87% of Forbes Cloud 100 companies in 2023




93%
Customers who say using Zapier has made them better at their job
25m
Customers have created over 25 million Zaps on the platform
6 mins
The average user takes less than 6 minutes to set up a Zap
Connect HubSpot and Spruce to integrate crucial parts of your business
With Zapier, you can integrate everything from basic data entry to end-to-end processes. Here are some of the business-critical workflows that people automate with Zapier.




