// developers · cli

Your inbox, from the shell.

The drin CLI puts the whole API one command away. Send and batch mail, tail delivery logs live, and manage domains, keys and templates — perfect for scripts, CI, and the moment you just want to fire a test send.

the drin cli · a session
# send a one-off email
drin emails send \
  --to user@acme.com \
  --subject "Hi" \
  --html "<p>yo</p>"
# → msg_8fK2q1  queued

# follow delivery events as they happen
drin logs tail
# delivered  msg_8fK2q1  user@acme.com  142ms

# list your verified domains
drin domains list
# acme.run        verified
# mail.acme.run   pending
// commands[01/03]

Everything the dashboard does, scriptable.

01

Send & batch

Fire a single email with flags, or pipe a JSON file to send up to 100 in one call.

02

Tail logs

Stream delivery, bounce, open and complaint events to your terminal in real time.

03

Domains & keys

Add domains, watch verification flip, and mint or revoke scoped API keys without the dashboard.

04

Templates

Create, version and send templates by id, with merge variables passed right on the command line.

// at a glance[02/03]

Built for pipes and CI.

Readable output when you're at the keyboard, clean JSON when a script is reading. It authenticates with the same key as everything else, so dropping a send into a deploy step or a cron job takes one line.

Install & command reference →

AuthReads DRIN_API_KEY from your environment or a profile
OutputHuman-readable by default · --json for scripts and pipes
ProjectsScope any command with --product to target a project
SurfaceMatches the REST API, SDK and MCP — identical behaviour
// pairs well with[03/03]
// open a terminal

Send your first email from the shell.

Grab a key, follow the CLI quickstart in the docs, and run drin emails send. Test in the sandbox; production starts at $3 a month.