Skip to main content

A fake SMTP server

Project description

Fakemail is a simple SMTP server that runs as a command line script, relaying incoming messages to an upstream server, to an HTTP endpoint or to stdout.

Fakemail is useful for testing emails during development: it can rewrite the envelope-to address on all messages to a single address, ensuring messages cannot be sent to real users.

Fakemail is useful for processing inbound messages in a web application, by acting as an SMTP-to-HTTP proxy.

Caution: Fakemail always runs as an open relay. Ensure you do not expose fakemail on a public address.

Installation

pip install -r requirements.txt

Usage

To see an up to date list of command line options, run:

python fakemail.py --help

Examples

Redirect emails for development:

python fakemail.py –bind 127.0.0.1:2525 –relay 127.0.0.1:25 –rewrite-to=myaddress@example.org

View emails on stdout:

python fakemail.py --bind 127.0.0.1:2525 --stdout

Feed emails into an HTTP endpoint (SMTP-to-HTTP):

python fakemail.py --bind 127.0.0.1:2525 --relay-url="https://mywebservice.example.org/mail-in"

python fakemail.py --bind 127.0.0.1:2525 --relay-url="https://user:pass@mywebservice.example.org/mail-in"

Multiple relays are possible: you can relay via SMTP, to an HTTP endpoint, and log to stdout in a single process. If any one relay fails the mail will be rejected, even if other relays succeed.

Project details


Release history Release notifications

This version

0.1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for fakemail, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size fakemail-0.1.0-py3-none-any.whl (6.7 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size fakemail-0.1.0.tar.gz (8.4 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page