---
title: "Read a Gmail message with its plain-text body as the calling member"
method: GET
path: "/v1/capabilities/google-workspace/gmail-message/{messageId}"
tags: ["Capability Sources"]
---

# Read a Gmail message with its plain-text body as the calling member

`GET /v1/capabilities/google-workspace/gmail-message/{messageId}`

Reads one Gmail message, including decoded plain-text body content and attachment metadata, using the calling member's connected Google Workspace account. To download an attachment's bytes, pass its attachmentId to the gmail-attachment capability.

## Path parameters

- `messageId` string, required

## Response `200`

Gmail message returned.

- GoogleWorkspaceGmailMessageResponse
  - `ok` true, required
  - `message` GoogleWorkspaceGmailMessage, required
    - `id` string, required
    - `threadId` string, required
    - `from` string, required
    - `to` string, required
    - `bcc` string, required
    - `subject` string, required
    - `date` string, required
    - `snippet` string, required
    - `body` string, required
    - `attachments` GoogleWorkspaceGmailAttachment[], required
      - `attachmentId` string, required
      - `filename` string, required
      - `mimeType` string, required
      - `size` number, nullable, required

## Other responses

- `401` — The caller must be signed in.
- `409` — The calling member has not connected their Google account or is missing permission.
- `502` — Google rejected the request.

---

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