Getting Started
Getting Started
Point an MX record at your server, create an account, and send your app's first test email. Read it over the API or the web UI.
First steps
- Sign up and log in
- Go to Domains and add your domain
- Add an MX record pointing to your server at your DNS provider (details) — or use the dev-verify toggle for local testing
- Go to Accounts and create an email address on that domain
- Send an email to that address from your app
- Open the account in Mail — your email should be there
You can also use any email client over SMTP and the API.
Over the API
The same flow, scripted. Create a key on the API Keys page first; the MX record from step 3 still has to exist.
curl -X POST https://stmp.ink/api/domains \
-H "X-API-KEY: *** \
-H "Content-Type: application/json" \
-d '{"domain": "test.example.com"}'
curl -X POST https://stmp.ink/api/accounts \
-H "X-API-KEY: *** \
-H "Content-Type: application/json" \
-d '{"address": "qa@test.example.com", "password": "use-a-secret"}'
Or send your first message with smtplib and read it back over the API:
import smtplib
from email.message import EmailMessage
msg = EmailMessage()
msg["From"] = "app@example.com"
msg["To"] = "qa@test.example.com"
msg["Subject"] = "Hello"
msg.set_content("It works.")
with smtplib.SMTP("stmp.ink", 2525) as smtp:
smtp.send_message(msg)
Everything in the UI maps to a REST endpoint, so whatever you set up by hand you can also script.
What's inside
Domains
Your own domains and subdomains, isolated from each other.
Accounts
Email addresses with mailboxes, passwords, and storage. Plus-sign aliasing and catch-all included.
Mailboxes
Inbox, Sent, Trash, Drafts, Junk by default. Create more as needed.
Messages
HTML and plain text views, raw SMTP source, SPF/DKIM/DMARC checks, attachments.
Compose
Send test emails between accounts from the browser.
API Tokens
Keys for the REST API.
Real-time
New messages show up instantly via SSE.