webhooks

Retrieve a webhook endpoint

Changed on

Retrieve one webhook endpoint with its subscribers, the filter each one applies, and its setup prompt: instructions for registering the endpoint and its signing secret with the provider.

get/api/v1/webhooks/endpoints/{endpointId}

Request

Response

Successful request

idstring required

The endpoint's id.

declaredIdstring required

The id the endpoint is declared with in code (webhooks.endpoint.define({ id })).

sourcestring required

The provider source that verifies and types the endpoint's events.

status'active' | 'inactive' | 'deleting' required

active accepts deliveries. inactive was disabled, or is no longer in the current deployment, and its URL responds with 404.

secretProvisioning'provider' | 'integrator' | 'either' required

Who supplies the signing secret: provider issues it (store it with the set secret endpoint), integrator means you choose it (generate one), and either accepts both.

secretSetboolean required

Whether a signing secret or public key is set. Every delivery is rejected until it is.

tenantIdstring nullable required

Reserved for dynamic endpoints. null for a declared endpoint.

externalRefstring nullable required

Reserved for dynamic endpoints. null for a declared endpoint.

urlstring required

The webhook URL to register with the provider.

createdAtstring date-time required
updatedAtstring date-time required
setupPromptstring required

Instructions for an AI coding agent to register the endpoint with its provider and set up the signing secret.

Example response

{
  "id": "wh_cm1a2b3c4d5e6f",
  "declaredId": "stripe",
  "source": "stripe",
  "url": "https://api.trigger.dev/webhooks/v1/ingest/q3Xb7k2LmP9sT4vW1yZ0aQ",
  "subscribers": [
    {
      "id": "process-checkout",
      "taskId": "process-checkout",
      "filter": "event.type == 'checkout.session.completed'"
    }
  ]
}

Changes