Skip to content
Print and Mail Company

International Print and Mail API for Developers and Startups

Print and Mail Company offers a REST API for apps that need to send physical letters to recipients outside the US. Your code uploads a PDF, creates a draft with the recipient's address and the exact price, and sends it, paid from prepaid credit; we print the letter in Europe and mail it to the recipient's country. The same account works with our MCP server, so AI agents can send letters too.

When this API is the right fit

  • Letters to Europe: notices, contracts, invoices and account letters for customers, users or partners in Germany, France, the UK and the rest of Europe. They are mailed inside Europe and typically arrive 2–4 business days after handover in Germany, Belgium, France and the Netherlands, 3–6 in the rest of Europe.
  • Letters to other countries: recipients worldwide, typically 5–15 business days after handover.
  • Low or irregular volume: no subscription, monthly fee or setup fee; you pay per letter from prepaid credit.
  • Apps with AI agents: the same account works with our MCP server.

For US-domestic volume, a US provider is usually the better fit: our letters to US addresses also travel from Europe and typically take 5–15 business days. Delivery times are typical, not guaranteed.

How the API works

The base URL is https://printandmailcompany.com/api/v1, the OpenAPI spec is at /openapi.json, and requests are authenticated with an API key that you create in your account under API & AI assistants.

  1. Upload the PDF: POST /documents stores an A4 or US Letter PDF and returns the print check. POST /documents/{id}/fix shrinks or crops pages that fail the 9 mm margin rule. Alternatively, POST /compose turns text into a formatted A4 letter and creates the draft.
  2. Create a draft: POST /letters with the document, the recipient's address and the print options (color, double-sided, envelope, registered). It returns the exact price including VAT; nothing is charged.
  3. Send it: POST /letters/{id}/send pays the letter from your prepaid credit and releases it for printing. Without enough credit it answers 402 with the shortfall; for a US Letter PDF to a country that uses A4, it asks for paperSize (a4 or us_letter, same price).
  4. Follow it: GET /letters/{id} returns the status (paid, in production, printed, posted, cancelled or returned) and, for registered letters, the tracking number. GET /letters?status=posted lists letters by status, and POST /letters/{id}/cancel cancels a letter until production starts, with the full amount back in your credit.

Before an account's first letter is paid, it needs the sender's full name and postal address; your app can pass them once as sender.

Quotes, prices and prepaid credit

  • Quotes without a key: GET /api/v1/quote prices any letter by pages, print options and destination, for example /api/v1/quote?pages=2&country=DE&registered=true, and GET /api/v1/destinations lists the countries.
  • The exact price on every draft, including VAT. A 1-page black & white letter to Germany or France costs US$4.51; registered mail adds US$12.31 (excl. VAT).
  • Prepaid credit: top up by card in your account (minimum CHF 10.00 / €10.00 / £10.00 / US$10.00); GET /balance shows what is left. Cards issued outside the EEA, including US cards, carry a surcharge, shown before you pay.
  • Account currency: USD, EUR, GBP or CHF, chosen at sign-up. Prices are set in EUR and converted at the ECB reference rate plus a 12% currency margin.
  • No subscription, monthly fee or setup fee, and an invoice for every letter and every payment in your account.

The full tariff is on the pricing page.

MCP server for AI agents

Our MCP server at https://printandmailcompany.com/mcp gives AI agents the same functions: Claude, ChatGPT, Cursor or your own agent can quote prices, check PDFs, write a letter with compose_letter, create a draft with create_letter and send it with send_letter.

  • Sign-in: OAuth 2.1 with PKCE, or an API key.
  • Approval: send_letter requires the user's explicit confirmation, and payment comes only from prepaid credit; if the credit is too low, the agent gets a top-up link for the user.
  • Status: get_letter and list_letters report the status and tracking numbers.

Setup instructions are on the AI assistants page; see also send letters with AI.

What gets printed and mailed

  • Documents: PDF, A4 or US Letter, up to 250 pages and 4 MB, with 9 mm free on every side. We print on the size you upload; to the US, Canada and US territories, US Letter PDFs are printed on US Letter.
  • Print options: black & white or color, single- or double-sided; DL, C5 or C4 envelopes, with the smallest suitable one chosen automatically.
  • Address: printed directly on the envelope in the destination's postal format, so your templates need no address window. Our company address is the return address, and a letter that comes back shows the status "returned".
  • Registered mail: international registered mail with a tracking number and signature on delivery, not US Certified Mail.
  • Production: letters paid by 12:00 Central European Time on a business day are usually printed and mailed the same business day.
  • Data: hosted in the EU; uploaded files are deleted 30 days after posting; a Data Processing Agreement is available on request.

We print only what is in the PDF, so there are no inserts, checks or goods, and each letter has its own PDF and recipient.

Send a letter now

Questions about this

Is there an API to send letters to Europe from the US?

Yes. The REST API at https://printandmailcompany.com/api/v1 (OpenAPI spec at /openapi.json) uploads a PDF, creates a draft with the exact price and sends it from prepaid credit. We print the letter in Europe and mail it there; typical delivery after handover is 2–4 business days to Germany, Belgium, France and the Netherlands (not guaranteed).

Is this API a good choice for US-domestic mail?

Usually not. Letters to US addresses also travel from Europe and typically take 5–15 business days after handover, so for US-domestic volume a US provider is usually the better fit. Our API suits letters to Europe and other countries.

How do I know the price before sending?

GET /api/v1/quote returns the price for any number of pages, print options and destination without an API key, and every draft created with POST /letters shows the exact price including VAT before anything is charged.

How do I follow letters sent through the API?

GET /letters/{id} returns the status and, for registered letters, the tracking number; GET /letters can filter by status. Standard letters have no tracking number. Each paid letter is also confirmed by email to the account.

Can AI agents use the same account?

Yes. Connect them to our MCP server at https://printandmailcompany.com/mcp with OAuth or an API key. They can create drafts with the exact price, and send_letter sends only after the user's explicit confirmation, paid from prepaid credit.

Other use cases