Quickstart
Two paths to your first send. Pick the one that matches what you’re trying to do today.
Pick your path
| Path A — Try in 30s | Path B — Build for real | |
|---|---|---|
| Best for | Evaluating the API, demos, throwaway scripts | Production transactional email + dashboard for campaigns |
| Account needed | None — email-only widget | Free signup at app.brixus365.com/signup |
| Time to first send | 30 seconds | ~10 minutes (DNS for domain verification) |
| API key prefix | bx_preview_… | bx_live_… |
| Send modes | Starter templates only | Starter templates + raw HTML + your saved templates + batch + SMTP |
| Sender | Fixed: noreply@brixus365.dev | Your verified domain |
| Send volume (free) | 50/day, 1,500/month, 10/min | 9,000/month (free plan) |
| Spark (campaigns) | Not available | Available in dashboard (free) |
| Inbox & CRM (coming with WhatsApp/SMS) | Not available | Coming with WhatsApp/SMS launch |
Most developers start with Path A to verify the API contract works for them, then move to Path B once they’re committing to integration. The two paths share the same endpoints, error envelope, and code samples — your Path A code keeps working after you upgrade, just with a new key value.
Path A — Try in 30 seconds
Get a bx_preview_… key and send a starter template. No signup, no DNS, no waiting.
1. Get your free key
Open the developers page and look for the Get your free API key widget at the top.
- Enter your email address
- Open the verification email and click the confirm link
- Your
bx_preview_…key appears on the next screen — copy it now, the full value is shown only once
Save it as an env var so the snippets below just work:
export BRIXUS_API_KEY=bx_preview_your_key_here2. Send your first email
1curl -X POST https://app.brixus365.com/api/v1/emails \
2-H "X-API-Key: $BRIXUS_API_KEY" \
3-H "Content-Type: application/json" \
4-d '{
5 "to": "you@example.com",
6 "starterTemplate": "welcome",
7 "variables": { "name": "Friend", "app_name": "My App" }
8}'You’ll get back a messageId and status: "queued":
{
"messageId": "fd92bd3f-969a-4ff6-87dc-a8b0a16e0297",
"status": "queued",
"from": "noreply@brixus365.dev"
}
Check your inbox. The email arrives within a few seconds.
What you can and can’t do on Path A
| Can | Can’t |
|---|---|
Send any of the 10 starter templates | Send raw HTML or use your saved templates |
Look up message status via | Send from your own domain |
Test the MCP server with Claude / Cursor | Use the Spark campaigns dashboard |
Send up to 50/day, 1,500/month | Inbox & CRM (coming with WhatsApp/SMS) |
When you hit any of those limits, sign up free for Path B — same API, more capability.
Path B — Build something real
Free signup gets you the full product: 9,000 sends/month, raw HTML, batch send, SMTP relay, custom domains, Spark campaigns in the dashboard, and everything you’d expect to ship to production. Setup takes ~10 minutes (mostly DNS records for domain verification).
Setup checklist
Path B has a 4-step setup before your first send works. Each step is described in detail in Before you send — here’s the summary:
| # | Step | Time |
|---|---|---|
| 1 | Sign up at app.brixus365.com/signup — verify your email with the OTP code | 2 min |
| 2 | Create an API key in Settings → API Keys → Create. Pick the Send emails (transactional) preset. | 1 min |
| 3 | Add a sending domain in Settings → Email Setup → Custom Email Domains and add the SPF + DKIM records to your DNS | 5–10 min (depends on DNS propagation) |
| 4 | Add a verified sender address and click Set as Default | 1 min |
Don’t skip step 4. The transactional API rejects sends with 403 no_verified_sender until at least one sender address is marked Default, even if your domain is verified.
Send your first production email
Once setup is complete, the same code as Path A works — just with your bx_live_… key. Sender will be your default verified address:
curl -X POST https://app.brixus365.com/api/v1/emails \
-H "X-API-Key: bx_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"to": "customer@example.com",
"starterTemplate": "welcome",
"variables": { "name": "Alice", "app_name": "Acme" }
}'
Response:
{
"messageId": "dceaaa96-a806-43d2-ac2d-8396bbd3188a",
"status": "queued",
"from": "you@your-verified-domain.com"
}
What you can do on Path B
- Send via starter templates, your own saved templates, or raw HTML
- Send batches of up to 100 messages in one request
- Use the SMTP relay with any mail library (Nodemailer, PHPMailer, MailKit, etc.)
- Run Spark campaigns in the dashboard — drag-and-drop builder, automations, segments, analytics
- 9,000 sends/month free, with the option to upgrade for higher volume
Spark (campaigns) is dashboard-only on free. Programmatic campaign sending requires a paid Standard plan. Transactional API + dashboard campaigns is what most teams need to start.
What’s next
| You want to… | Go to |
|---|---|
| See all 10 starter templates and their variables | Starter templates |
| Use a language we didn’t cover above | Code examples — 11 languages + SMTP |
| Send via SMTP from an existing mail library | SMTP relay |
| Wire Claude or another AI agent to send mail | MCP server quickstart |
| Understand error codes, rate limits, and idempotency | API overview |
| Walk through the Path B setup in detail | Before you send |
| Compare free vs paid plans | Pricing |
Stuck? Email support@brixus365.com — we read every message.