Postmark
Connect Postmark to send transactional and bulk email, manage templates, track deliveries, bounces and opens, and handle suppressions and domains.
You paste one Postmark API token: the Account API token to connect any of your servers (you pick them next), or one server's Server API token to connect just that server. Postmark tokens don't expire.
Developer account approval before this connector works
Postmark staff review every new account by hand before it can send to the outside world. The token connects and every read works straight away, but until the account is approved Postmark only delivers to addresses on the domains you have added and verified.
- Typical wait
- Usually under 24 hours on weekdays, a little longer at weekends, per Postmark's own support article
- Cost
- Postmark lists no charge for the review itself. Email volume is billed on your Postmark plan as usual.
- Blocked until approved
- Sending to any address outside your own verified domains. Such sends fail with ErrorCode 412, which says every recipient must share the From address's domain while the account is pending; an account Postmark has not approved to send gets ErrorCode 413.
- Works meanwhile
- Connecting the token, picking servers, and every read and setup tool: messages, bounces, stats, templates, message streams, webhooks and suppressions. Test sends to addresses on your own verified domain also work.
Where to apply: Only the Account Owner can submit the request, using the approval option Postmark shows inside the account. If you think a denial was a mistake, email support@postmarkapp.com with examples of the email you plan to send.
- Postmark reviews whether the account will send mail that could hurt its sending reputation, so describe the transactional or broadcast email you really plan to send.
- Broadcasts through send_bulk_email need a second, separate approval for the Bulk API; until Postmark support enables it, those sends fail with ErrorCode 14.
- Approval doesn't lift existing suppressions: an address deactivated by a spam complaint can only be reactivated by Postmark support.
- Setup time
- 3 min
- Auth
- API credentials
- API base URL
- https://api.postmarkapp.com
- Rate limits
- Postmark publishes no numeric request limit; traffic beyond acceptable use gets HTTP 429 and should slow down. Per request, a message takes at most 50 recipients and a batch call at most 500 messages.
Before you begin
- A Postmark account with at least one server
- The Account Owner or Account Admin role to see the Account API token. Server Admins can only see Server API tokens for their own servers.
- A confirmed sender signature or a verified domain to send from
- An approved account if the AI will email people outside your own verified domains. Postmark reviews new accounts by hand, usually in under 24 hours on weekdays.
Get your credentials
Open API Tokens in your account
Sign in at account.postmarkapp.com as the Account Owner or an Account Admin. In the Account section, open API Tokens and copy the Account API token. This one token lets you connect any of your servers.
API Tokens
The Account API token is used for account-level requests: servers, domains and sender signatures.
Postmark tokens are bare UUIDs, so the account token and a server token look alike. PopMCP works out which one you pasted.
Or copy one server's Server API token
To connect a single server only, open Servers, choose the server and click its API Tokens tab. A server can hold up to 3 tokens; copy any one of them. With a server token, the account-level tools (servers, domains, sender signatures, template push, data removals) stay unavailable.
Acme Transactional
Live server
| Server API token | Created |
|---|---|
| 7b2d****-****-****-****-********41fcUsed by the production app | Jan 8, 2026 |
| e09a****-****-****-****-********5d13Spare | Aug 21, 2026 |
Account Owners and Admins see every server's tokens. Server Admins see only the servers they are assigned to.
Confirm a sender you can send from
Open Sender Signatures or Domains and check that the address or domain the AI should send from is confirmed or verified. Note one address if you want it as the default From.
Sender Signatures
Addresses and domains Postmark lets you send from.
| From address or domain | Type | Status |
|---|---|---|
| hello@acme.exampleAcme Support | Sender signature | Confirmed |
| acme.exampleDKIM and Return-Path | Domain | Verified |
| billing@acme.exampleAcme Billing | Sender signature | Pending |
Postmark refuses a send whose From address is neither a confirmed signature nor on a verified domain.
Request account approval if Postmark asks for it
A new account is reviewed by Postmark staff before it can send to anyone outside your own verified domains. If your account shows it is pending approval, the Account Owner can request approval from inside the account. Reading, templates and test sends to your own domain work meanwhile.
Servers
Each server has its own message streams, templates and API tokens.
| Server | Delivery | Sent this month |
|---|---|---|
| Acme TransactionalID 1234567 | Live | 1,204 |
| Acme StagingID 1234568 | Sandbox | 88 |
Only the Account Owner can submit the approval request.
Paste the token into PopMCP
Paste the token into Postmark API token. Optionally fill Default From address (optional) with a confirmed sender, used when the AI sends without naming one. With the Account API token, PopMCP lists your servers next: pick each server and the workspace it belongs in.
Connect in PopMCP
Open your workspace, choose Postmark in the marketplace, and fill in the connect dialog:
| Field | What to enter |
|---|---|
| Postmark API tokensecret | Best: your Account API token, from Postmark → Account → API Tokens (only the account owner and admins can see it). It connects any of your servers and adds domains, sender signatures and server management. Or paste one server's Server API token, from Postmark → Servers → your server → API Tokens, to connect just that server. We detect which kind you pasted. Stored encrypted, used server-side only.Encrypted with AES-256-GCM on save and never shown again. |
| Default From address (optional)text | Used when your AI sends an email without saying who it's from. Must be a confirmed sender signature or an address on a verified domain in Postmark. |
PopMCP verifies the credential against Postmark immediately. On success the connection flips to Verified and its MCP tools are provisioned.
Verify it worked
PopMCP shows Postmark as Verified under the server's name, one connection per server you picked. Ask how many emails bounced this week: postmark_get_bounce_counts or postmark_list_bounces answers from that server instead of an ErrorCode 10 token error.
Troubleshooting
"Postmark didn't accept that token as a Server API token or as an Account API token"
Why: The token was copied incompletely, or it was removed from the server or account.
Fix: Copy it again from Account, API Tokens (account token) or Servers, your server, API Tokens (server token) and paste it on its own, with no header name or quotes.
"POSTMARK_API_TEST is Postmark's shared test token"
Why: The sample token from Postmark's docs was pasted.
Fix: Paste your server's own Server API token or the Account API token.
A tool for servers, domains or sender signatures says it needs an Account API token
Why: The connection was made with a Server API token, which Postmark doesn't accept on account-level endpoints (ErrorCode 10).
Fix: Reconnect with the Account API token. Every server-level tool keeps working meanwhile.
Sends fail with ErrorCode 412: recipients must share the domain of the From address
Why: The account is still pending Postmark's manual approval.
Fix: Have the Account Owner request approval in Postmark. Until then, send only to addresses on your own verified domains.
Sends fail because the From address isn't a confirmed sender
Why: The From address (or the Default From address) is not a confirmed sender signature and not on a verified domain.
Fix: Confirm the signature or verify the domain in Postmark, or change the Default From address to one that is confirmed.
ErrorCode 406: inactive recipient
Why: Postmark deactivated the address after a hard bounce, a spam complaint or an unsubscribe.
Fix: Ask the AI to run postmark_diagnose_delivery. A bounce can be reactivated with postmark_activate_bounce when its CanActivate is true; spam-complaint suppressions can only be lifted by Postmark support.
ErrorCode 14 on send_bulk_email, or 614 on a stats tool
Why: The Bulk API needs separate approval from Postmark, and the stats API is only included on some Postmark plans.
Fix: Contact Postmark support to enable bulk sending, use postmark_send_email_batch for transactional sends, or upgrade the plan for stats.