HubSpot Webhook Action

Call any API from a HubSpot workflow - without Operations Hub Pro

API Webhook Connector turns any REST endpoint into a native HubSpot workflow step. Send POST, GET, PUT, PATCH, or DELETE requests with custom headers and JSON payloads, then map the response back to CRM properties. No code. No Operations Hub Professional required.

Free plan available · No credit card · Works with custom objects

Why this exists

HubSpot already has webhooks. Why pay for another one?

Because HubSpot's native webhook step is locked behind Operations Hub Professional, the Custom Code step requires both that license and an engineer, and Zapier costs more the more you use it. Most teams that just want to call one API end up paying for tooling that scales for ten.

Native webhook is gated

HubSpot's built-in Send a webhook action requires Operations Hub Professional - $800+ per month even if you only need one webhook step.

Custom Code is for engineers

The Custom Code action also requires Operations Hub Pro and a JavaScript engineer to write, test, and maintain every workflow step.

Zapier is the long way around

Routing data through Zapier adds latency, an extra subscription, another point of failure, and a third location to debug when something breaks.

Use case 01 · Internal systems

Call your own API to verify, score, or enrich a record

Most teams have an internal service that knows things HubSpot doesn't - product usage, account tier, fraud signals, lead routing rules, customer health. Pipe the enrolled record into the service, save the response, and branch on it inside the same workflow.

The example to the right runs on every demo request: it POSTs the contact email and domain to /leads/verify, saves the returned lead_score and account_id to CRM properties, and routes the contact based on the score.

  • Lead scoring and qualification
    Score new contacts against your model and route to AE, SDR, or nurture in real time.
  • Customer 360 lookups
    Pull product usage, MRR, or support history into HubSpot when a deal opens or a ticket is created.
  • Provisioning and offboarding
    Trigger account creation when a deal closes, or a deactivation sweep when a customer churns.
Example: Verify and score new demo requests
Trigger enrollment for contacts
When this happens
Group 1
Form submission: Demo Request any number of times anytime
+
1. API Webhook Connector

POST to /leads/verify, save lead_score and account_id

Click to see configuration
+
2. Branch

Check branches in order: Score >= 80, Score 40-79, and None met.

3 branches - click to see paths
+
End

Click each action to see its configuration.

Example: Fire a Zapier Catch Hook from HubSpot
Trigger enrollment for contacts
When this happens
Group 1
Lifecycle stage = Customer any number of times anytime
+
1. API Webhook Connector

POST to Zapier Catch Hook URL with new customer payload

Click to see configuration
+
End

One step. No Zapier HubSpot polling trigger required.

Use case 02 · Zapier and Make

Trigger Zapier or Make webhooks straight from HubSpot

Zapier's native HubSpot trigger polls every 1-15 minutes depending on plan. The API Webhook Connector pushes events to Zapier's Catch Hook trigger in sub-second time, with a payload you control completely. Make.com, Pipedream, and n8n work the same way.

Treat HubSpot as the source of truth and let Zapier or Make handle only the downstream side - the right tool for each job, without paying twice for triggers and actions.

  • Sub-second event delivery
    Skip the polling delay. The workflow fires the moment a property changes or a deal moves stage.
  • Custom payload shape
    Send only the fields each Zap needs. No oversized payloads, no Filter steps in Zapier eating tasks.
  • Lower Zapier task spend
    A Catch Hook trigger does not consume a task on most plans - only the downstream actions do.
Use case 03 · HubSpot to HubSpot

Call HubSpot APIs the workflow editor doesn't expose

The workflow builder can update the enrolled record. It cannot re-trigger form-based enrollments, modify related records like the parent company or line items, touch custom object associations, or reach most fields on User records.

