# Message status

In this section, you can find more details about the message statuses that apply to the the email channel in the Channels API

{% code lineNumbers="true" %}

```json
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "channelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "sender": {
    "connector": {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "identifierValue": "string",
      "annotations": {
        "name": "string"
      }
    }
  },
  "body": {
    "type": "text"
  },
  "reference": "string",
  "parts": [
    {
      "platformReference": "string"
    }
  ],
  "status": "accepted",
  "reason": "string",
  "direction": "incoming",
  "template": {
    "projectId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "version": "string",
    "locale": "string",
    "variables": {
      "default": "string",
      "additionalProp1": "string",
      "additionalProp2": "string",
      "additionalProp3": "string"
    }
  },
  "lastStatusAt": "2023-06-23T15:51:19.660Z",
  "createdAt": "2023-06-23T15:51:19.660Z",
  "updatedAt": "2023-06-23T15:51:19.660Z",
  "details": "string"
}
```

{% endcode %}

Email supports the following [message statuses](https://docs.bird.com/api/message-status-and-interactions#message-lifecycle-events)

| Status           | Description                                                                                                                                                                                                       |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| accepted         | An outgoing message has been accepted by the Channels API                                                                                                                                                         |
| sent             | Channels API has attempted to send an outgoing message to a platform e.g Email                                                                                                                                    |
| sending\_failed  | An outgoing message has failed to be sent to a platform                                                                                                                                                           |
| delivery\_failed | An outgoing message has been sent successfully to a platform but the message has failed to be delivered to a recipient                                                                                            |
| delivered        | An outgoing message has been successfully delivered to a recipient or an incoming message has been delivered to the channels API. Use the `direction` field to determine if a message is `outgoing` or `incoming` |

Additional information for sending or delivery failure can be found in the `details` and where applicable a `reason` will be set to provide more troubleshooting information:

<table><thead><tr><th>Status</th><th width="202">details</th><th>Description</th></tr></thead><tbody><tr><td>sending_failed</td><td>generationRejection</td><td>Message generation failed due to policy</td></tr><tr><td>sending_failed</td><td>generationFailure</td><td>Message generation failed for an intended recipient </td></tr><tr><td>sending_failed</td><td>policyRejection</td><td>Message rejected due to policy</td></tr><tr><td>delivery_failed</td><td>bounceHard</td><td>The recipient is invalid or could not be determined</td></tr><tr><td>delivery_failed</td><td>bounceSoft</td><td>The message has been temporarily delayed or failed for unspecified reasons</td></tr><tr><td>delivery_failed</td><td>bounceBlock</td><td>The message has been blocked by the receiver</td></tr><tr><td>delivery_failed</td><td>bounceAdmin</td><td>The message was failed by an configured policy</td></tr><tr><td>delivery_failed</td><td>bounceUndetermined</td><td>The response text could not be determined</td></tr><tr><td>delivery_failed</td><td>delay</td><td>Remote MTA has temporarily rejected the message</td></tr><tr><td>delivery_failed</td><td>out_of_band</td><td>Remote MTA initially reported acceptance of the message, but it has since reported that the message was not delivered</td></tr></tbody></table>
