# PayWeave Mail – Fetch Single Message

> PayWeave Mail – Fetch Single Message is a paid API for AI agents from mail.payweave.services, paid per call via x402, $0.001/call, status unknown (last checked 2026-09-13).

Retrieve a specific email message by ID from a disposable PayWeave Mail inbox

## Facts

- Endpoint: GET https://mail.payweave.services/inboxes/%7Bslug%7D/messages/%7Bid%7D
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/payweave-mail-fetch-single-message-51f7c12b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_6SmrK0ISp4WwjW_WKkpOB

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability payweave-mail-fetch-single-message-51f7c12b
```

Example prompt: Fetch the full content of message abc123 from my PayWeave Mail inbox 'agent-xyz' — I want to see the subject, body, and any attachment download links.

## When to prefer this

Use this endpoint when you already know both the inbox slug and the specific message ID and need the full message content including body and attachments. Prefer this over listing endpoints when you have a direct reference to a message and need its complete data in a single call.

## Known failure modes

- Message ID not found in the specified inbox — returns 404
- Inbox slug does not exist — returns 404
- Payment not made or payment header missing — returns 402 Payment Required
- Invalid or malformed message ID format — returns 400
- Attachment download URLs expire after 1 hour and become invalid

## How this service works

Disposable email inboxes for agents — create, receive, read, and send. Pay per call.

## Output

Returns a JSON object with the full email message including: unique ID, inbox slug, received_at timestamp, message_id header, from address, to array, cc array, subject, plain-text body, HTML body, all raw headers, and an array of attachments each with filename, content_type, size, and a short-lived (1-hour) signed download URL.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "anyOf": [
      {
       "not": {}
      },
      {
       "type": "object",
       "properties": {},
       "additionalProperties": false
      }
     ]
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "type": "string",
     "const": "GET"
    },
    "bodyType": {
     "type": "string",
     "const": "json"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "example"
   ],
   "properties": {
    "example": {
     "type": "object",
     "required": [
      "id",
      "slug",
      "received_at",
      "message_id",
      "from",
      "from_name",
      "to",
      "cc",
      "subject",
      "date",
      "text",
      "html",
      "headers",
      "attachments"
     ],
     "properties": {
      "cc": {
       "type": "array",
       "items": {
        "type": "string"
       }
      },
      "id": {
       "type": "string"
      },
      "to": {
       "type": "array",
       "items": {
        "type": "string"
       }
      },
      "date": {
       "type": [
        "string",
        "null"
       ]
      },
      "from": {
       "type": [
        "string",
        "null"
       ]
      },
      "html": {
       "type": [
        "string",
        "null"
       ]
      },
      "slug": {
       "type": "string"
      },
      "text": {
       "type": [
        "string",
        "null"
       ]
      },
      "headers": {
       "type": "object",
       "additionalProperties": {
        "type": "string"
       }
      },
      "subject": {
       "type": [
        "string",
        "null"
       ]
      },
      "from_name": {
       "type": [
        "string",
        "null"
       ],
       "description": "Sender's display name from the From header (e.g. \"Acme Support\" in `Acme Support <bot@acme.com>`). Null when the header carries a bare address."
      },
      "message_id": {
       "type": [
        "string",
        "null"
       ]
      },
      "attachments": {
       "type": "array",
       "items": {
        "type": "object",
        "required": [
         "filename",
         "content_type",
         "size",
         "url"
        ],
        "properties": {
        
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/payweave-mail-fetch-single-message-51f7c12b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from mail.payweave.services](https://www.zero.xyz/host/mail.payweave.services/llms.txt)
