Sending business letters has never been easier
Upload a spreadsheet and we print, package and post every letter for you. Stop printing, folding, stuffing envelopes and queueing at the Post Office. Prices from £0.86 per letter.Made by one of our customers
Don't take our word for it
This video was created by a LetterAPI customer, and we're proud to share it with you. Watch it to see LetterAPI through their eyes.1. Upload your spreadsheet
Drop in a CSV of names and addresses and map your columns. No code needed.2. We print and package
Every letter is printed, folded and put in an envelope for you.3. We post it for you
Your letters are handed to Royal Mail. No Post Office queue.Print and mail API for sending postal letters
Streamline your letter sending with LetterAPI. Use our SDKs to start sending letters in minutes via Royal Mail, with prices from £0.86 per letter.Send your first letter — bash# 1. Request an upload URLcurl https://api.letterapi.uk/file-upload \-H "Authorization: Bearer INSERT_YOUR_ACCESS_TOKEN_HERE"# 2. Upload the file to the returned URLcurl -X PUT "SIGNED_UPLOAD_URL" --upload-file letter.pdf# 3. Create the lettercurl -X POST https://api.letterapi.uk/organisations/YOUR_ORGANISATION_UUID/letters \-H "Authorization: Bearer INSERT_YOUR_ACCESS_TOKEN_HERE" \-H "Content-Type: application/vnd.api+json" \-d '{"data": {"type": "letters","attributes": {"file_original_name": "letter.pdf","file_url": "SIGNED_UPLOAD_URL","file_url_signature": "URL_SIGNATURE","address_position": "left","auto_send": false}}}'
API for print and mail automation
Everything you need to send physical mail from code
Free of charge
We're passionate about process automation. That's why our print and mail API has no monthly fee, you only pay per letter sent.SDKs for many languages
Integrate our API in no time with SDKs for PHP, Python, Go, JavaScript, Java, .NET and Rust.Seamless scalability
Our high performance infrastructure enables you to process thousands of letters per hour.Made for developers
A developer friendly letter API with clear documentation, crafted by experts for easy integration.Track & Trace
Real time progress updates and full transparency for every letter sent through the API.Enterprise grade API
Our API supports Idempotency-Key headers, rate limiting, and configurable send limits.Easy to set up, simple to use
LetterAPI is made for flexibility and simplicity, ensuring effortless integration. Alongside user friendly documentation, we provide code examples for a swift start.pythonimport requestsaccess_token = "INSERT_YOUR_ACCESS_TOKEN_HERE"organisation_id = "YOUR_ORGANISATION_UUID"# 1. Request an upload URLupload = requests.get("https://api.letterapi.uk/file-upload",headers={"Authorization": f"Bearer {access_token}"},).json()["data"]["attributes"]# 2. Upload the filewith open("letter.pdf", "rb") as f:requests.put(upload["url"], data=f)# 3. Create the letterresponse = requests.post(f"https://api.letterapi.uk/organisations/{organisation_id}/letters",headers={"Authorization": f"Bearer {access_token}","Content-Type": "application/vnd.api+json",},json={"data": {"type": "letters","attributes": {"file_original_name": "letter.pdf","file_url": upload["url"],"file_url_signature": upload["url_signature"],"address_position": "left","auto_send": False,},}},)print(response.status_code, response.json())
“We like to make things easy for developers, not just during integration, but also in the long run. A happy developer is our best sales strategy.”
LT
The LetterAPI teamBuilt by developers, for developers
Powerful SDKs
Our SDKs simplify sending postal letters via Royal Mail and other carriers
With support for a wide range of programming languages, our SDKs get you from signup to your first letter in minutes, not days.Ready to usePre built modules streamline setup and save time.
Simple integrationAn intuitive dashboard for quick and seamless API management.
Always up to dateEnsures compatibility as LetterAPI evolves.
Time savingsMinimise development and maintenance effort.
Various languagesAvailable for PHP, Go, Python, JavaScript, Java, .NET and Rust.
Clear docsClear guides and examples for fast implementation.
Real time status updates via webhooks
LetterAPI provides automatic webhook notifications for key events, delivering real time updates for each letter. React to delivery, return, and failure events without having to actively poll the print and mail API.webhook payload — json{"event": "letter.undeliverable","data": {"id": "ltr_8f2c1a9d","status": "returned","reason": "addressee_unknown","tracking_url": "https://track.letterapi.uk/ltr_8f2c1a9d"}}
Sandbox environment for developers
LetterAPI offers a free staging (sandbox) environment that mirrors production. You can simulate the entire mailing process without costs or risks and test every scenario before going live.Risk free testing
Use our staging environment to test integrations safely without affecting live data or incurring costs.Full feature simulation
The sandbox mirrors every LetterAPI feature, so you can test workflows including sending and tracking.Debug before deployment
Identify and resolve issues in a controlled environment before going live, reducing errors in production.Developer friendly
Our sandbox is designed for developers to simplify integration testing and accelerate development.Get started with our letter API
1
Sign up for free
Create a free account to get started with LetterAPI and receive access to the dashboard and the print and mail API.2
Get your API key
Create a developer app in LetterAPI to receive the Client ID and Client Secret required for API authentication.3
Integrate the API
Use one of the SDKs, or build your own integration based on our API documentation and cURL examples.4
Test and deploy
Test your integration in our sandbox environment and track events via the dashboard and webhook notifications.Learn more about LetterAPI
Integrations
LetterAPI lets you send letters directly via email, S3, Google Drive, OneDrive, Zapier and many more.Pricing
Through our partnerships with Royal Mail and local carriers, LetterAPI prints and delivers at competitive rates.Features
LetterAPI offers a wide range of innovative features for snail mail delivery, both locally and globally.Return mail
LetterAPI manages return mail automatically. If a letter can't be delivered, you'll receive a notification.Frequently asked questions
Everything you need to know before integrating LetterAPI.LetterAPI is a print and mail API that lets you send physical letters from your code. Upload a PDF, call the API, and we print, package, and post it via Royal Mail and other carriers.
There's no monthly fee. You only pay per letter sent, with prices starting from £0.86 per letter depending on paper size, colour, and delivery speed.
No subscription is required. Sign up for a free account, add credit or connect billing, and you're ready to send your first letter.
You can send letters within the UK via Royal Mail, with international delivery available through our partner carriers. Check the pricing page for coverage and rates.
Letters are uploaded as PDF files. We handle pagination, address window placement, and printing automatically once the file is uploaded.
Yes. Set the address_position field to tell us where the address window should appear, and we'll align printing so it shows through a windowed envelope.
We provide official SDKs for PHP, Python, Go, JavaScript, Java, .NET and Rust. You can also integrate directly via our REST API with any language.
Yes. Our free sandbox environment mirrors production so you can test uploads, sending, tracking, and webhooks without incurring costs or affecting live data.
Create a developer app in your dashboard to receive a Client ID and Client Secret, then exchange them for an access token used to authenticate every request.
Yes. Pass an Idempotency-Key header on write requests to safely retry calls without accidentally creating duplicate letters.
Every letter has a tracking URL and status field you can poll via the API, or you can subscribe to webhook events for real time updates as the letter moves through printing and delivery.
We send webhooks for events such as letter.printed, letter.dispatched, letter.delivered, and letter.undeliverable, so you can react to delivery and return events automatically.
Undelivered letters are automatically marked as returned and you'll receive a webhook notification with the reason, so you can update your records without manual tracking.
Yes, both options are available. You can choose colour mode per letter, and pricing varies depending on the option you select.
LetterAPI is built to scale to thousands of letters per hour. Rate limits apply per account and can be increased for high volume senders on request.
You can set auto_send to true when creating a letter to have it print and dispatch automatically, or leave it false to review and trigger sending manually.
LetterAPI integrates with email, S3, Google Drive, OneDrive, Zapier and more, so you can trigger letters from tools you already use without custom code.
Yes. All API traffic is encrypted in transit, access is scoped to authenticated developer apps, and we support configurable rate and send limits for account safety.
Our documentation covers common integration paths, and you can book a call with our team to discuss your use case or troubleshoot implementation issues.
Yes. Our infrastructure is designed for seamless scalability, and high volume senders can request increased rate limits and dedicated support.
Sign up for a free account, create a developer app to get your API credentials, then use an SDK or our REST API to upload a file and send your first letter.
Want to discuss our API options?
Discover how LetterAPI fits your business. Book a short call with our team to discuss your use case.LetterAPIPrint and post letters in the UK, from one letter to thousands.
© 2026 LetterAPI. All rights reserved.