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

# Webhooks Overview

> Receive real-time notifications when events occur in your Everflow account.

Webhooks are automated HTTP POST messages sent from Everflow when events occur in your account. Unlike API calls, webhooks cannot be used on demand — they fire only when something happens inside Everflow.

## How Webhooks Work

When an event occurs (e.g., an advertiser is created or a conversion is registered), Everflow sends an HTTP POST request to the URL you've configured. The request body contains a JSON payload with details of the affected resource.

## Key Characteristics

* **Push-based**: Everflow sends data to your endpoint — no polling needed
* **No API key required**: Webhooks are configured in the Everflow UI, not via the API
* **Network user only**: Webhook configuration is available exclusively to network administrators
* **JSON payloads**: All webhook payloads are delivered as JSON

## Setup

Webhooks are configured directly inside the Everflow platform under **Control Center > Automations**. For detailed setup instructions, visit the [Everflow Helpdesk](https://helpdesk.everflow.io/).

## Available Webhook Events

Everflow supports webhooks for the following event types:

| Resource                       | Events                      | Payload Type                                                                      |
| ------------------------------ | --------------------------- | --------------------------------------------------------------------------------- |
| **Offer**                      | Created, Updated            | Matches Find Offer By ID response (with `targeting` relationship)                 |
| **Advertiser**                 | Created, Updated, Signed Up | Matches Find Advertiser By ID response (with `users` and `billing` relationships) |
| **Partner**                    | Created, Updated, Signed Up | Matches Find Affiliate By ID response (with `users` and `billing` relationships)  |
| **Partner Sign Up Verdict**    | Sign Up Verdict             | Custom flat payload with verdict details                                          |
| **Partner Approved for Offer** | Approved for Offer          | Custom envelope with full offer and affiliate objects                             |
| **Conversion**                 | Registered                  | Simplified conversion payload with offer, advertiser, and affiliate relationships |
| **Event**                      | Registered                  | Same structure as Conversion Registered (for post-conversion events)              |
| **Traffic Optimization**       | Optimized                   | List of blocked traffic variables with offer and affiliate relationships          |

## Payload Format

Webhook payloads vary by event type:

* **CRUD webhooks** (Offer, Advertiser, Partner Created/Updated/Signed Up): Payloads closely match the response structure of the corresponding "Find By ID" API endpoint with specific relationships included. See individual webhook pages for details on which relationships are included.
* **Partner Sign Up Verdict**: Uses a custom flat payload with the verdict decision and employee details.
* **Partner Approved for Offer**: Uses a custom envelope containing the offer ID, affiliate ID, timestamps, and full nested offer and affiliate objects.
* **Conversion / Event Registered**: Uses a simplified conversion payload with core conversion fields and basic offer, advertiser, and affiliate relationships.
* **Traffic Optimization**: Returns a list of blocked traffic variables with offer and affiliate relationship data.

## Best Practices

* **Respond quickly**: Return a `200` status code as fast as possible — process the payload asynchronously
* **Verify payloads**: Validate that incoming requests match expected structure before processing
* **Handle duplicates**: Webhooks may occasionally deliver the same event more than once — use the resource ID to deduplicate
* **Use HTTPS**: Always use an HTTPS endpoint for webhook delivery
