Messaging infrastructure
Email, SMS & WhatsApp.
One API.
Send messages from your app with one API key and one Node.js SDK.
Or run it yourself. The whole stack is open source under AGPL-3.0. No account needed. Clone it from GitHub.
import { Retransmit } from "retransmit.dev";
const client = new Retransmit(
process.env.RETRANSMIT_API_KEY
);
const { data, error } =
await client.emails.send({
from: "Acme <hello@acme.com>",
to: "jane@example.com",
subject: "Welcome to Acme",
html: "<p>Your account is ready.</p>",
});01 / Channels
One integration.
Three ways to send.
Queued delivery
Messages are queued and retried automatically when a provider fails.
Signed webhooks
Delivery updates arrive at your endpoint with an HMAC signature.
Message history
Look up any message by ID. See its status and the events behind it.
03 / Cloud or self-hosted
Same API.
Your choice of who runs it.
The cloud runs the code in the repo. Same SDK either way.
Retransmit Cloud
Pay per messageNo AWS, Twilio, or Meta accounts. Top up a balance and send. No subscription.
Create an accountSelf-hosted
Free, AGPL-3.0Your servers, your provider accounts, your data. Nothing to pay.
Get the source04 / Migration
Coming from Resend?
Keep your templates.
The send call has the same shape and the same result type. React Email templates render to HTML with one call.
Retransmit vs Resendimport { Retransmit } from "retransmit.dev";
import { render } from "@react-email/components";
import { WelcomeEmail } from "./emails/welcome";
const retransmit = new Retransmit(process.env.RETRANSMIT_API_KEY);
const { data, error } = await retransmit.emails.send({
from: "Acme <hello@acme.com>",
to: "jane@example.com",
subject: "Welcome to Acme",
html: await render(<WelcomeEmail name="Jane" />),
});Get started