Calling HubSpot's API from inside the workflow fixes that. Pass a Private App access token in the Authorization header, then POST or PATCH the resource you need. The example to the right submits the contact to a HubSpot form via the official Forms API so every workflow that enrolls on that form fires - the cleanest fix for contacts that arrive via import, chatbot, or another HubSpot portal and bypass the form path entirely.

  • Re-enroll in form-triggered workflows
    POST to the Forms API so workflows that enroll on a form submission also fire for contacts that arrived via import, chatbot, or another HubSpot portal.
  • Update parent company from a contact
    Push enriched industry, employee count, or HQ city back to the associated company without a parallel company workflow.
  • Modify line items on closed-won deals
    Apply discounts, set tax flags, or recalculate quantities across every line item attached to the deal.
  • Manage tickets from contact context
    Reassign the most recent open ticket when the primary contact changes - something the native ticket workflow cannot reach.
  • Touch custom objects and associations
    Create or update custom object records, set association labels, and write to fields the workflow editor doesn't list.
Example: Submit a HubSpot form via API to re-enroll a contact
Trigger enrollment for contacts
When this happens
Group 1
Lead source = Imported or external API any number of times anytime
+
1. API Webhook Connector

POST to HubSpot Forms API to simulate a form submission

Click to see configuration
+
End

Authenticated Forms API call with a Private App token (forms scope).

Example: Slack alert on six-figure deals
Trigger enrollment for deals
When this happens
Group 1
Deal stage = Closed Won and Amount >= 100,000 any number of times anytime
+
1. API Webhook Connector

POST to Slack incoming webhook with formatted message

Click to see configuration
+
End

Microsoft Teams, Discord, and Telegram work the same way.

Use case 04 · Notifications

Real-time alerts to Slack, Teams, Telegram, or anywhere

HubSpot's native Slack action only posts to channels in the official integration. The API Webhook Connector hits any incoming webhook URL - Slack, Microsoft Teams, Discord, Telegram, Mattermost, or your own notification service - with the message format you choose.

Build rich Slack Block Kit messages, ping a specific user via Teams connector, or fire a Telegram bot message with deal details. The workflow trigger decides when, the JSON body decides what.

  • Big-deal alerts
    Notify a sales channel the moment a deal crosses a threshold.
  • SLA breach pings
    Page on-call when a ticket goes red on first response or resolution time.
  • Churn risk early warning
    Alert customer success the second a health-score property drops below a target.
More patterns

Anything reachable over HTTP fits a HubSpot workflow now

Six more patterns teams ship in their first month with the API Webhook Connector.

AI and LLM APIs

Call OpenAI, Anthropic Claude, or your own model gateway directly from a workflow. Classify leads, generate emails, or summarize meeting notes.

Email and phone validation

Send form submissions to NeverBounce, ZeroBounce, or Twilio Lookup. Branch on the validity result and block junk before it pollutes your CRM.

Sync to data warehouses

POST CRM events to Snowflake, BigQuery, Postgres, or Segment in real time. Skip the daily export job and keep analytics fresh.

Cross-CRM sync

Push contact, deal, or ticket changes to Salesforce, Pipedrive, Close, or any internal CRM API the moment a HubSpot record changes.

n8n, Make, and Pipedream

Trigger any of the major automation platforms with a single POST. Use them as routing layers without paying for both Zapier and HubSpot Ops Hub Pro.

Notifications and chat

Hit Slack incoming webhooks, Microsoft Teams connectors, Discord, or Telegram with a custom message when high-value deals or tickets fire.

Capabilities

Everything you'd build for production, in a workflow step

The action is configured entirely through the standard HubSpot workflow editor. There's no script editor, no separate dashboard, no deploy step. Each call is logged inside HubSpot's workflow execution history alongside every other workflow step.

Five HTTP methods

POST, GET, PUT, PATCH, DELETE - everything you need for REST APIs, RPC endpoints, and webhook receivers.

Custom headers

Add any number of headers - Authorization bearer tokens, API keys, X-Signature, Content-Type, custom service routing.

JSON body with HubSpot tokens

Build the request body with HubSpot personalization tokens. Pull values from the enrolled record and any associated object.

Response mapping

Map any path in the response JSON to a HubSpot property. response.score, response.user.id, response.data[0].email all work.

Workflow branching on status

Pipe HTTP status and result variables into HubSpot's branch action. Route success and error paths differently in the same workflow.

Audit log of every call

Every request and response is captured in workflow execution history for debugging, compliance, and incident response.

