> ## Documentation Index
> Fetch the complete documentation index at: https://agentmail.manicule.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For every page in one file, fetch https://agentmail.manicule.dev/llms-full.txt (large).
> To search and read these docs as tools, connect the MCP server at https://agentmail.manicule.dev/api/mcp.
> Every agent surface: https://agentmail.manicule.dev/.well-known/llms-manifest.json

# List Messages (/api-reference/list-messages)

<!-- agent-signals: reading_time_min: 5 · est_tokens: 3631 · updated: 2026-09-29 -->
Related: [Sign Up](/api-reference/sign-up.md), [Attach Human](/api-reference/attach-human.md), [Verify](/api-reference/verify.md), [List Inboxes](/api-reference/list-inboxes.md), [Create Inbox](/api-reference/create-inbox.md), [Search Inboxes](/api-reference/search-inboxes.md)

# List Messages

`GET /v0/inboxes/{inbox_id}/messages`

> Lists messages in the inbox, most recent first. Pass `from`, `to`, or
> `subject` to filter by substring. Filtered requests are served by
> search, which caps `limit` at 100. For relevance-ranked full-text
> search across sender, recipients, subject, and message body, use
> `Search Messages`.
>
> **CLI:**
> ```bash
> agentmail inboxes messages list --inbox-id <inbox_id>
> ```

Base URL: `https://api.agentmail.to`

Base URL: `https://x402.api.agentmail.to`

Base URL: `https://mpp.api.agentmail.to`

Base URL: `https://api.agentmail.eu`

## OpenAPI

