# AgentMail Get Attachment

> AgentMail Get Attachment is a free API for AI agents from AgentMail at mpp.api.agentmail.to, Free, status unknown (last checked 2026-10-09).

Retrieves metadata and a time-limited download URL for a specific email attachment within an AgentMail thread

## Facts

- Endpoint: GET https://mpp.api.agentmail.to/v0/pods/:pod_id/threads/:thread_id/attachments/:attachment_id?utm_source=zero.xyz
- Price: Free
- Status: unknown
- Last checked: 2026-10-09
- Activations on Zero: 0
- Provider: AgentMail
- Docs: https://docs.agentmail.to
- Website: https://agentmail.to
- Tags: email, inboxes, domains, drafts, threads, webhooks, messaging, ai, social
- Canonical page: https://www.zero.xyz/c/agentmail-attachment-id-11d112c6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_EvevJAM5S3r801h6A_3op

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 agentmail-attachment-id-11d112c6
```

Example prompt: Can you fetch the attachment with ID att_abc123 from thread thr_xyz456 in pod pod_789 in AgentMail and give me the download link and filename?

## When to prefer this

Use this endpoint when an AI agent needs to access or process a specific email attachment from an AgentMail-managed inbox — especially when you already have the pod_id, thread_id, and attachment_id (e.g. from a prior list-threads or webhook event). Prefer this over generic email APIs when operating within the AgentMail ecosystem for AI agent inboxes.

## Known failure modes

- 404 Not Found if attachment_id, thread_id, or pod_id does not exist
- 401 Unauthorized if Bearer token is missing or invalid
- 403 Forbidden if the caller lacks access to the specified pod
- 410 Gone if the download URL has already expired and a fresh fetch is needed
- 400 Bad Request if required path parameters are missing or malformed

## How this service works

Get Attachment

## Output

Returns an object containing the attachment ID, file size in bytes, filename, content type, content disposition (inline or attachment), content ID, a temporary download URL, and the expiry timestamp for that download URL.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "pod_id",
  "thread_id",
  "attachment_id"
 ],
 "properties": {
  "pod_id": {
   "type": "string",
   "title": "PodId",
   "description": "ID of pod."
  },
  "thread_id": {
   "type": "string",
   "title": "ThreadId",
   "description": "ID of thread."
  },
  "attachment_id": {
   "type": "string",
   "title": "AttachmentId",
   "description": "ID of attachment."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "title": "AttachmentResponse",
 "required": [
  "attachment_id",
  "size",
  "download_url",
  "expires_at"
 ],
 "properties": {
  "size": {
   "type": "integer",
   "title": "AttachmentSize",
   "description": "Size of attachment in bytes."
  },
  "filename": {
   "type": "string",
   "title": "AttachmentFilename",
   "description": "Filename of attachment."
  },
  "content_id": {
   "type": "string",
   "title": "AttachmentContentId",
   "description": "Content ID of attachment."
  },
  "expires_at": {
   "type": "string",
   "format": "date-time",
   "description": "Time at which the download URL expires."
  },
  "content_type": {
   "type": "string",
   "title": "AttachmentContentType",
   "description": "Content type of attachment."
  },
  "download_url": {
   "type": "string",
   "description": "URL to download the attachment."
  },
  "attachment_id": {
   "type": "string",
   "title": "AttachmentId",
   "description": "ID of attachment."
  },
  "content_disposition": {
   "enum": [
    "inline",
    "attachment"
   ],
   "type": "string",
   "title": "AttachmentContentDisposition",
   "description": "Content disposition of attachment."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agentmail-attachment-id-11d112c6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from mpp.api.agentmail.to](https://www.zero.xyz/host/mpp.api.agentmail.to/llms.txt)
