> ## Documentation Index
> Fetch the complete documentation index at: https://docs.relayos.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# GET /v1/messages — List Messages

> Retrieve a paginated list of all messages sent from your RelayOS project, including their current delivery status and timestamps.

Use this endpoint to retrieve all messages sent from your project. The response includes each message's current delivery status, so you can monitor the overall health of your outbound traffic at a glance.

## Request

**`GET https://api.relayos.com.br/v1/messages`**

### Headers

<ParamField header="Authorization" type="string" required>
  Bearer token for your RelayOS API key. Format: `Bearer YOUR_API_KEY`.
</ParamField>

## Example

```bash theme={null}
curl https://api.relayos.com.br/v1/messages \
  -H "Authorization: Bearer YOUR_API_KEY"
```

## Response

Returns an array of message objects. Each object reflects the message's latest known status at the time of the request.

<ResponseField name="id" type="string">
  Unique message ID assigned by RelayOS.
</ResponseField>

<ResponseField name="status" type="string">
  Current delivery status of the message. Possible values:

  | Value       | Meaning                                       |
  | ----------- | --------------------------------------------- |
  | `QUEUED`    | Accepted by RelayOS, not yet sent to Meta     |
  | `SENT`      | Submitted to the WhatsApp Cloud API           |
  | `DELIVERED` | Confirmed delivered to the recipient's device |
  | `READ`      | Recipient opened the message                  |
  | `FAILED`    | Delivery failed after all retry attempts      |
</ResponseField>

<ResponseField name="to" type="string">
  Recipient phone number in E.164 format.
</ResponseField>

<ResponseField name="template" type="string">
  Name of the template used for this message.
</ResponseField>

<ResponseField name="queuedAt" type="string">
  ISO 8601 timestamp of when RelayOS accepted the message.
</ResponseField>

```json theme={null}
[
  {
    "id": "msg_01hwz3k9fxe5vr2t8qn6yc4bmd",
    "status": "DELIVERED",
    "to": "+5511999998888",
    "template": "lembrete_consulta",
    "queuedAt": "2026-05-14T10:30:00Z"
  },
  {
    "id": "msg_01hwz4m2gxf7ws3u9rp8zd5cne",
    "status": "QUEUED",
    "to": "+5521988887777",
    "template": "confirmacao_pedido",
    "queuedAt": "2026-05-14T11:05:42Z"
  }
]
```

<Info>
  To track a specific message in real time, use `GET /v1/messages/{id}` or configure a webhook callback URL on your project to receive status updates as they happen.
</Info>
