Version
DESTRUCTIVE

test_webhook_endpoint

Queue a synthetic test event to an endpoint so its consumer can be checked end to end. Returns the queued delivery to poll.

Send an endpoint a signed test event without waiting for something real to happen. The answer is the queued delivery in the get_webhook_delivery row shape, status pending; poll that tool for the target's response_status and response_excerpt once the worker has posted it.

Same worker, same signature, same ladder

The test delivery is posted by the same job that posts real events, signed with the endpoint's current secret, and retried on the same ladder if the target fails. A consumer that verifies the signature and returns 2xx for the test will do so for real events.

Only the creator who registered the endpoint, or the team owner, may fire a test; a fellow team member is refused with FORBIDDEN. REST rate-limits the same action to five per minute per endpoint.

Requires ability

The token behind the MCP session must hold it, or the call is refused with TOKEN_MISSING_ABILITY.

The REST endpoint and this tool share one action, so validation, permissions and events are identical.

Annotations

DestructiveOpen world

A client that honours annotations asks a person before running it. It reaches beyond Subscriby: a connector, a provider or a member.

Arguments

endpoint_id*string

UUID of the webhook endpoint to send a test event to.

What it returns

{  "data": {    "id": "34f1d78e-05a2-4b69-8c3d-7e921ab06f45",    "endpoint_id": "c62a08f4-1b7d-4e35-9860-a37f5d21e0b9",    "event": "webhook.test",    "event_id": "01HXZ3Q8M7Y2K4N6P9R1T3V5W7",    "status": "pending",    "attempts": 0,    "response_status": null,    "response_excerpt": null,    "payload": {      "id": "evt_01HXZ3Q8M7Y2K4N6P9R1T3V5W7",      "type": "webhook.test",      "created_at": "2026-09-06T09:20:00+00:00",      "api_version": "2026-05-01",      "project_id": null,      "data": {}    },    "next_attempt_at": null,    "delivered_at": null,    "dead_lettered_at": null,    "created_at": "2026-09-06T09:20:00+00:00"  }}

How it fails

FORBIDDEN

the token belongs to a team member who did not register the endpoint and is not the team owner.

VALIDATION_FAILED

the test was refused for the endpoint's current state.

RESOURCE_NOT_FOUND

unknown endpoint_id, or an endpoint of another team.

AUTHENTICATION_REQUIRED

no authenticated user on the request.

TOKEN_MISSING_ABILITY

token lacks webhook-endpoint:update.

How is this guide?

Last updated on