Skip to main content
Webhooks allow you to listen to real-time events happening across your Heyy workspace. With webhooks, you can build custom integrations with Heyy, such as:
  • Syncing message events to your CRM or data warehouse in real time
  • Triggering downstream workflows when a message.received event arrives
  • Forwarding delivery status updates from message.updated to your own systems
  • Connecting Heyy to tools like Zapier, Make, or n8n through your webhook endpoint
Heyy currently sends webhooks for message events only. See Event types for the list of supported events and payloads.
In this guide, we’ll show you how to configure webhooks for your Heyy workspace and where to find the events you can listen to.

Creating a webhook

To create a webhook for your Heyy workspace, follow these steps: Navigate to the Webhooks settings page in your Heyy workspace.
Webhooks settings
Click Create webhook to create a new webhook.
Create webhook form
Fill in the required fields in the webhook creation form:
  1. URL — The endpoint where Heyy should send webhook events (you can use webhook.site to test your webhook).
  2. Events — Configure which events this webhook listens to. Click Add event to add another row. Each event row has:
    • Event typeMessage received, Message sent, or Message updated. See Event types for payload details.
    • Channels — Select one or more channels this event applies to. At least one channel is required per event.
Finally, click Create to save the configuration. When updating a webhook, you can change the same fields. You can also create and manage webhooks through the Manage webhooks API endpoints in this tab.

Retry behaviour

If your webhook endpoint does not respond with a success status code (2XX), Heyy retries the request so events are not lost. You can see retry attempts in your webhook event logs. Webhooks are retried until they are successfully delivered, with exponential backoff to avoid overwhelming your endpoint (also known as the thundering herd problem).

Temporary disablement

If a webhook endpoint consistently fails, it will be automatically disabled after a series of failed attempts. This prevents non-responsive endpoints from receiving retry attempts indefinitely. You can re-enable a disabled webhook from the webhook details page in Settings → Webhooks.