---
title: "message.attempt.recovered"
method: POST
path: "message.attempt.recovered"
tags: ["Webhook"]
---

# message.attempt.recovered

`POST message.attempt.recovered` (webhook)

Sent on a successful dispatch after an earlier failure op webhook has already been sent.

## Payload

- MessageAttemptRecoveredEvent — Sent on a successful dispatch after an earlier failure op webhook has already been sent.
  - `data` MessageAttemptRecoveredEventData, required — Sent when a message delivery has failed (all of the retry attempts have been exhausted) as a "message.attempt.exhausted" type or after it's failed four times as a "message.attempt.failing" event.
    - `appId` string, required — The Application's ID.
    - `appUid` string, nullable — The Application's UID.
    - `endpointId` string, required — The Endpoint's ID.
    - `lastAttempt` MessageAttemptFailedData, required
      - `id` string, required — The MessageAttempt's ID.
      - `responseStatusCode` integer, required
      - `timestamp` string, date-time, required
    - `msgEventId` string, nullable — The Message's UID.
    - `msgId` string, required — The Message's ID.
  - `type` 'message.attempt.recovered', required

## Acknowledgement `2XX`

Return any 2XX status to indicate that the data was received successfully

---

[API](https://skmtc.net/svix/apis/svix-api.md) · [All operations](https://skmtc.net/svix/apis/svix-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/svix/svix-api/revisions/b0c8a1820333/schema)
