Send transactional and marketing email from one platform. Typed SDKs, event-driven automations, and a live per-message timeline — so you never have to guess what happened after you hit send.
No credit card required · Free tier · SDKs for Node, Python & PHP
Typed clients for Node, Python and PHP — plus a clean REST API with guides for the rest of your stack.
import { Postly } from 'postly';
const postly = new Postly({ apiKey: process.env.POSTLY_API_KEY });
await postly.emails.send({
from: 'onboarding@yourapp.com',
to: 'ada@example.com',
subject: 'Welcome to Postly',
react: <WelcomeEmail name="Ada" />,
});
Transactional and marketing email in one platform, with the primitives developers actually reach for.
First-class SDKs for Node, Python and PHP — typed, with automatic retries and idempotency. Plus a clean REST API for everything else.
Versioned templates with variables, referenced by a readable key. Design emails in minutes with the AI builder and live preview.
Build flows as a graph of steps — delays, conditions, waits and sends. Trigger them per contact by emitting an event.
One-shot campaigns to a whole audience or a rule-based segment, sent now or scheduled for later.
Receive HMAC-signed delivery events. Inspect every attempt and replay a delivery after fixing your endpoint.
SPF/DKIM/DMARC guidance, per-recipient suppression of bounces and complaints, and automatic list hygiene.
Most email APIs send and forget. Postly gives you a live, per-message timeline — queued, processing, delivered, opened, bounced — with signed webhooks and replayable deliveries, so you never have to guess.
Explore observabilityem_01J8Z…A2FDeliveredEvent-driven automations as a graph of steps — trigger, condition, wait, action — running per contact the moment your app emits an event.
Steps, delays, conditions and waits laid out visually — build a flow in minutes, edit it without fear of breaking it.
Emit any event from your app — signup, purchase, tag added — and the matching contacts enter the flow instantly.
Wait a fixed time, wait for an event, or branch on a condition — the flow runs exactly on your schedule.
See the full history of every automation run — which step it reached, when, and why it branched the way it did.
Versioned templates with variables, referenced by a readable key — no more hunting for the right template ID. Describe what you want and the AI builder drafts it, with a live preview as you tweak it.
Explore templatesSend a one-shot campaign to a whole audience or a rule-based segment — right now or scheduled for later. The same suppression and deliverability guardrails apply automatically, no extra setup.
Explore broadcastsHMAC-signed webhooks for every state change — queued, delivered, opened, bounced. Verify the signature, trust the payload.
{
"id": "evt_01J8Z3F9K2QANRC4A2F",
"type": "email.delivered",
"created_at": "2026-08-19T12:00:02.010Z",
"data": {
"message_id": "em_01J8Z3F9K2QANRC4A2F",
"to": "ada@example.com",
"subject": "Welcome to Postly"
}
}Security, deliverability and correctness aren't add-ons — they're how Postly is built.
SPF, DKIM and DMARC guidance so your mail reaches the inbox, not the spam folder.
Every write is safe to retry — the SDKs attach an idempotency key automatically.
HMAC-signed delivery events; inspect every attempt and replay one after a fix.
Bounces and complaints are suppressed automatically — you never send to dead addresses.
Every query is organization-scoped. Your data never crosses tenants.
The SDKs are generated from the same contract — always in sync with the API.

Create an account, grab an API key, and send with the SDK you already know.
No credit card required · Free tier · SDKs for Node, Python & PHP