Print API - Send Print Jobs to Any Printer With One HTTP Request
A REST API that prints text, PDFs and Shopify labels on your team’s own printers. One POST, a bearer key, printing in seconds. Built for forms, back offices and AI agents.
curl -X POST https://autoprint.email/api/v1/print-jobs \
-H "Authorization: Bearer ape_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"type":"document","title":"Order 1042","text":"2x Flat white\n1x Croissant","reference":"order-1042"}'That returns 202 with a job id. The computer that owns the printer picks the job up within about 30 seconds and prints it. Send pdfUrl or pdfBase64 instead of text for a PDF.
Printers are named, not addressed
Each computer running the desktop app exposes named printers to the API. Your code sends a target id, never an OS printer name, so hardware changes never reach your code.
Keys belong to the team
A key created in the team dashboard can print on any of the team's computers. Revoke it and every caller stops. Keys are hashed at rest and shown once.
Idempotent by reference
Pass your own id as reference. Retries return the original job instead of printing again, so a flaky network never means two receipts.
Form and no-code builders
Order forms, booking tools and internal apps that need a ticket on paper the moment a submission lands. Zapier and Make call the same API.
Back-office systems
An ERP, POS or custom app that prints pick lists, delivery notes or labels at a specific station, without a print server.
AI agents
The same API behind our MCP server, so Claude, ChatGPT or your own agent can print on request.
POST /api/v1/print-jobs: queue a document (text, PDF URL or base64) or a Shopify label batch.GET /api/v1/print-jobs/:id: pending, ready, printing, printed or failed.GET /api/v1/me: the team, its print stations and their printers.
Full field reference, limits and error codes: the API guide.
Frequently Asked Questions
Only the AutoPrintEmail desktop app on the computer that prints, the same app email customers use. It polls for jobs, so no inbound ports and no firewall changes.
Plain text (rendered to an A4 page with an optional heading), a PDF by public https URL, or a PDF as base64, up to 10 MB. Shopify stores can also send label batches by variant id.
Poll GET /api/v1/print-jobs/:id. The desktop app reports printed or failed with the reason. Webhooks back to your server are not available yet.
Text up to 100,000 characters, PDFs up to 10 MB, 20 named printers per computer. There is no per-call rate limit today beyond those sizes; printing speed is bounded by the printer.
The API is part of the Team plan, priced per computer that prints. See the pricing page for current prices. There is no per-print charge.
Ready to get started?
Start printing your emails today.
Nearly 90,000 emails have printed themselves so far — no one opening an inbox, no one clicking print.