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

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

Webhooks are owner-scoped. The {id} must resolve to an endpoint in your key’s own derived scope (user, game, or league, depending on your key type). An endpoint owned by another scope - or an unknown id - is reported as 404 error_webhook_not_found; a cross-scope read is indistinguishable from a real miss.

What’s Returned

Returns the endpoint object: 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_

Path Parameters

id
string
required

Webhook endpoint id.

Response

The requested webhook endpoint.

A webhook endpoint (no secret material).

id
string
required

Webhook endpoint id.

scopeType
enum<string>
required

The single scope dimension an endpoint is bound to.

Available options:
game,
league,
org,
team,
user
scopeId
string
required

Stringified bound scope id.

url
string
required

Delivery URL.

secretPrefix
string
required

First 8 chars of the current signing secret (display only).

events
string[]
required

Subscribed event tokens.

isActive
boolean
required

Whether the endpoint receives deliveries.

label
string | null
required

Human label, or null.

failureCount
integer
required

Consecutive dead-lettered deliveries (auto-disables at 50).

Required range: -9007199254740991 <= x <= 9007199254740991
lastDeliveredAt
number | null
required

Epoch ms of the last successful delivery, or null.

lastFailedAt
number | null
required

Epoch ms of the last failed delivery, or null.

createdAt
number
required

Creation epoch ms.

updatedAt
number
required

Last update epoch ms.