Product

One API for every email your product sends 

Transactional email, templates, broadcasts, live logs and signed webhooks, behind the same API your code already speaks.

Overview

NOV 2026
This monthLast month

SENT

18,420

+12.4%

DELIVERED

99.2%

+0.4%

BOUNCE RATE

0.6%

−0.1%

DELIVERY · LAST 30 DAYS

All domains

99.2% +0.4% vs last month

RECIPIENTSTATUS
  • linus@hooli.devdelivered
  • margaret@stark.coopened
  • alan@umbrella.orgdelivered
  • radia@piedpiper.combounced
Capabilities

Everything your product needs to send email. Four core capabilities, built to work together.

Send email with one call. The same request Resend takes, answered in milliseconds and queued so nothing is lost.

Send an emailSending
▍

Sooner

{ "id": "01jcz8w3f2x9k4m7n6p5q2r1s0" } · 34 ms

POST /emails

Live logs that stay current. Deliveries, opens, bounces and complaints in one view, updated as they happen.

Live overviewStreaming

SENT TODAY

19,515 +4.2%

DELIVERED

99.2% +0.4%

BOUNCE RATE

0.5% −0.2%

EMAILS / MIN

Now 2,815
MonTueWedThuFriSatSun
API
Sending
Webhooks

Broadcasts that respect consent. Segments, topics and suppressions are checked per contact, and unsubscribe links are added for you.

BroadcastRunning

Segment

1,277 contacts

Consent

checking

IF SUBSCRIBED

Send

97% of contacts

97%

ELSE

Skip

3% opted out

Keep the tools you already run. Resend SDKs, Svix webhook verifiers and plain HTTP work by changing one base URL.

CompatibilityDrop-in
Resend SDKNode.jsPythoncURLGoPHPRubySvixNext.jsLaravelResend SDKNode.jsPythoncURLGoPHPRubySvixNext.jsLaravel
Everything included

Sixteen features, zero add-ons. Every plan gets the whole API.

01

Transactional API

Send one email per request, with attachments, tags and custom headers.

02

Batch sending

Up to 100 emails in a single request, accepted all-or-nothing.

03

Scheduling

Send later with a date or plain words like “in 1 hour”. Reschedule or cancel any time.

04

Idempotency

Retry safely. The same key returns the same email instead of sending twice.

05

Templates

Variables with fallbacks, draft and published versions, sent by id or alias.

06

Broadcasts

Send to a segment now or later, with per-contact personalization.

07

Contacts & segments

Custom properties, segments and CSV export for your audience.

08

Topics & preferences

Let people opt out of one kind of email on a hosted preferences page.

09

Suppression list

Hard bounces and complaints are blocked automatically, team-wide.

10

Webhooks

Signed events for every status change, retried with backoff for about a day.

11

Domains

DKIM, SPF and custom MAIL FROM, with automatic DNS checks.

12

Open & click tracking

Turn tracking on or off per domain.

13

API keys

Full-access or sending-only keys, optionally locked to one domain.

14

Teams & roles

Owners, admins and members, with single-use invite links.

15

Usage API

Read quota and usage programmatically.

16

Log retention

7 to 365 days depending on plan, deleted automatically after.

How it works

Sooner verifies your domain, sends anything you ask, and shows the delivery behind it

DKIMSPFMXDMARCTXTCNAMETLS

Verify your domain

Add the DKIM, SPF and MX records we give you. We check DNS for you and tell you when it's live.

|

.env

Send anything

Use the SDK you already have, or plain HTTP. Sooner validates it, queues it and sends it in milliseconds.

Delivered to gmail.com

DKIMpass
SPFpass

Check the delivery

Every email opens to its full timeline: accepted, delivered, opened, or exactly why it bounced.

Deliverability & compliance

Your reputation stays yours

Authenticated sending, isolated per team, with consent handled on every broadcast.

DKIM, SPF & DMARC on every domain

One-click unsubscribe built in

Bounces suppressed automatically

SDK & API

Works inside the SDK your code already uses

Try it

API 001
import { Resend } from "resend";

const resend = new Resend(process.env.SOONER_API_KEY, {
  baseUrl: "https://api.sooner.dev", // the only change
});

await resend.emails.send({
  from: "Acme <hi@acme.com>",
  to: "ada@initech.io",
  subject: "Welcome aboard",
  html: "<p>Glad you're here.</p>",
});
→ { "id": "01jcz8w3…" } · 34 ms

Ready to send your first email?

Join developers using Sooner to ship email faster, catch delivery issues earlier, and pay half as much.