Pick one, clone it, run it. Each starter sends a real email on the first run and is a complete app you can build on.
| Starter | What you get | Stack |
|---|---|---|
| Next.js app | API routes for sending, batch sends, attachments, templates, webhooks, inbound email and double opt-in, with a page per feature | TypeScript, Next.js 15 |
| Python web app | The same /send API in Flask, FastAPI and Django, plus a single-file script for every feature |
Python 3 |
| AI agent that sends email | A Claude agent with a send_email tool and a recipient allowlist, so it can only send where you let it |
TypeScript, Vercel AI SDK |
Before you run one: create an account, verify your sending domain (Elastic Email only sends from verified domains) and create an API key under Settings → Manage API Keys.
git clone https://github.com/ElasticEmail/elasticemail-examples.git
cd elasticemail-examples| Next.js | Python | AI agent |
|---|---|---|
cd nextjs-elasticemail-examples/typescript
npm install
cp .env.example .env
npm run dev |
cd python-elasticemail-examples
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
python examples/fastapi_app.py |
cd ai-agents-elasticemail-examples/vercel-ai-sdk
npm install
cp .env.example .env
npm start |
Put your API key and a sender on your verified domain in .env. Each starter's QUICKSTART.md covers the rest. Express, Laravel, Go, Rust, .NET, SvelteKit, serverless and 20+ other stacks are in elasticemail-examples.
No project yet? Send with curl
curl -X POST https://api.elasticemail.com/v4/emails/transactional \
-H "X-ElasticEmail-ApiKey: $ELASTICEMAIL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"Recipients": { "To": ["recipient@example.com"] },
"Content": {
"From": "you@your-domain.com",
"Subject": "Hello from Elastic Email",
"Body": [{ "ContentType": "HTML", "Content": "<p>It works!</p>" }]
}
}'Every SDK wraps the same REST API v4, so the same endpoints and models are available in every language.
| Language | Repository | Install | Package |
|---|---|---|---|
| C# / .NET | elasticemail-csharp | dotnet add package ElasticEmail |
|
| PHP | elasticemail-php | composer require elasticemail/elasticemail-php |
|
| Python | elasticemail-python | pip install ElasticEmail |
|
| JavaScript / Node.js | elasticemail-js | npm install @elasticemail/elasticemail-client |
|
| TypeScript (axios) | elasticemail-ts-axios | npm install @elasticemail/elasticemail-client-ts-axios |
|
| Angular | elasticemail-ts-angular | npm install @elasticemail/elasticemail-client-ts-angular |
|
| Java | elasticemail-java | Maven / Gradle, see README | |
| Go | elasticemail-go | go get github.com/elasticemail/elasticemail-go/v4@latest |
|
| Ruby | elasticemail-ruby | gem install ElasticEmail |
|
| Rust | elasticemail-rust | cargo add ElasticEmail |
|
| Perl | elasticemail-perl | cpanm --installdeps . |
|
| Bash | elasticemail-bash | Clone the repo, see README |
| Project | What it does |
|---|---|
| elasticemail-cli | Command-line tool for sending email and campaigns and managing templates, contacts and domains. npm install -g elastic-email-cli |
| elasticemail-send-email-action | GitHub Action that sends email from a workflow, for example build reports or release notes. uses: ElasticEmail/elasticemail-send-email-action@v1 |
| elasticemail-mautic-mailer | Mautic plugin for sending campaigns, segment emails and transactional mail through Elastic Email. |
| Project | What it does |
|---|---|
| elasticemail-mcp-server | MCP server that lets AI agents (Claude, Cursor, VS Code and others) send email and work with your Elastic Email account. |
| elasticemail-skills | Agent skills that teach coding assistants the Elastic Email API. npx skills add ElasticEmail/elasticemail-skills |
- Meet the Elastic Email CLI: send email and campaigns and manage templates from your terminal, or script it with
--json. - DMARC explained, with a guide to DMARCRadar: what DMARC reports tell you and how to act on them.
More on the Elastic Email blog.
Important
The fastest way to get help is the chat widget on elasticemail.com. Our support team can help with your account, sending, deliverability and API questions.
- 💬 Chat with support (preferred)
- 📚 API documentation
- 🐛 GitHub issues in the relevant repository, for bugs in that SDK or tool only
- ✉️ support@elasticemail.com
Pull requests are welcome in every public repository. Please read our contributing guide (or the repository's own CONTRIBUTING.md) and follow our Code of Conduct. To report a security vulnerability, follow our security policy and don't open a public issue.
Note
The ElasticEmail.WebApiClient-* repositories contain the legacy API v2 clients. They are archived and no longer maintained. New projects should use the v4 SDKs above.