Compare alternatives

How API Webhook Connector compares to native HubSpot, Custom Code, and Zapier

Capability0CodeToolsNative WebhookCustom CodeZapier
Required HubSpot tierAny tier with workflowsOperations Hub Pro+Operations Hub Pro+Any (Zapier paid)
Coding required
Custom headersPro plan
Map response to propertiesMulti-Zap
Native to workflow editor
Extra middleware hop
Free plan availableLimited

Operations Hub Pro starts at $800/month and is required for both Native Webhook and Custom Code actions. Zapier's Webhooks by Zapier feature requires a paid plan; HubSpot's native Zapier triggers poll on a 5-15 minute cadence depending on plan tier.

FAQ

Common questions about HubSpot webhooks

Quick answers to what teams ask before installing. For anything deeper, the help center covers configuration, authentication, and edge cases.

Does the API Webhook Connector require Operations Hub Pro?+
No. The API Webhook Connector works on every HubSpot tier that includes workflows - Marketing Hub Professional, Sales Hub Professional, Service Hub Professional, and any Enterprise tier. You do not need Operations Hub Professional or Operations Hub Enterprise.
Which HTTP methods are supported?+
POST, GET, PUT, PATCH, and DELETE. Each request accepts custom headers and a custom JSON body. HubSpot personalization tokens (such as {{contact.email}}) can be embedded anywhere in the URL, headers, or body.
Can I authenticate to APIs with bearer tokens or API keys?+
Yes. Pass any number of headers - Authorization: Bearer ..., X-Api-Key: ..., or any custom header your API expects. Secrets stay inside HubSpot and are not exposed in workflow logs.
Can the response update CRM properties?+
Yes. Map any path in the response JSON to a HubSpot property using the Result variable fields. Examples that work: response.lead_score, response.user.account_id, response.data[0].email. Up to several response paths can be saved per call.
Can I call HubSpot APIs from a HubSpot workflow?+
Yes - and this unlocks updates the native workflow editor cannot perform: modifying associated records, line items, custom object relationships, or ticket pipelines from contact context. Authenticate with a HubSpot Private App access token sent as Authorization: Bearer pat-... in the header.
How do I trigger Zapier from a HubSpot workflow with this?+
Create a Catch Hook trigger in Zapier, copy the unique webhook URL, and POST to it from the API Webhook Connector. This is faster than Zapier's HubSpot polling triggers (sub-second) and removes the need for a paid Zapier HubSpot connector seat.
What happens if the API call fails?+
The action records the response status and body in the workflow history. Downstream branches can route on success or failure status codes, or on the content of the response variable. You can chain a Random Delay or use HubSpot's native Resend feature for retries.
Does it work with custom objects?+
Yes. The action runs in any object workflow - contacts, companies, deals, tickets, custom objects, even commerce records. All HubSpot personalization tokens for the enrolled object and its associations are available in the request URL, headers, and body.
Are there rate limits?+
HubSpot's standard workflow execution limits apply to the action itself. The API you call has its own rate limits - for high-throughput pipelines, pair the action with the Random Delay action from 0CodeTools to spread requests evenly.
Is there a free plan?+
Yes. The free 0CodeTools plan includes the API Webhook Connector with a monthly call quota generous enough for most teams to evaluate. Paid plans extend the quota for production workloads.
Process

Get the first webhook live in three steps

01

Install 0CodeTools

Connect your HubSpot portal at toolbox.resonatehq.com. The API Webhook Connector appears in the workflow action picker the moment the install completes.

02

Configure your call

Pick the HTTP method, paste the URL, add headers, and write the JSON body using HubSpot tokens. Save up to several response paths to CRM properties.

03

Branch on the response

Use HubSpot's native if/then branch on the result variables to route records, set scores, or trigger downstream actions based on what your API returned.

Install API Webhook Connector

Call any API from a HubSpot workflow today

Start free with no credit card required. Or talk to us about enterprise webhook automation across multiple HubSpot portals.

  • Free plan available
  • No Operations Hub Professional required
  • Works with custom objects and Commerce Hub