---
title: "Get a message"
method: GET
path: "/mailboxes/{address}/messages/{uid}"
tags: ["Mail"]
---

# Get a message

`GET /mailboxes/{address}/messages/{uid}`

## Request

- Base URL: `https://faivelo.com/api/v1`
- URL: `https://faivelo.com/api/v1/mailboxes/{address}/messages/{uid}`
- Auth: HTTP bearer

Returns the full message including HTML/text body and attachment metadata. Automatically marks the message as seen. Requires scope `mail:read`.

## Path parameters

- `address` string, required
- `uid` union, required
  - integer
  - string

## Query parameters

- `folder` string

## Response `200`

Full message

- object
  - `success` boolean
  - `data` Message: Full message with body and attachment metadata
    - `uid` integer
    - `messageId` string
    - `from` string
    - `to` string[]
    - `cc` string[]
    - `subject` string
    - `date` string, date-time
    - `seen` boolean
    - `flagged` boolean
    - `labels` string[]: Labels on the message
    - `html` string: HTML body of the message
    - `text` string: Plain-text body of the message
    - `attachments` Attachment[]
      - `filename` string
      - `contentType` string
      - `size` integer

## Other responses

- `401`: Missing or invalid API key
- `402`: The account's plan does not include the API (`plan_required`)
- `403`: The key lacks the required scope
- `404`: Resource not found
- `429`: Rate limit exceeded

---

[API](https://skmtc.dev/faivelo/apis/faivelo-api.md) · [All operations](https://skmtc.dev/faivelo/apis/faivelo-api/llms.txt) · [OpenAPI document](https://skmtc.dev/faivelo/apis/faivelo-api/revisions/a7413ddea5d1?raw)
