---
title: "Get Subscription"
method: GET
path: "/webhooks/subscriptions/{subscription_id}"
tags: ["webhooks"]
---

# Get Subscription

`GET /webhooks/subscriptions/{subscription_id}`

Retrieve a specific webhook subscription with its recent delivery attempts.

Returns the subscription configuration along with a history of message delivery
attempts. This is useful for debugging delivery issues or verifying that your
endpoint is correctly receiving events.

Use `include_secret=true` to also retrieve the signing secret for webhook
signature verification. Keep this secret secure.

## Path parameters

- `subscription_id` string, required — The unique identifier of the subscription to retrieve (UUID).

## Query parameters

- `include_secret` boolean — Include the signing secret for webhook signature verification. Keep this secret secure and use it to verify the 'svix-signature' header.

## Response `200`

Subscription with delivery attempts

- WebhookSubscriptionDetail — Full subscription detail, including delivery attempts and signing secret. Returned by ``GET /subscriptions/{id}`` only.
  - `id` string, required — Unique identifier for this subscription (UUID format)
  - `url` string, required — The URL where webhook events are delivered
  - `filter_types` string[], nullable — Event types this subscription is filtered to receive. See EventType enum for all available types.
  - `disabled` boolean — Whether this subscription is currently disabled. Disabled subscriptions do not receive event deliveries.
  - `description` string, nullable — Optional human-readable description of this subscription
  - `created_at` string, date-time, required — When this subscription was created (ISO 8601 format, UTC)
  - `updated_at` string, date-time, required — When this subscription was last updated (ISO 8601 format, UTC)
  - `health_status` 'healthy' | 'degraded' | 'failing' | 'unknown' — Health status of a webhook subscription based on recent delivery attempts.
  - `delivery_attempts` DeliveryAttempt[], nullable — Recent delivery attempts for this subscription.
    - `id` string, required — Unique identifier for this delivery attempt
    - `message_id` string, required — The event message that was being delivered
    - `endpoint_id` string, required — The subscription endpoint this was delivered to
    - `response` string, nullable — The response body returned by your webhook endpoint (truncated to 1KB)
    - `response_status_code` integer, required — HTTP status code returned by your webhook endpoint. 2xx codes indicate success; other codes trigger retries.
    - `status` string, required — Delivery status: `success` (2xx response), `pending` (awaiting delivery), or `failed` (non-2xx response or timeout)
    - `timestamp` string, date-time, required — When this delivery attempt occurred (ISO 8601 format, UTC)
    - `url` string, nullable — The URL that was called
  - `secret` string, nullable — The signing secret for webhook signature verification. Only included when include_secret=true is passed to the API. Keep this secret secure.

## Other responses

- `404` — Subscription Not Found
- `422` — Validation Error
- `429` — Rate Limit Exceeded

---

[API](https://skmtc.net/airweave-ai/apis/airweave.md) · [All operations](https://skmtc.net/airweave-ai/apis/airweave/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/airweave-ai/airweave/revisions/bf410c28c0c6/schema)
