Skip to main content

Mailbox Zero

Can't reach Inbox Zero? Just create a new one.

MailboxZero is a server that provides you an infinite number of mailboxes that you can check via a REST API.

It combines a SMTP server that accepts incoming emails and a web server that provides access to the emails over a REST API.

How to use it

mb0.wtte.ch is a demo instance of MailboxZero

  1. Send an email to somerandomstring@mb0.wtte.ch
  2. Visit http://mb0.wtte.ch:8880/api/somerandomstring@mb0.wtte.ch for a list of messages in your mailbox
  3. Retrieve an individual message by visiting http://mb0.wtte.ch:8880/api/somerandomstring@mb0.wtte.ch/<messageID>

Messages get deleted about ten minutes after arriving. You get a parsed version of the email, not the raw email. MailboxZero will show you:

  • the richest body, usually the HTML version
  • the simplest body, usually the plain text version
  • the URLs in each body
  • the headers of the email as a list of (name, value) pairs
  • the subject, from and date fields

Deploying your own instance

Quick start:

  1. Install Python 3.8 or newer
  2. Install MailboxZero pip install -U mailboxzero
  3. Run mailboxzero as root.

To run an instance reachable from the public internet you need a public IP, assign a hostname to it, and setup a MX record to point to that hostname. You should also use something like systemd to run MailboxZero in order to limit its privileges and not run it as root.

Development

Setup the development dependencies with python -m pip install -U -r dev-requirements.txt. We use pytest to run the tests in tests/.

Main libraries used:

Release files for mailboxzero 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mailboxzero 0.0.1
File Size Uploaded
mailboxzero-0.0.1.tar.gz 5.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mailboxzero 0.0.1
File Interpreter ABI Platform
mailboxzero-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 12.9 kB

Release files / mailboxzero-0.0.1.tar.gz

Download URL mailboxzero-0.0.1.tar.gz
Size 5.9 kB
Tags Source
SHA-256 checksum
How to use checksums
d327cb575c909001b22d3d761d0d23a8caca6cf98620c5e6915aa4163415fc9e
BLAKE2b-256 checksum
How to use checksums
57218d0cd49083c095c453957b1e5d8ffa72fecbe9ea6a61dcbabfba1ec08459
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.6

Release files / mailboxzero-0.0.1-py3-none-any.whl

Download URL mailboxzero-0.0.1-py3-none-any.whl
Size 7.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9b50003ef7664f35fe08ed3e670cc99e0c42b047c7cfcdf748a3a39ba66c05b5
BLAKE2b-256 checksum
How to use checksums
e45234f4e852dbff3569459b4b031dc3bf6a4a628a2a799f8646eb9ea9a6bf80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.6

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page