Integration · Amazon S3
Back up email to Amazon S3 — automatically.
Forward any email to your private InboxBucket address and the original .eml is written to a bucket you own — headers, body, and attachments intact. AWS, or any S3-compatible store you already run.
Free plan available · No credit card required
- From:
- Acme Billing <[email protected]>
- To:
- [email protected]
- Subject:
- Invoice #4471 — June services
- Files:
- invoice-4471.pdf
s3://your-bucket/inboxbucket/2026/07/0713__invoice-4471__acme-billing.eml
✓ stored · 84 KB · original MIME
Why back up to S3
Durable, cheap, and entirely yours.
Durability you can't match locally
S3 stores each object redundantly across a region for eleven nines of durability. A .eml written there isn't going to rot on a dying laptop drive or a single failed disk.
Pennies to keep for years
Object storage is usage-priced and .eml files are tiny. Add a lifecycle rule to roll old mail into Glacier and long-term retention costs almost nothing.
Your bucket, your rules
Region, encryption, versioning, Object Lock, access — all set by you. Bring AWS, or any S3-compatible store you already run.
How it works
Three steps, then it runs itself.
Add your bucket
Give InboxBucket a bucket you own: its region, name, and an access key. We recommend a dedicated IAM user with write-only (PutObject) access to just that bucket — nothing more.
Get your address
You receive a private inbound address that exists only to receive your mail:
[email protected]Forward anything
Forward one message by hand, or set an auto-forward rule in your mail provider so every email backs itself up. Seconds later, the original .eml is an object in your bucket.
The access we ask for
Write-only. Keys you control.
With S3 you hold the keys — literally. You create an access key scoped to a bucket you own and hand InboxBucket only what it needs to write: a dedicated IAM user with s3:PutObject on one bucket, optionally one prefix. It never requests read, list, or delete.
We're the pipe, not the vault. Mail only passes through us on its way to your bucket; what we keep is the metadata behind your dashboard — sender, subject, date, status — never the messages. Rotate or revoke the key anytime in IAM, and every .eml already written stays exactly where it is.
- Needs only s3:PutObject on one bucket
- No read, list, or delete permission required
- Never touches objects it didn't write
- Rotate or revoke the key anytime — your .eml objects remain
What lands in your bucket
Predictable keys, dated and yours.
Each message is written under a dated, human-readable key beneath your optional prefix, so your own tooling and lifecycle rules can reason about it. Every object is a complete .eml — the original message, not a rendering or an export.
Set a lifecycle rule to transition older mail into Glacier for near-free long-term retention, or turn on Object Lock for write-once compliance archiving. InboxBucket only ever writes, so it fits a WORM policy without friction.
s3://your-bucket/ └── inboxbucket/ (optional prefix) └── 2026/ └── 07/ ├── 0713__invoice-4471__acme-billing.eml ├── 0711__signed-contract__legal.eml └── 0708__flight-receipt__airline.eml
The details
Built like a backup should be.
The original message, byte for byte
Every email is written as a .eml object — the raw RFC 822 message with headers, body, and attachments in one file. It opens in any mail client or a text editor, with no conversion, ever.
Big attachments via multipart
Large attachments are uploaded with S3 multipart, so a 40 MB signed contract lands whole, well past any single-request size limit — the same code path for AWS and every S3-compatible endpoint.
Written once, however it arrives
People double-forward and mail servers retry. Deduplication on Message-ID means each message becomes exactly one object in your bucket.
Only senders you approve
A per-sender allowlist keeps a scraped address from filling your bucket with spam — only mail from senders you've approved is ever written.
Loud on failure, never silent
A failed PutObject — throttling, an expired key — queues and retries, with status visible in your dashboard until it lands, plus a clear prompt if the credentials need rotating.
Predictable, searchable keys
Objects are written under dated, human-readable keys, so your own tooling can find them — and sender, subject, date, and status are indexed in your dashboard for search.
Not just AWS
Supply an endpoint URL and InboxBucket writes to any S3-compatible store the same way it writes to AWS:
FAQ
S3 backup, answered.
Where are my emails stored?
In your own S3 bucket. InboxBucket passes each message through only long enough to parse and deliver it, then writes the original .eml as an object in your bucket. The archived copy lives in your account, not ours — we keep only the metadata (sender, subject, date, status) that powers your searchable dashboard.
What S3 permissions does InboxBucket need?
Only s3:PutObject on your bucket — write access, and nothing else. It never requests read, list, or delete, so a dedicated IAM user scoped to PutObject on one bucket (optionally one prefix) is all you need. InboxBucket verifies the connection by writing a single tiny test object through the exact path a real archive uses, so it can't ask for more than that. Rotate or revoke the key anytime in IAM.
Does it work with S3-compatible storage like Cloudflare R2 or Backblaze B2?
Yes. Point InboxBucket at any S3-compatible endpoint — Cloudflare R2, Backblaze B2, Wasabi, MinIO, DigitalOcean Spaces — by supplying its endpoint URL along with your key and bucket. Path-style addressing is handled automatically, so self-hosted and third-party stores work the same as AWS.
How much does S3 email backup cost?
S3 storage is usage-priced — cents per gigabyte per month — and .eml files are small, so most archives cost very little. Add a lifecycle rule to transition older mail to Glacier or Deep Archive and long-term retention costs almost nothing. InboxBucket's own Free plan covers one storage connection; the storage bill is between you and your provider.
Can I scope archives to a folder in the bucket?
Yes. Set an optional prefix and every object is written beneath it — for example an inboxbucket/ prefix keeps your archive tidy in a shared bucket. Within that, objects are organized into dated year/month keys so a single message is easy to find.
Can I make the archive tamper-proof for compliance?
Enable S3 Object Lock (and versioning) on your bucket for write-once-read-many retention. Because InboxBucket only ever writes objects and never deletes or overwrites them, it fits a WORM retention policy cleanly — useful for legal hold and compliance archiving.
What format are the backups in?
Every email is stored as a .eml file — the standard RFC 822 message exactly as it arrived, with headers, body, and attachments in one portable file. No proprietary format and nothing to export later; it opens in any mail client or a plain text editor.
Is S3 email backup free?
InboxBucket's Free plan archives 100 emails a month, with one inbound address and one storage connection, plus full-fidelity .eml backup and searchable history. The allowance resets on the 1st. The Lifetime plan is a one-time $79 payment with unlimited archived emails, addresses, and storage connections, no subscription. You pay your S3 provider separately for the storage you use.
Free plan · No credit card
Put your email in a bucket you own.
Add your bucket, get your address, and the next email you forward is written to storage you control.
Add your S3 bucket