Why Use the Go SDK?
Rather than making raw HTTP requests, the SDK provides:- Type-safe API — Full struct definitions with proper types and validation
- Context support — All methods accept
context.Contextfor timeouts and cancellation - Structured errors — Typed error responses with detailed validation messages
- Minimal dependencies — Only depends on Go’s standard library and net/http
- Idiomatic Go — Follows Go conventions and patterns you already know
Prerequisites
Before you begin, make sure you have:API Key
Create an API key in the Lettr dashboard
Verified Domain
Add and verify your sending domain
- Go 1.21 or later installed
- A verified sending domain in your Lettr dashboard
Quick Setup
Get started in three quick steps: install, configure, and send.1
Install the SDK
2
Create a client
3
Send your first email
RequestID for tracking and the number of accepted recipients.Configuration
Environment Variables
Read your API key from an environment variable:Using godotenv
Load environment variables from a.env file using the godotenv package:
.env file:
Custom HTTP Client
Use a custom HTTP client with custom timeouts or transport settings:Sending Emails
Basic HTML Email
Send a simple HTML email:With Display Name
Add a friendly display name to the sender address:Plain Text Email
Send a plain text email without HTML:Multipart Emails (HTML + Text)
Send both HTML and plain text versions for maximum compatibility:Explore the SDK
Beyond sending, the SDK manages every Lettr resource:Templates
Manage Lettr templates and merge tags
Domains
Add, verify, and manage sending domains
Webhooks
Manage webhook endpoints for delivery and engagement events
Audience
Lists, contacts, topics, properties, and segments
Campaigns
List, send, and schedule campaigns
What’s Next
Advanced Features
Learn about attachments, templates, tracking, and more
API Reference
Complete API documentation
Best Practices
Email deliverability tips