canonical: https://jentic.com/apis/cooperemail.com/cooperemail

# Cooper Email API

The Cooper Email API creates email inboxes and sends and receives mail over HTTP, so an agent can own a working mailbox without an SMTP or IMAP setup. It lists and full-text searches the messages in an inbox, replies, replies-all, and forwards on a thread, and manages drafts including scheduled sends. A wait operation holds until unread mail arrives, and a webhook can push message.received events to a URL. Inboxes can be permanent or temporary, created one at a time or in batches, and each send can be made idempotent with a client_id or an Idempotency-Key header.

## For AI agents

Create email inboxes and send, receive, search, reply to, and forward mail over HTTP. Supports scheduled drafts, a wait-for-mail operation, and message.received webhooks.

## Scope

Does not handle SMS, push notifications, or marketing campaign management. Use for programmatic email inboxes, sending, and receiving only.

## Capabilities

- Create permanent or temporary email inboxes, one at a time or in batches
- Send mail with text, HTML, and attachments from an inbox
- List and full-text search the messages in an inbox
- Reply, reply-all, and forward on an existing thread
- Hold with a wait operation until unread mail arrives
- Register a message.received webhook for new inbound mail

## Use cases

### Agent-owned mailbox

An AI agent connected through Jentic creates its own inbox, sends mail, and reads replies entirely over HTTP, with no SMTP or IMAP client. It can make each send idempotent with a client_id or an Idempotency-Key header so a retry does not send twice.

Example prompt: Create an inbox, send a message with a subject and body, and list the inbox messages to confirm it was sent

### Signup and verification capture

A test or onboarding flow spins up a temporary inbox, triggers a signup, and uses the wait operation to hold until the verification email arrives, then full-text searches the inbox for the confirmation link. Temporary inboxes can be given a ttl so they clean themselves up.

Example prompt: Create a temporary inbox, wait for unread mail, then search the inbox for the verification message and return its body

### Thread-aware mail handling

A support or assistant workflow lists new messages, replies on the same thread with replyToMessage, and forwards items that need another recipient. Allow and block lists are checked before sending, so a blocked recipient returns an error instead of delivering.

Example prompt: List the newest messages in an inbox and reply on the thread of the most recent one

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/api/v1/inboxes` | Create an inbox |
| GET | `/api/v1/inboxes` | List inboxes |
| GET | `/api/v1/inboxes/{id}/messages` | List messages in an inbox |
| POST | `/api/v1/inboxes/{id}/messages` | Send a message from an inbox |
| GET | `/api/v1/inboxes/{id}/messages/search` | Full-text search messages in an inbox |
| POST | `/api/v1/inboxes/{id}/messages/{msgId}/reply` | Reply on the same thread |
| GET | `/api/v1/inboxes/{id}/wait` | Wait until unread mail arrives |

## Key resources

- **Inboxes** — Create, list, read, update, and delete inboxes, singly or in batches
- **Messages** — List, search, send, reply, reply-all, and forward messages in an inbox
- **Drafts** — Create, update, and send drafts, including scheduled sends
- **Wait** — Hold until unread mail is stored in an inbox
- **Webhooks** — Register a message.received webhook for an inbox

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 55 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 63 / 100
  - Developer Experience & Jentic Compatibility: 52 / 100
  - AI-Readiness & Agent Experience: 43 / 100
  - Agent Usability: 73 / 100
  - Security: 60 / 100
  - AI Discoverability: 60 / 100
- **View full report:** https://jentic.com/apis/cooperemail.com/cooperemail/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring the Cooper Email API by hand means issuing a bearer key, learning the inbox-scoped path layout, and wiring idempotency and the message.received webhook yourself. Through Jentic you install once, import Cooper Email from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Cooper Email puts the inbox id in the URL path (`/api/v1/inboxes/{id}/...`), so a rule can pin your agent to one inbox. You choose the operations it may call, so destructive ones like deleting an inbox are not included unless you add them.
- **Credential handling:** Your Cooper Email key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'send an email' or 'wait for a verification message', and Jentic returns the matching Cooper Email operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Resend** — Resend focuses on transactional email sending, where Cooper Email also creates inboxes and receives mail.
- **Postmark** — Postmark sends and parses transactional email with strong deliverability tooling.
- **Mailtrap** — Mailtrap provides sandbox inboxes for testing email, alongside Cooper Email's live inboxes.

## FAQ

### What authentication does the Cooper Email API use?

The Cooper Email API authenticates with a bearer API key in the Authorization header, per its OpenAPI spec, and a few endpoints such as the public username check are open. Through Jentic the key is stored once by your own self-hosted instance and injected when a call runs, so it never appears in the agent's prompt or logs.

### Can I receive inbound email with the Cooper Email API?

Yes. Read inbound mail by listing or searching the messages in an inbox, use the wait operation to hold until unread mail arrives, or register a message.received webhook so new mail is pushed to your URL. You can then reply or forward on the same thread.

### Can I limit what my agent is allowed to do with the Cooper Email API?

Yes. Cooper Email puts the inbox id in the URL path, so a rule can pin your agent to one inbox and the send and read operations you choose, so it cannot delete inboxes or touch other mailboxes on the account, and every call it makes is logged.

### What are the rate limits for the Cooper Email API?

The spec notes specific limits on some operations, such as the wait operation allowing at most five concurrent waits per key before returning a rate-limited response. Check the Cooper Email documentation for the current per-plan sending and request limits before high-volume use.

### Is there a Cooper Email MCP server?

You don't need an MCP server to give your agent the Cooper Email API. Jentic connects it directly from the API Directory: import it, store your key once, and your agent calls the inbox and message operations on demand without loading another server's tool definitions into its context.

### How do I send an email with the Cooper Email API through Jentic?

Search Jentic by intent such as 'send an email from an inbox', and Jentic returns the sendMessage operation with its input schema so your agent fills in the inbox, recipient, and body. To run it on your own infrastructure, install Jentic One from its GitHub repo.
