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

# Webhook

A **Webhook** is a user-defined HTTP endpoint that Monime invokes with a **POST request** whenever specific events occur, such as **`payment.completed`** or **`payout.failed`**.\
Webhooks allow you to receive real-time notifications and integrate Monime’s event stream directly into your own systems.

### Use Cases

* **Realtime Payment Updates**\
  Receive an immediate notification when a payment succeeds and update your user’s dashboard without polling the API.

* **Automated Payout Reconciliation**\
  Trigger accounting workflows or ERP system updates when a payout is marked as `completed` or `failed`.

* **Fraud & Risk Monitoring**\
  Stream payment events into your fraud detection system as they happen.

***

<ResponseExample>
  ```json JSON Model theme={null}
  {
      "id": null,
      "name": "My Ecommerce Webhook",
      "url": null,
      "enabled": null,
      "events": [],
      "apiRelease": "caph",
      "verificationMethod": {
          "type": "ES256"
      },
      "headers": null,
      "alertEmails": [],
      "createTime": null,
      "updateTime": null,
      "metadata": null
  }
  ```
</ResponseExample>

<ResponseField name="📋" type="Properties">
  <ResponseField name="id" type="string">
    Unique identifier of the webhook object.
  </ResponseField>

  <ResponseField name="name" type="string">
    Human-readable name for the webhook configuration. Useful for identifying its purpose in dashboards or logs.

    Example: <code>My Ecommerce Webhook</code>
  </ResponseField>

  <ResponseField name="url" type="string">
    Publicly accessible URL that will receive event POST requests from this webhook.
  </ResponseField>

  <ResponseField name="enabled" type="boolean">
    Indicates whether the webhook is currently enabled. If false, events will not be sent.
  </ResponseField>

  <ResponseField name="events" type="array">
    List of event types (e.g., 'payment.created') that will trigger this webhook.
  </ResponseField>

  <ResponseField name="apiRelease" type="enum<string>">
    The release identifier of the API expected by this webhook. Ensures the webhook receives the latest object schema for a given release cycle.

    Available options: <code>caph</code> <code>siriusb</code>
  </ResponseField>

  <ResponseField name="verificationMethod" type="object">
    Method used to verify the integrity of incoming webhook requests.

    <Expandable title="properties">
      <ResponseField name="type" type="enum<string>">
        The type of verification method in use. Either 'HS256' for HMAC or 'ES256' for ECDSA.

        Available options: <code>ES256</code> <code>HS256</code>
      </ResponseField>
    </Expandable>
  </ResponseField>

  <ResponseField name="headers" type="object">
    Optional HTTP headers to include in webhook requests. Useful for passing authentication or context info.
  </ResponseField>

  <ResponseField name="alertEmails" type="array">
    Email addresses to notify when delivery to this webhook repeatedly fails.
  </ResponseField>

  <ResponseField name="createTime" type="string">
    Timestamp when the webhook was created.
  </ResponseField>

  <ResponseField name="updateTime" type="string">
    Timestamp when the webhook was last updated.
  </ResponseField>

  <ResponseField name="metadata" type="object">
    Custom metadata for storing additional context or labels for this webhook.
  </ResponseField>
</ResponseField>
