On this page

Quickstart

Create a key, add a domain and send your first email.

First email

Create an API key (it is shown only once), add your domain and publish the DNS records it prints, verify the domain, then run doctor, which checks IPs, DNS and signing and tells you what to fix.

sudo bunzzle keys create --name my-app --scope full
sudo bunzzle domains add your.domain
sudo bunzzle domains verify your.domain
sudo bunzzle doctor

curl -X POST http://127.0.0.1:3000/emails \
  -H "Authorization: Bearer bz_…" -H "Content-Type: application/json" \
  -d '{"from":"You <hello@your.domain>","to":["you@example.com"],"subject":"Hi","text":"It works"}'

Send one email without the server

dkim keygen creates a key encrypted with the master key and prints the DNS records to publish.

export BUNZZLE_MASTER_KEY=$(./dist/bunzzle master-key)
./dist/bunzzle dkim keygen --domain your.domain --out dkim.json
./dist/bunzzle send --from "You <hello@your.domain>" --to someone@example.com \
  --subject "Hello" --text "Sent by Bunzzle" --dkim-keys dkim.json --ehlo mail.your.domain

The sending server needs outbound port 25 and a reverse DNS (PTR) record matching --ehlo.

When a recipient is refused, send says what the reply means: who it is about (the recipient, the message, your sender setup, your IP’s reputation or the sending rate) and what Bunzzle does about it. Only a permanent problem with the recipient’s own address ever marks it for suppression.

esc