mailbox

catch-all inbox — index, archive, blocklist, send

Inbox Sent Blocklist Compose
receivedfromsubject
senttosubject
Block
addressreasonblocked at
Send
LLM / agent navigation — how to call mailbox

CF catch-all mailbox — inbound/outbound email index, archive, blocklist, and outbound send.

Base URL: https://mail.lishuyu.app — paths below are relative to it.

methodpathauthpurpose
POST/api/ingestingest token or PAT/JWT (write)record an email (worker ingest); archives raw MIME to OSS
POST/api/notifyingest token or PAT/JWT (write)push a notification to the owner via the bus
GET/api/emailsPAT/JWT (read)list/search the index — filters: q, direction, from_addr, blocked, limit, offset
GET/api/emails/{id}PAT/JWT (read)one email + a presigned .eml download_url
GET/api/sender/{address}/historyingest token or PAT/JWT (read)recent emails from a sender + whether it is blocked
POST/api/blocklistingest token or PAT/JWT (write)block a sender (archived but silent)
GET/api/blocklistPAT/JWT (read)list blocked senders
DELETE/api/blocklist/{address}PAT/JWT (write)unblock a sender
POST/api/sendPAT/JWT (write)send an email via emailservice; archives a copy

This is a personal inbox: reads/writes need the owner's phm_jwt cookie (sign in at auth.lishuyu.app) or an admin Authorization: Bearer <PAT>. The catch-all worker writes via a dedicated MAILBOX_INGEST_TOKEN. All timestamps are UTC.

Other platform services: GET https://registry.lishuyu.app/llm.txt (public how-to), or authenticate and query GET https://registry.lishuyu.app/api/services/discover/{capability} to find a capability, then call that service directly.