---
title: "Get a mailbox message"
method: GET
path: "/mailboxes/{mailboxId}/messages/{messageId}"
tags: ["Mailbox Messages"]
---

# Get a mailbox message

`GET /mailboxes/{mailboxId}/messages/{messageId}`

## Request

- Base URL: `https://api.mobilerun.ai`
- URL: `https://api.mobilerun.ai/mailboxes/{mailboxId}/messages/{messageId}`
- Auth: HTTP bearer

## Path parameters

- `mailboxId` string, uuid, required
- `messageId` string, required

## Query parameters

- `includeHtml` 'true' | 'false': Return the raw HTML part as htmlBody (untrusted; render isolated).

## Response `200`

Message retrieved

- object
  - `data` MailboxMessage, required
    - `id` string, required
    - `mailboxId` string, uuid, required
    - `fromAddress` string, nullable, required
    - `fromName` string, nullable, required
    - `subject` string, nullable, required
    - `textBody` string, nullable, required
    - `htmlBody` string, nullable: Raw HTML part as received. Present only with includeHtml=true; null when the mail has no HTML part or it exceeds 1 MiB (UTF-8 bytes). Untrusted content: render only in an isolated sandboxed frame, never inline.
    - `hasOtp` boolean, required
    - `attachmentCount` integer, required
    - `attachments` MailboxAttachmentMeta[], required
      - `name` string, nullable, required
      - `contentType` string, nullable, required
      - `size` integer, required
    - `receivedAt` string, date-time, required

## Other responses

- `400`: The mailbox backend rejected the request
- `401`: Unauthorized
- `404`: Not Found
- `409`: Gmail connection is pending, expired, removed, or the message is too large
- `429`: Mailbox backend rate limited
- `500`: Internal Server Error
- `502`: Mailbox backend unavailable
- `503`: Mailboxes disabled

## Changes

- **2026-10-30** `b076f12fb544`: 2 info
  - added the new optional `query` request parameter `includeHtml`
  - added the optional property `data/htmlBody` to the response with the `200` status
- **2026-10-21** `559a12449213`: 16 warning
  - added the new `integration_forbidden` enum value to the `anyOf[#/components/schemas/MailboxApiErrorEnvelope]/code` response property for the response status `400`
  - added the new `integration_forbidden` enum value to the `anyOf[#/components/schemas/MailboxApiErrorEnvelope]/code` response property for the response status `429`
  - added the new `integration_forbidden` enum value to the `anyOf[#/components/schemas/MailboxApiErrorEnvelope]/code` response property for the response status `502`
  - added the new `integration_forbidden` enum value to the `anyOf[#/components/schemas/MailboxErrorBody]/code` response property for the response status `400`
  - …12 more
- **2026-10-16** `4ad548c528a8`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/droidrun/apis/droidrun-cloud/changes/mailboxes/:mailboxId/messages/:messageId/get.md)

---

[API](https://skmtc.dev/droidrun/apis/droidrun-cloud.md) - [All operations](https://skmtc.dev/droidrun/apis/droidrun-cloud/llms.txt) - [OpenAPI document](https://skmtc.dev/droidrun/apis/droidrun-cloud/revisions/1cc95586c933?raw)
