> ## Documentation Index
> Fetch the complete documentation index at: https://cal.id/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Setting Up Event-Specific Webhooks

> Send real-time booking data from a specific Cal ID event type to another application using event-level webhooks for granular automation control.

Webhooks send real-time data from Cal ID to another application whenever a booking event occurs. Setting them up at the **Event Type** level gives you fine-grained control, so notifications fire only for the specific meeting you choose.

## Steps to create a webhook for an event type

<Steps>
  <Step title="Access Event Types">
    Log in to your [Cal ID](https://cal.id/home) account and navigate to the **Event Types** tab in your dashboard.
  </Step>

  <Step title="Edit event type">
    Locate the specific event type you want to track, click the **three dots** on its card, and select **Edit**.
  </Step>

  <Step title="Open the Webhooks tab">
    Within the event editor, click on the **Webhooks** tab at the top of the page.
  </Step>

  <Step title="Add new webhook">
    Click the **+ Create** button.

    <Frame>
      <img src="https://mintcdn.com/cal-id-docs/3fu9CIn5wG7tNW3N/images/event-types/event-webhooks-1.png?fit=max&auto=format&n=3fu9CIn5wG7tNW3N&q=85&s=e3e8a16fd440557efb1643cf9b4ca32c" alt="Create button in the Webhooks tab" width="1600" height="835" data-path="images/event-types/event-webhooks-1.png" />
    </Frame>
  </Step>

  <Step title="Configure webhook details">
    * **Subscriber URL**: Paste the listener URL provided by the application you are sending data to (e.g., Zapier, Pipedream, or your own server).

    <Frame>
      <img src="https://mintcdn.com/cal-id-docs/3fu9CIn5wG7tNW3N/images/event-types/event-webhooks-2.png?fit=max&auto=format&n=3fu9CIn5wG7tNW3N&q=85&s=36d98468e86f6c840ccd284978532e76" alt="Subscriber URL field" width="1432" height="748" data-path="images/event-types/event-webhooks-2.png" />
    </Frame>

    * **Secret (optional but recommended)**: Enter a secret key to verify that the payload is authentic and has not been tampered with.

    <Frame>
      <img src="https://mintcdn.com/cal-id-docs/sKullsnr0kttqH1B/images/event-types/event-webhooks-3.png?fit=max&auto=format&n=sKullsnr0kttqH1B&q=85&s=f01848b415972de196dcfe05744e287b" alt="Secret key field" width="1432" height="748" data-path="images/event-types/event-webhooks-3.png" />
    </Frame>

    * **Event triggers**: Select the specific events that will trigger this webhook, such as **Booking Created**, **Booking Cancelled**, or **Meeting Ended**.

    <Frame>
      <img src="https://mintcdn.com/cal-id-docs/sKullsnr0kttqH1B/images/event-types/event-webhooks-4.png?fit=max&auto=format&n=sKullsnr0kttqH1B&q=85&s=949e38d2d93b17e372096ddd7dad2d14" alt="Event triggers selection" width="1432" height="748" data-path="images/event-types/event-webhooks-4.png" />
    </Frame>
  </Step>

  <Step title="Save">
    Click the **Create Webhook** button to activate the webhook.
  </Step>
</Steps>

## Important considerations

* **Scopes**: Event-type level webhooks trigger only for that specific event. To track all events for a user or team, create a webhook at the **User** or **Team** level instead. To do that, visit [**Webhook in Cal ID**](/docs/developers/webhooks).
* **Team managed events**: For team-managed events, it is highly recommended to create the webhook directly on the **parent event type** within the team dashboard to ensure it captures all bookings.
* **Custom payloads**: You can customize the data structure sent to your URL by using custom payload templates.

<Card title="Webhook events reference" icon="webhook" href="/docs/api-reference/webhook-events">
  See the full list of webhook triggers and their JSON payload schemas in the API reference.
</Card>


## Related topics

- [Webhook in Cal ID](/docs/developers/webhooks.md)
- [Enabling Apps for Specific Event Types](/docs/event-types/enable-apps.md)
- [Embed Meeting Scheduling Link](/docs/event-types/embed.md)
- [Integrating Cal ID with Make](/docs/apps/make.md)
