Broadcast email API

Broadcast Email API for product updates from your app

Ship a changelog, launch note, or newsletter from the same API your product already uses. NoticeAPI stores the audience, merge fields, schedule, and recipient outcomes so every broadcast is inspectable after it fans out.

Create and send a broadcast
curl -X POST \
  https://www.noticeapi.com/api/v1/broadcasts \
  -H "Authorization: Bearer ntc_xxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "audienceId": "aud_123",
    "from": "Acme News <[email protected]>",
    "subject": "June changelog",
    "html": "<p>Hi {{{FIRST_NAME}}}, filters are live.</p>"
  }'

curl -X POST \
  https://www.noticeapi.com/api/v1/broadcasts/brd_123/send \
  -H "Authorization: Bearer ntc_xxxxxxxxxxxxxxxxxxxx"

# -> { "ok": true, "status": "sending", "recipients": 1240 }

Audience-backed sends

Create audiences, upsert contacts, store merge fields, and fan out one update with an individual record for each recipient.

Draft, schedule, send

Create the draft, schedule or cancel it, or send immediately after quota and domain checks pass.

Unsubscribe handling

Place the unsubscribe merge tag yourself or let NoticeAPI append the footer; one-click headers ship with audience sends.

Recipient-level stats

Delivery, bounce, complaint, suppression, unsubscribe, and optional tracking events land in stats, logs, timelines, and webhooks.

Audience controls

The update fans out. The evidence stays attached.

Keep membership, merge fields, schedules, unsubscribe behavior, suppressions, stats, and signed webhook outcomes next to the API that sends the message.

Read acceptable use

How it works

From audience state to recipient outcomes.

Create an audience

Group subscribed contacts by product, newsletter, launch list, or customer lifecycle segment.

Upsert contacts and merge fields

Use the contacts API to add recipients, update subscription state, and store merge fields such as first name.

Draft or schedule the broadcast

Write HTML or text with merge tags, then send immediately or schedule delivery up to 30 days ahead.

Inspect the fan-out

The send path checks quota, domain readiness, recipient state, and suppressions before stats and webhooks update.

Trust

Safety is in the send path.

Audience sends skip unsubscribed and suppressed contacts, add List-Unsubscribe and one-click handling, and share suppressions with transactional sends.

Implementation links

Build with the shipped docs.

FAQ

Questions developers ask before switching email.

Can I send newsletters and product updates?

Yes, for recipients who subscribed or otherwise asked for updates. Broadcasts are built for product updates, newsletters, announcements, and lifecycle messages with unsubscribe handling.

Can I schedule a broadcast for later?

Yes. Create a broadcast with scheduledAt, or schedule and reschedule a draft through the broadcast API. Scheduled broadcasts still run domain, quota, recipient-state, and suppression checks at send time.

Do unsubscribed contacts receive future broadcasts?

No. Unsubscribed contacts are skipped automatically and remain skipped unless they re-opt in.

Start in the sandbox, then send from a verified domain.

Free includes simulator testing and 3,000 emails per month. Real sending on Free needs operator activation plus a verified domain; Pro adds more volume, domains, contacts, automation runs, REST attachments, and visible usage billing.