# Simulating Webhook Events

## Overview

Webhooks events can be simulated to validate Webhooks are functioning correctly. To simulate a webhook event simply provide the webhook ID in the request path and identifier in the POST body. This action will lookup the object, modify the relative fields, and POST it to the remote endpoint associated with your webhook.

{% hint style="info" %}
In order to receive a webhook, You must already be subscribed to said webhook before simulating it.
{% endhint %}

## Performing Simulations

Webhook event simulations can be initiated through the REST API by performing the following request.

See our [API Reference](https://app.gitbook.com/s/8lXIp71Ct5qCUhXjko2q/events/webhook-events/simulate-webhook-event) for a full description of the below call.

{% hint style="info" %}
Update the body with related property, order related webhooks require `order_id`, offer related webhooks require `offer_id`, collection related webhooks require `collection_id` and merchant related webhooks require `merchant_id`.
{% endhint %}

```bash
curl -X POST https://sandbox-api.violet.io/v1/apps/{app_id}/webhooks/{webhook_id}/simulate \
-H "X-Violet-App-Id: your-app-id-here" \
-H "X-Violet-App-Secret: your-app-secret-here" \
-H "X-Violet-Token: your-token-here" \
-H "Content-type: application/json" \
-d '{"order_id": 9999}'
```
