Skip to main content
GET
/
webhooks
List webhook endpoints
curl --request GET \
  --url https://teambattles.gg/api/v1/webhooks \
  --header 'Authorization: Bearer <token>'
{
  "webhooks": [
    {
      "id": "<string>",
      "scopeId": "<string>",
      "url": "<string>",
      "secretPrefix": "<string>",
      "events": [
        "<string>"
      ],
      "isActive": true,
      "label": "<string>",
      "failureCount": 0,
      "lastDeliveredAt": 123,
      "lastFailedAt": 123,
      "createdAt": 123,
      "updatedAt": 123
    }
  ],
  "count": 0,
  "timestamp": "<string>"
}

Permission Required

This endpoint requires the webhooks.manage permission (the { kind: "webhook" } scope) on your API key, plus the webhooks feature. Webhooks are gated to api_pro or higher plans: a key on a free plan receives 403 error_api_feature_required.

Access / Membership Rules

Webhook endpoints are owner-scoped - you only ever see the endpoints in your key’s own derived scope. The scope is derived from your key type: a personal key resolves to your user scope, a game-developer key to its bound game, and a league-operator key to its bound league. Endpoints owned by another scope are never returned.

What’s Returned

Returns { webhooks, count, timestamp }. webhooks is an array of endpoint objects, and count is its length. Each endpoint includes id, scopeType, scopeId, url, secretPrefix (first 8 chars of the signing secret, display only - never the full secret), events, isActive, label, failureCount (consecutive dead-lettered deliveries; the endpoint auto-disables at 50), lastDeliveredAt, lastFailedAt, createdAt, and updatedAt. Secret material is never included.
For the signature scheme, request headers, and the full event catalog, see the Webhooks guide.

Authorizations

Authorization
string
header
required

Send your API key as: Authorization: Bearer tb_

Response

The caller's webhook endpoints.

List of the caller's webhook endpoints.

webhooks
object[]
required
count
integer
required
Required range: -9007199254740991 <= x <= 9007199254740991
timestamp
string
required