API Reference
API Reference / Endpoints / Platform

List webhook destinations

/v1/webhooks

List webhook destinations for the authenticated workspace.

GET/v1/webhooks
Auth: API keyBilling: FreeBehavior: SyncScopes: webhooks:manage
GETSyncNo bodywebhooks:manage

When to use it

Use this to drive a settings UI, inspect failure counts, or reconcile which receivers are currently active.

Behavior on success

Returns a completed payload on the normal success path.

Integration shape

Authorization model
webhooks:manage
Request format
No request body
Polling pattern
No polling required on the normal success path.

Example request

GET /v1/webhooks
const response = await fetch('https://prod-backup-backend.wubble.ai/v1/webhooks', {
  method: 'GET',
  headers: {
    Authorization: `Bearer ${process.env.WUBBLE_API_KEY}`,
  },
});

const payload = await response.json();
console.log(payload);

Example response

Response shapejson
{
  "success": true,
  "data": [
    {
      "webhook_id": "wh_123",
      "url": "https://example.com/api/wubble/webhooks",
      "events": [
        "music.instrumental.completed"
      ],
      "description": "Primary production receiver",
      "secret": "whsec_currently_returned_by_the_api",
      "is_active": true,
      "failure_count": 0,
      "disabled_at": null,
      "created_at": "2026-05-12T12:00:00.000Z",
      "updated_at": "2026-05-12T12:00:00.000Z"
    }
  ]
}

Implementation notes

The current API response includes the stored secret. That is the real behavior today, even though many platforms would mask it.

Production guidance

Pair this route with idempotency on POST requests and either request polling or webhooks whenever the response is asynchronous.
Was this page helpful?