For Agents
Manage HubSpot app webhook target URL and the change-event subscriptions that push CRM updates to that URL.
Get started with HubSpot Webhooks in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"create a HubSpot webhook subscription"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with HubSpot Webhooks API.
Read the current target URL and throttling settings for a HubSpot app's webhooks
Update the webhook target URL and concurrency settings for an app
Delete the app's webhook configuration to stop all delivery
List the active event subscriptions registered on a HubSpot app
GET STARTED
Use for: I need to subscribe to HubSpot contact creation events, Update the webhook target URL for our HubSpot app, List all active webhook subscriptions on our app, Pause a HubSpot webhook subscription temporarily
Not supported: Does not deliver outbound HTTP payloads, store webhook history, or replay missed events — use for managing HubSpot app subscription configuration only.
The HubSpot Webhooks API configures the change-event subscriptions that a HubSpot app pushes to a target URL. It manages the app-level webhook settings such as target URL and throttling, and the per-event subscriptions for specific objects and event types. Subscriptions can be created, paused, batch updated, and deleted so apps stay aligned with the HubSpot data they need to react to in near real time.
Create a new event subscription tied to a specific object type and event
Patch a subscription to enable, disable, or change its filter
Batch update many subscriptions in a single call when toggling a deployment
Patterns agents use HubSpot Webhooks API for, with concrete tasks.
★ Real-time CRM sync into a data warehouse
Subscribe a HubSpot app to contact, company, and deal change events so updates land in a downstream warehouse within seconds rather than waiting for a nightly export. The throttling settings on the app webhook configuration prevent the warehouse ingestion endpoint from being overwhelmed during bulk imports.
Set the target with PUT /webhooks/v3/{appId}/settings, then POST /webhooks/v3/{appId}/subscriptions with eventType='contact.propertyChange' to register the subscription.
Pause webhooks during a deployment
Disable a group of subscriptions in a single batch call before a downstream consumer is restarted, then re-enable them once the new build is healthy. The batch update endpoint avoids per-subscription round trips so the pause window is short and the risk of inconsistent state is small.
Call POST /webhooks/v3/{appId}/subscriptions/batch/update with {id, active:false} for the subscriptions to pause, run the deployment, then call the same endpoint with active:true.
Decommissioning an app safely
Cleanly shut down a retired HubSpot app's event delivery by deleting its subscriptions and webhook configuration so no more events fire toward an endpoint that no longer exists. Auditing the active subscriptions first confirms what is being removed before the destructive call.
Call GET /webhooks/v3/{appId}/subscriptions to enumerate, DELETE each subscriptionId, then DELETE /webhooks/v3/{appId}/settings to remove the target URL configuration.
Agent-driven webhook setup through Jentic
An AI agent handling integration onboarding searches Jentic for the HubSpot subscription create operation, loads the schema, and registers a contact-change subscription against the customer's appId. Jentic injects the developer hapikey from the vault so the agent never holds the raw credential while configuring the app.
Through Jentic, search 'create a HubSpot webhook subscription', load the schema for POST /webhooks/v3/{appId}/subscriptions, and execute it with eventType='contact.creation' for the customer's appId.
9 endpoints — the hubspot webhooks api configures the change-event subscriptions that a hubspot app pushes to a target url.
METHOD
PATH
DESCRIPTION
/webhooks/v3/{appId}/settings
Get the app's webhook configuration
/webhooks/v3/{appId}/settings
Update the app's webhook target URL and throttling
/webhooks/v3/{appId}/settings
Remove the webhook configuration for the app
/webhooks/v3/{appId}/subscriptions
List active subscriptions
/webhooks/v3/{appId}/subscriptions
Create a new subscription
/webhooks/v3/{appId}/subscriptions/{subscriptionId}
Update a single subscription
/webhooks/v3/{appId}/subscriptions/{subscriptionId}
Delete a subscription
/webhooks/v3/{appId}/subscriptions/batch/update
Batch update multiple subscriptions
/webhooks/v3/{appId}/settings
Get the app's webhook configuration
/webhooks/v3/{appId}/settings
Update the app's webhook target URL and throttling
/webhooks/v3/{appId}/settings
Remove the webhook configuration for the app
/webhooks/v3/{appId}/subscriptions
List active subscriptions
/webhooks/v3/{appId}/subscriptions
Create a new subscription
Three things that make agents converge on Jentic-routed access.
Credential isolation
HubSpot developer hapikeys sit encrypted in the Jentic MAXsystem vault and are injected as query parameters at execution time. The agent configuring webhooks never sees the raw key.
Intent-based discovery
Agents search by intent like 'create a HubSpot webhook subscription' and Jentic returns the matching operation with its full input schema, including eventType and propertyName fields.
Time to first call
Direct integration: 1-2 days for hapikey setup, subscription schema, and batch toggling logic. Through Jentic: under 30 minutes — search, load, execute the subscription create or batch update call.
Alternatives and complements available in the Jentic catalogue.
HubSpot CRM Contacts
Contact records whose change events the webhook subscriptions deliver
Pair with Contacts to fetch the full record after a webhook event delivers only the change payload.
HubSpot CRM Deals
Deal records whose lifecycle and property change events flow through these webhooks
Subscribe to deal events here, then call CRM Deals to load the full deal context for downstream processing.
GitHub
Webhook delivery model for source-control events rather than CRM events
Choose GitHub webhooks for source-control events, use HubSpot webhooks for CRM record changes — the two complement different domains.
Stripe
Event delivery model for payment-domain events
Use Stripe events for payment lifecycle, use this HubSpot Webhooks API for CRM record lifecycle — many integrations subscribe to both.
Specific to using HubSpot Webhooks API through Jentic.
What authentication does the HubSpot Webhooks API use?
Webhook configuration calls authenticate with the HubSpot developer hapikey passed as a query parameter. Through Jentic the developer key sits in the encrypted MAXsystem vault and is injected at execution time so the agent configuring webhooks never sees the raw key.
Can I subscribe to property changes on specific HubSpot objects?
Yes. POST /webhooks/v3/{appId}/subscriptions accepts an eventType such as 'contact.propertyChange' along with a propertyName, so the subscription only fires when that specific property changes rather than on every contact update.
What are the rate limits for the HubSpot Webhooks API?
HubSpot enforces standard public API limits — 100 requests per 10 seconds for OAuth apps and 110 per 10 seconds for developer apps. The webhook delivery itself is governed separately by the throttling settings configured on PUT /webhooks/v3/{appId}/settings.
How do I create a webhook subscription through Jentic?
Search Jentic for 'create a HubSpot webhook subscription', load the schema for POST /webhooks/v3/{appId}/subscriptions, and execute it with the appId, eventType, and active flag. Jentic returns the new subscription record with its assigned ID.
Can I temporarily disable a subscription without deleting it?
Yes. PATCH /webhooks/v3/{appId}/subscriptions/{subscriptionId} with active:false pauses delivery while preserving the subscription. Flip active back to true to resume without recreating the subscription.
Does this API let me replay missed events?
No. Replay and retry behaviour is controlled by HubSpot's delivery system based on response codes from the target URL. This API only manages the subscription configuration; it does not expose a manual replay endpoint.
/webhooks/v3/{appId}/subscriptions/{subscriptionId}
Update a single subscription
/webhooks/v3/{appId}/subscriptions/{subscriptionId}
Delete a subscription
/webhooks/v3/{appId}/subscriptions/batch/update
Batch update multiple subscriptions