I just launched Social SDK. Come check it out →
Email SDK

Email SDK

Email for TypeScript apps. Send transactional email through 27 adapters with one typed SDK.

Email for TypeScript apps. Install the SDK, add the adapter for your existing provider account, and call email.send(). The message shape stays the same if you switch providers later.

Send your first email

Install the SDK, configure one adapter, and send a message from Node.js or Bun.

Start here

Now call email.send({ from, to, subject, text }). Add retries, fallback, plugins, and more adapters only when you need them.

Included

  • 26 provider API adapters plus SMTP, 27 adapters total
  • Typed adapter names in send, validate, adapter, and withAdapter
  • Retries on the current adapter, then fallback only when delivery is known to have failed
  • Independent sendMany calls and personalized sendPersonalized delivery
  • Hooks, middleware, built-in plugins, and no-network test adapters
  • Provider-native scheduled sends with sendAt
  • CLI commands for adapter discovery, setup checks, and validated dry runs
  • Optional approval-gated AI SDK tools for agent workflows

Runtime boundary

Email SDK is server-side and supports Node.js 20+ or Bun 1.1+. Use ESM imports on any supported runtime, or require() from CommonJS applications on Node.js ^20.19.0 || >=22.12.0 (20.19+ on 20.x, or 22.12+). On older supported runtimes, use dynamic import(). See Install for typed CommonJS configuration. Keep API keys and SMTP credentials out of browser bundles.

Install

Install the SDK and confirm your Node.js or Bun version.

Schedule an email

Use sendAt for provider scheduling, or keep long-running jobs in your own queue.

Choose an adapter

Set a default adapter and select another by its typed name when needed.

Upgrade from 0.x

Replace v0 provider names and send options with v1 adapters and options.

On this page