# sendWebhookTestEvent

Mutation

Send a signed synthetic ping to a subscription's endpoint and return the settled delivery.

Available to agents as MCP tool `sendWebhookTestEvent` — see [Write tools](/api/v2/docs/mcp/write-tools#send-webhook-test-event).

## Arguments

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `id` | `ID!` | Yes | — | UUID of the subscription to test. |

## Returns

| Name | Type | Description |
| --- | --- | --- |
| `userErrors` | [`[UserError!]!`](/api/v2/docs/types/user-error) | List of user-facing errors. Populated when the subscription was not found or the ping was rate-limited; both surface on ["id"]. |
| `webhookDelivery` | [`WebhookDelivery`](/api/v2/docs/types/webhook-delivery) | The settled test delivery (status / lastResponseStatus / responseTimeMs). Null when the subscription is not found or the ping is rate-limited. The ping shares the outer envelope + signature with real events, so it validates transport + X-Archive-Signature verification end-to-end. Its data is { ping: true, subscription_id, sent_at }, not the content_view.item_added { item, view } shape, so do not parse it as an item or view event. |

## Examples

### Send a webhook test event

POST a signed synthetic ping to the subscription's endpoint and return the settled delivery, so you can verify transport and signature verification end to end. The ping payload is { ping, subscription_id, sent_at } — not the content_view.item_added shape.

```graphql
mutation SendWebhookTestEventDefault($id: ID!) {
  sendWebhookTestEvent(id: $id) {
    webhookDelivery {
      id
      subscriptionId
      eventId
      status
      attemptCount
      lastResponseStatus
      responseTimeMs
    }
    userErrors {
      field
      message
    }
  }
}
```

Variables:

```json
{
  "id": "eb418e28-bf9d-5350-b87b-446a6813bca4"
}
```

Response — HTTP 200:

```json
{
  "data": {
    "sendWebhookTestEvent": {
      "webhookDelivery": {
        "id": "51e830cd-4071-5889-9304-2ac229f5cf70",
        "subscriptionId": "eb418e28-bf9d-5350-b87b-446a6813bca4",
        "eventId": "4849ae8e-b058-59bb-95b3-4e993b82807c",
        "status": "SUCCEEDED",
        "attemptCount": 1,
        "lastResponseStatus": 200,
        "responseTimeMs": 142
      },
      "userErrors": []
    }
  }
}
```
