---
title: "Get webhook"
method: GET
path: "/v1/webhooks/{id}"
tags: ["webhooks"]
---

# Get webhook

`GET /v1/webhooks/{id}`

## Request

- Base URL: `https://api.botdog.co`
- URL: `https://api.botdog.co/v1/webhooks/{id}`
- Auth: API key in header `x-api-key`

Fetch a single webhook subscription by ID.

## Path parameters

- `id` string, required

## Response `200`

- WebhookDto
  - `id` string, required: The unique identifier of the webhook
  - `name` string, required: A human-readable name for the webhook
  - `endpoint` string, required: The URL that receives event notifications
  - `status` string, required: The webhook status
  - `scope` string, required: Delivery scope. ALL and SPECIFIC_CAMPAIGNS carry campaign events; CONNECTED_ACCOUNT carries events that belong to no campaign, such as inbox messages from outside your campaigns.
  - `type` string, required: The webhook type
  - `isTeamWebhook` boolean, required: Whether the webhook is shared across the team
  - `eventTypes` string[], required: Event types this webhook is subscribed to
  - `campaignIds` string[], required: Campaign IDs this webhook is scoped to (empty when scope is ALL)
  - `createdAt` string, date-time, required: When the webhook was created
  - `updatedAt` string, date-time, required: When the webhook was last updated

## Other responses

- `401`: Unauthorized. API key is missing or invalid.
- `403`: The key owner has no seat assigned (write endpoints only), the team is on Botdog Managed and so may only read (write endpoints only), or the subscription/plan does not permit this.
- `404`: Webhook not found
- `429`: Rate limit exceeded. Retry after cooldown.

---

[API](https://skmtc.dev/botdog/apis/botdog-api.md) · [All operations](https://skmtc.dev/botdog/apis/botdog-api/llms.txt) · [OpenAPI document](https://skmtc.dev/botdog/apis/botdog-api/revisions/6c0213d8a608?raw)