```json
{
  "servers": [
    {
      "url": "https://api.agentmail.to",
      "description": "prod"
    },
    {
      "url": "https://x402.api.agentmail.to",
      "description": "prod-x402"
    },
    {
      "url": "https://mpp.api.agentmail.to",
      "description": "prod-mpp"
    },
    {
      "url": "https://api.agentmail.eu",
      "description": "eu-prod"
    }
  ],
  "security": [
    {
      "Bearer": []
    }
  ],
  "securitySchemes": {
    "Bearer": {
      "type": "http",
      "scheme": "bearer"
    }
  },
  "parameters": [
    {
      "name": "inbox_id",
      "in": "path",
      "required": true,
      "schema": {
        "type": "string",
        "description": "The ID of the inbox.",
        "title": "InboxId"
      }
    },
    {
      "name": "limit",
      "in": "query",
      "required": false,
      "schema": {
        "type": "integer",
        "description": "Limit of number of items returned.",
        "title": "Limit"
      }
    },
    {
      "name": "page_token",
      "in": "query",
      "required": false,
      "schema": {
        "type": "string",
        "description": "Page token for pagination.",
        "title": "PageToken"
      }
    },
    {
      "name": "labels",
      "in": "query",
      "required": false,
      "schema": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Labels to filter by.",
        "title": "Labels"
      }
    },
    {
      "name": "before",
      "in": "query",
      "required": false,
      "schema": {
        "type": "string",
        "format": "date-time",
        "description": "Timestamp before which to filter by.",
        "title": "Before"
      }
    },
    {
      "name": "after",
      "in": "query",
      "required": false,
      "schema": {
        "type": "string",
        "format": "date-time",
        "description": "Timestamp after which to filter by.",
        "title": "After"
      }
    },
    {
      "name": "ascending",
      "in": "query",
      "required": false,
      "schema": {
        "type": "boolean",
        "description": "Sort in ascending temporal order.",
        "title": "Ascending"
      }
    },
    {
      "name": "include_spam",
      "in": "query",
      "required": false,
      "schema": {
        "type": "boolean",
        "description": "Include spam in results.",
        "title": "IncludeSpam"
      }
    },
    {
      "name": "include_blocked",
      "in": "query",
      "required": false,
      "schema": {
        "type": "boolean",
        "description": "Include blocked in results.",
        "title": "IncludeBlocked"
      }
    },
    {
      "name": "include_unauthenticated",
      "in": "query",
      "required": false,
      "schema": {
        "type": "boolean",
        "description": "Include unauthenticated in results.",
        "title": "IncludeUnauthenticated"
      }
    },
    {
      "name": "include_trash",
      "in": "query",
      "required": false,
      "schema": {
        "type": "boolean",
        "description": "Include trash in results.",
        "title": "IncludeTrash"
      }
    },
    {
      "name": "from",
      "in": "query",
      "description": "Filter to messages whose sender contains this value (substring match). Repeatable; all values must match.",
      "required": false,
      "schema": {
        "type": "array",
        "items": {
          "type": "string"
        }
      }
    },
    {
      "name": "to",
      "in": "query",
      "description": "Filter to messages whose recipients (to, cc, or bcc) contain this value (substring match). Repeatable; all values must match.",
      "required": false,
      "schema": {
        "type": "array",
        "items": {
          "type": "string"
        }
      }
    },
    {
      "name": "subject",
      "in": "query",
      "description": "Filter to messages whose subject contains this value (substring match). Repeatable; all values must match.",
      "required": false,
      "schema": {
        "type": "array",
        "items": {
          "type": "string"
        }
      }
    }
  ],
  "responses": {
    "200": {
      "description": "Response with status 200",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "count": {
                "type": "integer",
                "description": "Number of items returned.",
                "title": "Count"
              },
              "limit": {
                "type": "integer",
                "description": "Limit of number of items returned.",
                "title": "Limit"
              },
              "next_page_token": {
                "type": "string",
                "description": "Page token for pagination.",
                "title": "PageToken"
              },
              "messages": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "inbox_id": {
                      "type": "string",
                      "description": "The ID of the inbox.",
                      "title": "InboxId"
                    },
                    "thread_id": {
                      "type": "string",
                      "description": "ID of thread.",
                      "title": "ThreadId"
                    },
                    "message_id": {
                      "type": "string",
                      "description": "ID of message.",
                      "title": "MessageId"
                    },
                    "labels": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Labels of message.",
                      "title": "MessageLabels"
                    },
                    "timestamp": {
                      "type": "string",
                      "format": "date-time",
                      "description": "Time at which message was sent or drafted.",
                      "title": "MessageTimestamp"
                    },
                    "from": {
                      "type": "string",
                      "description": "Address of sender. In format `username@domain.com` or `Display Name <username@domain.com>`.",
                      "title": "MessageFrom"
                    },
                    "to": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Addresses of recipients. In format `username@domain.com` or `Display Name <username@domain.com>`.",
                      "title": "MessageTo"
                    },
                    "cc": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Addresses of CC recipients. In format `username@domain.com` or `Display Name <username@domain.com>`.",
                      "title": "MessageCc"
                    },
                    "bcc": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Addresses of BCC recipients. In format `username@domain.com` or `Display Name <username@domain.com>`.",
                      "title": "MessageBcc"
                    },
                    "subject": {
                      "type": "string",
                      "description": "Subject of message.",
                      "title": "MessageSubject"
                    },
                    "preview": {
                      "type": "string",
                      "description": "Text preview of message.",
                      "title": "MessagePreview"
                    },
                    "attachments": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "attachment_id": {
                            "type": "string",
                            "description": "ID of attachment.",
                            "title": "AttachmentId"
                          },
                          "filename": {
                            "type": "string",
                            "description": "Filename of attachment.",
                            "title": "AttachmentFilename"
                          },
                          "size": {
                            "type": "integer",
                            "description": "Size of attachment in bytes.",
                            "title": "AttachmentSize"
                          },
                          "content_type": {
                            "type": "string",
                            "description": "Content type of attachment.",
                            "title": "AttachmentContentType"
                          },
                          "content_disposition": {
                            "type": "string",
                            "enum": [
                              "inline",
                              "attachment"
                            ],
                            "description": "Content disposition of attachment.",
                            "title": "AttachmentContentDisposition"
                          },
                          "content_id": {
                            "type": "string",
                            "description": "Content ID of attachment.",
                            "title": "AttachmentContentId"
                          }
                        },
                        "required": [
                          "attachment_id",
                          "size"
                        ],
                        "title": "Attachment"
                      },
                      "description": "Attachments in message.",
                      "title": "MessageAttachments"
                    },
                    "in_reply_to": {
                      "type": "string",
                      "description": "ID of message being replied to.",
                      "title": "MessageInReplyTo"
                    },
                    "references": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "IDs of previous messages in thread.",
                      "title": "MessageReferences"
                    },
                    "headers": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      },
                      "description": "Headers in message.",
                      "title": "MessageHeaders"
                    },
                    "size": {
                      "type": "integer",
                      "description": "Size of message in bytes.",
                      "title": "MessageSize"
                    },
                    "updated_at": {
                      "type": "string",
                      "format": "date-time",
                      "description": "Time at which message was last updated.",
                      "title": "MessageUpdatedAt"
                    },
                    "created_at": {
                      "type": "string",
                      "format": "date-time",
                      "description": "Time at which message was created.",
                      "title": "MessageCreatedAt"
                    }
                  },
                  "required": [
                    "inbox_id",
                    "thread_id",
                    "message_id",
                    "labels",
                    "timestamp",
                    "from",
                    "to",
                    "size",
                    "updated_at",
                    "created_at"
                  ],
                  "title": "MessageItem"
                },
                "description": "Ordered by `timestamp` descending."
              }
            },
            "required": [
              "count",
              "messages"
            ],
            "title": "ListMessagesResponse"
          }
        }
      }
    },
    "404": {
      "description": "Error response with status 404",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "Name of error.",
                "title": "ErrorName"
              },
              "code": {
                "type": "string",
                "description": "Stable, machine-readable error code in snake_case (for example, not_found or missing_permission). Branch on this rather than the message text.",
                "title": "ErrorCode"
              },
              "message": {
                "type": "string",
                "description": "Error message.",
                "title": "ErrorMessage"
              },
              "fix": {
                "type": "string",
                "description": "The concrete next action that resolves the error.",
                "title": "ErrorFix"
              },
              "docs": {
                "type": "string",
                "description": "Link to the error reference entry for this code.",
                "title": "ErrorDocs"
              }
            },
            "required": [
              "name",
              "message"
            ],
            "title": "ErrorResponse"
          }
        }
      }
    }
  }
}
```
