# List webhook subscriptions

Source: https://docs.vlayers.ai/reference/webhooks/list-webhook-subscriptions

`GET /v1/webhooks/subscriptions` · scope `webhooks:manage`

Returns every webhook subscription in your workspace. Signing secrets are never returned after creation; if you lose one, create a new subscription.

Requires an API key with the `webhooks:manage` scope.

## Request

cURL:

```bash
curl https://api.vlayers.ai/v1/webhooks/subscriptions \
  -H "Authorization: Bearer $VOICELAYER_API_KEY"
```

TypeScript:

```ts
import { createVoiceLayerClient, listWebhookSubscriptions } from '@voicelayer/api';

const client = createVoiceLayerClient({ apiKey: process.env.VOICELAYER_API_KEY!, throwOnError: true });

const { data } = await listWebhookSubscriptions({
  client
});
console.log(data.subscriptions);
```

Python:

```python
import os
import voicelayer

config = voicelayer.Configuration(access_token=os.environ["VOICELAYER_API_KEY"])
with voicelayer.ApiClient(config) as client:
    api = voicelayer.WebhooksApi(client)
    result = api.list_webhook_subscriptions()
    print(result.subscriptions)
```

## Response `200`

```json
{
  "subscriptions": [
    {
      "id": "0192f5a7-3c4d-7e5f-8a6b-7c8d9e0f1a23",
      "projectId": "0192f5a1-5e6f-7a7b-8c8d-9e0f1a2b3c45",
      "url": "https://example.com/voicelayer/webhooks",
      "eventTypes": [
        "message.*",
        "conversation.*"
      ],
      "description": "Production receiver",
      "enabled": true,
      "createdByKeyId": "key_7f2a91",
      "restrictTags": [],
      "createdAt": "2026-10-20T15:04:05.000Z",
      "updatedAt": "2026-10-20T15:04:05.000Z"
    }
  ]
}
```
