Reliable transactional email for PocketBase applications
Replace unreliable container sendmail in PocketBase with rock-solid port 587 ESMTP or REST API hooks. Guarantee password reset and verification delivery.
Drop into your application in under 60 seconds
Native typed interfaces with zero unnecessary dependencies. Built for standard fetch and modern edge runtimes.
package main
import (
"log"
"net/http"
"github.com/pocketbase/pocketbase"
"github.com/pocketbase/pocketbase/core"
)
func main() {
app := pocketbase.New()
// Intercept user signups to trigger rich branded welcome emails via SadaSend REST
app.OnRecordAfterCreateRequest("users").Add(func(e *core.RecordCreateEvent) error {
userEmail := e.Record.GetString("email")
userName := e.Record.GetString("name")
go func() {
// Trigger asynchronous dispatch using SadaSend API
sendWelcomeEmail(userEmail, userName)
}()
return nil
})
if err := app.Start(); err != nil {
log.Fatal(err)
}
}PocketBase Admin UI: set SMTP Host to smtp.sadasend.com, Port to 587, and TLS to STARTTLS. Or trigger rich emails via Go / JS hooks.
Engineered for high deliverability and zero incident risk
Every layer from edge connection pooling to per-key rate limits is designed to keep critical transactional dispatches fast, reliable, and contained.
Fixes Container Sendmail Failures
PocketBase default sendmail fails silently inside Docker, Fly.io, Railway, and Hetzner containers. SadaSend port 587 ESMTP resolves this instantly.
low-latency Auth Email Delivery
Verification emails and password reset links land in user inboxes in under 200 milliseconds to maximize user activation rates.
Pre-Flight DKIM & SPF Alignment
Instant domain verification ensures PocketBase system emails pass strict Google and Yahoo 2026 authentication checks.
PocketBase Admin UI Compatibility
Zero code required: drop SadaSend SMTP host and credentials directly into PocketBase Admin -> Settings -> Mail settings.
Go & JavaScript App Hooks Support
Full flexibility to trigger custom transactional email flows in PocketBase using Go event hooks or JavaScript PB_HOOKS.
Transparent Real-Time Outbox Logs
Inspect exact dispatch logs, delivery confirmations, and bounce reports in your SadaSend dashboard with full privacy protection.
SadaSend vs Default Unix Sendmail / Generic SMTP
Why developers host PocketBase with SadaSend rather than local container sendmail.
| Feature & Capability | SadaSend | Default Unix Sendmail / Generic SMTP |
|---|---|---|
| Container Compatibility (Fly/Docker) | Fails (Sendmail binary missing) | |
| Inbox Placement (Gmail & Yahoo) | 99.8% (Verified DKIM/SPF) | Spam or rejected outright |
| Port 587 STARTTLS Support | ||
| Real-Time Delivery & Bounce Outbox | Silent unmonitored drops | |
| REST API & Go Hooks Fallback | SMTP only | |
| Free Tier With Custom Domain | 6,000 sends forever | Trial or credit card required |
Start with 3,000 emails every month at zero cost
No artificial paywalls on security. Unlike legacy providers that reserve recipient allowlists or dedicated IP pools for high enterprise tiers, every SadaSend account receives full safety controls from day one.
Everything you need to know about PocketBase email
Clear, transparent answers on deliverability, API authentication, and rate limits.
Related developer guides and architectural tutorials
Explore step-by-step production implementation blueprints, benchmarks, and protocols.
SMTP relay & framework integrations
Connect existing applications, WordPress, Supabase, Laravel, Django, and Nodemailer to SadaSend via standard SMTP relay with zero code changes.
REST API Reference & Endpoints
Complete REST API reference for sending emails, managing API keys, tracking delivery events, and configuring recipient allowlists with low latency.
API Error Codes & Troubleshooting
HTTP status codes, machine-readable error reasons, and step-by-step remediation guides for API key rate limits, circuit breakers, and bounce handling.
PocketBase Email Setup: Complete SMTP & REST API Integration with SadaSend
PocketBase's default sendmail is unreliable in production. Learn how to configure SadaSend in the PocketBase Admin UI and dispatch transactional emails with Go and JavaScript hooks.
SPF, DKIM and DMARC: what each one actually does
Three records, endlessly confused with each other. Here is the mental model that makes them stop being confusing, and the two mistakes that cause most failures.
Why your transactional email goes to spam
People assume transactional mail is exempt from filtering because it was requested. Mailbox providers do not know that, and mostly do not care.
Nodemailer in production: what breaks, and what to do about it
Nodemailer is excellent at composing and transmitting a message. Almost every production incident I have seen with it is about the code around it, not the library.
Gmail, Yahoo and Microsoft now reject non-compliant mail. The 2026 checklist
The consequence changed. Non-compliant mail used to land in spam, where you might eventually notice. It is now refused at the door.