---
title: "Retrieve Webhook Endpoint"
method: GET
path: "/v2/projects/{project_id}/webhook_endpoints/{endpoint_id}"
tags: ["Webhooks V2"]
---

# Retrieve Webhook Endpoint

`GET /v2/projects/{project_id}/webhook_endpoints/{endpoint_id}`

Retrieves a webhook endpoint by ID. Requires webhooks:read scope.

## Path parameters

- `project_id` string, required — Project ID
- `endpoint_id` string, required — Webhook endpoint ID

## Query parameters

- `format` 'superwall' | 'superwall_v2' — Which webhook delivery application this endpoint belongs to. `superwall_v2` receives typed Superwall V2 payloads. Defaults to `superwall`.

## Response `200`

Success

- object
  - `id` string, required — Unique identifier for the webhook endpoint
  - `object` 'webhook_endpoint', required — Object type, always `webhook_endpoint`
  - `url` string, required — The URL where webhook events are sent
  - `description` string, nullable, required — Description of the webhook endpoint
  - `version` number, required — Webhook endpoint version
  - `disabled` boolean, required — Whether the webhook endpoint is disabled
  - `filter_types` string[], nullable, required — List of event types being filtered, or null for all events
  - `channels` string[], nullable, required — Webhook channels
  - `headers` object — Deprecated compatibility field. Stored header values are never returned; use `header_names` instead.
  - `secret` string — Deprecated compatibility field. Omitted from ordinary endpoint responses; signing secrets are returned only on creation or rotation.
  - `header_names` string[] — Names of configured custom headers. Header values are never returned
  - `integration_id` string — Safe integration identifier derived from the managed integration header. Other header values are never returned
  - `format` 'superwall' | 'superwall_v2' — Which webhook delivery format this endpoint belongs to (`superwall` or `superwall_v2`)
  - `created_at` string, required — ISO 8601 timestamp of when the endpoint was created
  - `updated_at` string, required — ISO 8601 timestamp of when the endpoint was last updated

## Other responses

- `400` — The request did not match the expected schema
- `401` — No API key was provided in the request
- `403` — The API key does not have permission to perform this action
- `404` — The requested resource was not found
- `429` — Too many requests have been made in a short period
- `500` — An unexpected error occurred on the server
- `502` — The upstream webhook provider request failed

---

[API](https://skmtc.dev/superwall/apis/superwall-api-v2.md) · [All operations](https://skmtc.dev/superwall/apis/superwall-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/superwall/superwall-api-v2/revisions/e04f76c478af/schema)
