POST request to your specified endpoint whenever subscribed events occur. Your application receives the event payload, processes it, and returns a 2xx status code to acknowledge receipt.
When to use webhooks
Use webhooks when you need to:- Sync data in real-time between HubSpot and external systems (e.g., updating a contact in your database when they’re modified in HubSpot).
- Trigger automated workflows based on HubSpot events (e.g., sending a Slack notification when a deal closes).
- Monitor specific changes without constant API polling (e.g., tracking when contacts unsubscribe from emails).
Project structure
To define a set of webhook subscriptions for an app, create awebhooks directory within src/app/. Then, add a configuration file to that directory using the naming convention *-hsmeta.json.
Webhook configuration
Below are the available configuration options for the*-hsmeta.json file.
Fields marked with * are required.
For each
subscription object, the following fields can be specified, based on the subscription definition type you’re subscribed to (i.e., crmObjects, legacyCrmObjects, or hubEvents) or whether you’re subscribing to a specific property change (e.g., contact.propertyChange).