Five steps from zero to automated emails. Takes about 5 minutes.
curl -X POST https://api.mooser.email/auth/signup \
-H "Content-Type: application/json" \
-d '{"email":"you@example.com","password":"your-password-here"}'
# Response: {"ok":true}Or sign up at app.mooser.email/signup in the browser.
curl -X POST https://api.mooser.email/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"you@example.com","password":"your-password-here"}'
# Response: {"token":"eyJhbGciOiJIUzI1NiIs..."}Save this token. You'll use it as Authorization: Bearer TOKEN on all authenticated endpoints. Tokens last 24 hours. For longer-lived access, create an API key in Settings.
curl -X POST https://api.mooser.email/keys \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{"api_key":"re_your_resend_key","from_address":"hello@yourdomain.com"}'
# Response: {"hint":"re__****xxxx","from_address":"hello@yourdomain.com"}Your Resend key needs Send and Receive Email permissions. The key is encrypted at rest with AES-256-GCM. Nobody can read the raw key -- not even us.
curl -X POST https://api.mooser.email/templates \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{
"name": "Welcome Email",
"subject": "Welcome to {{company}}, {{name}}!",
"body_html": "<h1>Hey {{name}},</h1><p>Thanks for joining {{company}}. You are going to love it.</p>",
"body_text": "Hey {{name}}, Thanks for joining {{company}}."
}'
# Response: {"template":{"id":"abc-123","name":"Welcome Email","variables":["company","name"],...}}Variables like {{name}} are auto-detected and listed in the response. You fill them in when sending.
# Create the trigger
curl -X POST https://api.mooser.email/triggers \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{"name":"New signup","template_id":"abc-123"}'
# Response: {"trigger":{"trigger_key":"a1b2c3d4e5f6...","name":"New signup",...}}
# Fire it -- no auth needed, the key IS the auth
curl -X POST https://api.mooser.email/trigger/a1b2c3d4e5f6... \
-H "Content-Type: application/json" \
-d '{"to":"jane@example.com","variables":{"name":"Jane","company":"Acme"}}'
# Response: {"sent":1,"failed":0,"ids":["resend-id-here"]}That's it. Jane gets a personalized welcome email. Call this from your backend on every signup, from a Zapier webhook, from CI/CD -- anywhere that can make an HTTP request.