---
title: "Search captured mail and PEC (module status)"
method: GET
path: "/api/v1/rest/email/status"
tags: ["Email & PEC"]
---

# Search captured mail and PEC (module status)

`GET /api/v1/rest/email/status`

## Request

- Base URL: `https://api.custodo.ai`
- URL: `https://api.custodo.ai/api/v1/rest/email/status`
- Auth: HTTP bearer

Polling snapshot: the same current record or collection as the corresponding read endpoint, including its state and progress. List filters, defaults and pagination also apply here. This is not an event history or a changes-since feed. Poll at a sensible interval (start with 30 seconds), respect Retry-After on 429 and stop when the required terminal state is reached.

Find archived messages across the mailboxes this member may see. Filters on free text (subject, sender, snippet), direction, mailbox, PEC type and a date window. Returns summaries — subject, sender, date, whether it has attachments — never the bodies; use email_get for one message. At most 100 per call.

**Examples**

- Any PEC from the Agenzia delle Entrate this month?
  `GET /api/v1/rest/email/status?query=agenziaentrate&pec_only=true`
- Unread mail with attachments
  `GET /api/v1/rest/email/status?unread_only=true&has_attachments=true`

## Query parameters

- `query` string
- `account_id` string, uuid
- `direction` 'inbound' | 'outbound'
- `pec_only` boolean
- `unread_only` boolean
- `has_attachments` boolean
- `from` string
- `to` string
- `limit` integer
- `cursor` string

## Headers

- `X-Tenant-Id` string, uuid

## Response `200`

Done. `data` is the tool’s own answer.

- RestResult
  - `ok` true, required
  - `data` unknown, required

## Other responses

- `400`: The arguments did not validate: `error.message` names the field, what it expects and what arrived.
- `401`: No API key, or one that is malformed, unknown, revoked or expired.
- `403`: The call never ran: the module is off for this organisation, the credential lacks the permission or the module, the tier does not cover it, or the tool is destructive and the key was not minted for that.
- `422`: The tool ran and refused, in a sentence of its own (`TOOL_REFUSED`): the message says what to change. Retrying the same call will not help.
- `429`: The API key has spent its minute, or its day. Every request a key makes counts. See `Retry-After`.

---

[API](https://skmtc.dev/custodo/apis/custodo-integrazioni.md) · [All operations](https://skmtc.dev/custodo/apis/custodo-integrazioni/llms.txt) · [OpenAPI document](https://skmtc.dev/custodo/apis/custodo-integrazioni/revisions/16d336d3ec2a?raw)
