> For a complete page index of the Captain API documentation, fetch https://docs.filesearch.dev/llms.txt?excludeSpec=true

# List Subscriptions

GET https://api.filesearch.dev/v2/datasets/odyssey/webhooks/subscriptions

List the caller's active subscriptions (inactive ones excluded).

Reference: https://docs.filesearch.dev/reference/datasets/odyssey/feed/list-subscriptions

## Response

### 200

Successful Response

- `data` (list of WebhookSubscription, required)
- `count` (integer, required)

## Types

### WebhookSubscription

- `id` (string, required)
- `callback_url` (string, required)
- `watchlist_domains` (list of string, required)
- `watchlist_count` (integer, required)
- `feeds` (list of string, required)
- `status` (string, required)
- `secret_set` (boolean, required) — Whether an HMAC signing secret is configured; the secret itself is never returned
- `created_at` (string, required)

## Examples

**Response**

```json
{
  "data": [
    {
      "id": "whk_359f81118ef84127a1c6",
      "callback_url": "https://example.com/hook",
      "watchlist_domains": [
        "stripe.com",
        "ramp.com"
      ],
      "watchlist_count": 2,
      "feeds": [
        "events"
      ],
      "status": "active",
      "secret_set": false,
      "created_at": "2026-06-03T15:21:03Z"
    }
  ],
  "count": 1
}
```

**SDK Code**

```python Python REST
import requests

BASE_URL = "https://api.filesearch.dev"
API_KEY = "your_api_key"

headers = {"Authorization": f"Bearer {API_KEY}"}

response = requests.get(
    f"{BASE_URL}/v2/datasets/odyssey/webhooks/subscriptions",
    headers=headers,
    timeout=60.0
)
print(response.json())
```

```typescript TypeScript REST
const BASE_URL = "https://api.filesearch.dev";
const API_KEY = "your_api_key";

const response = await fetch(`${BASE_URL}/v2/datasets/odyssey/webhooks/subscriptions`, {
    method: "GET",
    headers: { "Authorization": `Bearer ${API_KEY}` }
});
console.log(await response.json());
```