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

# List webhooks

> List your webhook subscriptions.

Returns all webhook subscriptions registered for the authenticated account.

## Query parameters

None.

<RequestExample>
  ```bash cURL theme={null}
  curl https://api.vouchmark.com/v1/developers/webhooks \
    -H "Authorization: Bearer $TOKEN"
  ```
</RequestExample>

<ResponseExample>
  ```json theme={null}
  {
    "success": true,
    "data": [
      {
        "id": "...",
        "appId": "...",
        "environment": "live",
        "serviceType": "kyc_widget",
        "endpoint": "https://...",
        "isActive": true,
        "signingSecretMasked": "whsec_…ab12",
        "createdAt": "..."
      }
    ]
  }
  ```
</ResponseExample>

<Note>
  List responses return the signing secret **masked** (`signingSecretMasked`) — only the
  last few characters are visible. The full secret is shown once on
  [create](/api-reference/developers/create-webhook) and
  [rotate](/api-reference/developers/rotate-webhook-secret).
</Note>

## Response fields

<ResponseField name="success" type="boolean" />

<ResponseField name="data" type="object[]">
  <Expandable title="webhook">
    <ResponseField name="id" type="string" />

    <ResponseField name="appId" type="string" />

    <ResponseField name="environment" type="string">
      One of `sandbox` or `live`.
    </ResponseField>

    <ResponseField name="serviceType" type="string">
      One of `kyc_widget`, `verification`, `trust_monitor`, `disputes`.
    </ResponseField>

    <ResponseField name="endpoint" type="string" />

    <ResponseField name="isActive" type="boolean">
      Whether the subscription is active and receiving deliveries.
    </ResponseField>

    <ResponseField name="signingSecretMasked" type="string">
      The signing secret with only the last few characters visible (for example
      `whsec_…ab12`).
    </ResponseField>

    <ResponseField name="createdAt" type="string" />
  </Expandable>
</ResponseField>
