# Webhooks

Webhooks send EasyDesk events to an external URL. Use them when another system needs to react to support activity, such as new messages, conversation updates, assignments, labels, or status changes.

## Add A Webhook

Go to **Settings -> Integrations -> Webhooks**.

1. Click **Add Webhook**.
2. Enter the HTTPS endpoint that should receive events.
3. Select the events you want to send.
4. Save the webhook.
5. Trigger a test event and inspect the receiving system.

Use a dedicated endpoint for EasyDesk events. Avoid sending webhooks to endpoints that also process unrelated traffic unless your system can separate them safely.

## Endpoint Requirements

Your endpoint should:

* Accept `POST` requests.
* Respond quickly with a success status.
* Verify the payload according to your internal security model.
* Handle repeated events safely.
* Log failures with enough detail for debugging.

## Event Scope

Subscribe only to events you need. Sending every event makes downstream systems harder to operate and can create unnecessary load.

## Reliability

Design your receiver to be idempotent. Network retries, worker restarts, or downstream failures can cause duplicate processing in many webhook systems. Your endpoint should not create duplicate side effects when the same event is received more than once.

## Troubleshooting

If events are missing, check the selected event list, endpoint availability, authentication, and receiver logs. Test with a fresh conversation after changing webhook settings.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.easydesk.live/webhooks.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
