# redeliverWebhookDelivery

Mutation

Manually replay a terminal failed delivery (one-shot).

Available to agents as MCP tool `redeliverWebhookDelivery` — see [Write tools](/api/v2/docs/mcp/write-tools#redeliver-webhook-delivery).

## Arguments

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `deliveryId` | `ID!` | Yes | — | UUID of the failed delivery to replay. |

## Returns

| Name | Type | Description |
| --- | --- | --- |
| `userErrors` | [`[UserError!]!`](/api/v2/docs/types/user-error) | List of user-facing errors. Empty on success. |
| `webhookDelivery` | [`WebhookDelivery`](/api/v2/docs/types/webhook-delivery) | The re-enqueued delivery. Null on failure. |

## Examples

### Redeliver a failed webhook delivery

Replay one terminal failed delivery (nextAttemptAt null). One-shot: a replayed delivery is no longer failed. Resolve the deliveryId from webhookDeliveries filtered to FAILED.

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

Variables:

```json
{
  "deliveryId": "dbe6be29-b520-5cdc-81a3-b7a0d5d8f62e"
}
```

Response — HTTP 200:

```json
{
  "data": {
    "redeliverWebhookDelivery": {
      "webhookDelivery": {
        "id": "dbe6be29-b520-5cdc-81a3-b7a0d5d8f62e",
        "subscriptionId": "41662e09-10c4-52e4-844a-62ddedb38f11",
        "eventId": "0f8e0d63-409e-5fd1-88bd-2febbe05fa53",
        "status": "PENDING",
        "attemptCount": 8,
        "lastResponseStatus": null,
        "responseTimeMs": 87
      },
      "userErrors": []
    }
  }
}
```
