Send transactional email with one request. Manage templates without a redeploy. Switch providers without lock-in. Free up to 3,000 emails a month.
import { SenderKit } from "@senderkit/sdk";
const senderkit = new SenderKit({ apiKey: process.env.SENDERKIT_API_KEY! });
await senderkit.send({
template: "welcome_email",
to: user.email,
vars: { first_name: user.firstName },
});import os
from senderkit import SenderKit
sk = SenderKit(api_key=os.environ["SENDERKIT_API_KEY"])
sk.send("welcome_email", "ada@example.com", vars={"first_name": "Ada"})curl https://api.senderkit.com/v1/send \
-H "Authorization: Bearer $SENDERKIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"template": "welcome_email",
"to": "ada@example.com",
"vars": { "first_name": "Ada" }
}'One endpoint, any language. The template lives in the dashboard — your code just names it.
POST a template, a recipient, and your variables to /v1/send. That's the whole integration.
Edit subject, body, and variables in the dashboard. Versioned, with one-click rollback.
Send built-in, or route through Amazon SES, Postmark, SendGrid, or SMTP. Switch with no code change.
Type-safe SDKs for TypeScript, Python, and PHP, a CLI for CI, an MCP server for AI agents, and a REST API you can call from any language.
Get delivery, bounce, and complaint events pushed to your app so you can react in real time.
A genuinely free tier with no credit card. Simple usage-based pricing above it.
The first 3,000 emails every month are free — no credit card, no trial clock — and the free tier includes template management, the SDKs, the CLI, and webhooks. It’s enough to run a side project or a small product’s entire transactional email on, and pricing stays simple and usage-based as you grow. See the pricing page for current tiers.
Yes. SenderKit's email API is free up to 3,000 emails a month with no credit card, including template management and the SDKs. Pricing is simple usage-based above that.
Make an authenticated POST to https://api.senderkit.com/v1/send with a template name, a recipient, and your variables — or call senderkit.send() from one of the SDKs. The template itself is managed in the dashboard, so you don't ship HTML in your code.
Yes. SenderKit can send on its own infrastructure or route through Amazon SES, Postmark, SendGrid, or raw SMTP — so there's no lock-in and you can switch providers without changing your send code.
Yes. The same API sends transactional SMS and push/web-push alongside email, so you don't need a separate product or integration per channel.
New to this? Start with what transactional email is, or compare SenderKit to SendGrid and Mailgun.
Free up to 3,000 emails a month. No credit card, no sales call. Add SMS and push from the same API when you need them.
By creating an account, you agree to our Terms.