Playbook · Resend
Bilingual newsletter with Resend (EN + 繁中)
Verify your domain, set signup copy, and send Broadcasts in English and Traditional Chinese.
2026-10-16
Who it’s for / not for
| For | Not for |
|---|---|
| HK / TW / overseas builders following this agent-shipping playbook hub | Bulk cold email / purchased lists (consent required — human must verify local rules) |
| People who want Dashboard Broadcasts first, API later | Teams that need a full ESP migration playbook in this draft |
| Bilingual issues (EN primary + 繁中 twin, or two Topics) | Promising subscriber counts you have not measured |
Stack (spine only)
Secondary (later): Automations welcome sequence, React Email templates, MCP for agents.
- Resend — domain verify, API key, transactional Sending + marketing Broadcasts
- Contacts / Segments / Topics — list org (Audiences docs now describe the Contacts model)
- Vercel — site signup form → add Contact (wire-up in a later page)
- Stripe Payment Links — optional paid offer mentioned in issues only after human OK
Bot vs human
| Bot does | Human must do |
|---|---|
| Draft issue outlines + this playbook | Own the domain + Resend account; add DNS records |
| Draft signup copy (EN + 繁中) for batch approve | Create API keys; never paste secrets into chat/content |
| Suggest Segment / Topic names | Click Send on Broadcasts; confirm consent language |
| Recap open/click *after* you have real metrics | You read the issue before you press Send |
| You press Send | Post social CTAs yourself in weekly batches |
Numbered steps
- Prerequisites. You need (a) a domain you own, verified with Resend; (b) a Resend API key (docs home). Human must verify: domain purchase / DNS host access (buying a domain is your call).
- Add and verify a domain (add-a-domain, domains intro). Dashboard → Domains → Add Domain → prefer a subdomain (e.g.
updates.example.com) for reputation isolation → choose sending region closest to recipients → copy DKIM / SPF exactly into DNS → wait (often ~15 minutes; can take up to 72 hours) → optionally add DMARC after verify. Do not proxy CNAMEs (e.g. Cloudflare orange cloud) or verification can fail. - Create an API key. Needed for app / Vercel signup wiring later. Store only in env vars on machines you control. Bot does not need the live key to draft content.
- Understand email types. Transactional Sending is event-driven (emails intro). Broadcasts are newsletters, changelogs, launches (broadcasts intro). This playbook’s newsletter = Broadcasts.
- Contacts, Segments, Topics (audiences/contacts intro). Contact = one email. Segment = internal grouping for who receives a Broadcast (a Contact must belong to a Segment). Topic (optional) = recipient-visible preference so people can unsubscribe from one topic. Suggested starter: Segment
playbook-subscribers; Topicsen-newsletter,zh-newsletter(or one Topicnewsletter+ bilingual body). Human must verify: which bilingual strategy you want before first send. - Add Contacts. Dashboard: Audience → Add contacts → Add Manually or CSV; or Contacts API / CLI / Automations. Email is required; assign a Segment.
- Compose a Broadcast. Create a draft in the no-code editor; you can send yourself a test before Contacts exist, but you need a Segment before the real send. Pick Segment + optional Topic. Schedule or send.
- Bilingual pattern (pick one for v1). A. One Broadcast, EN first + 繁中 section below. B. Two Broadcasts / Topics (
en-newsletter/zh-newsletter). Bot drafts both languages; you approve the batch. - Add a Contact. In the Dashboard, or from your own server action, add the address to a Segment. A manual Dashboard add is enough while you are setting the list up.
- Measure without lying. Broadcasts Dashboard shows delivery / open / click when tracking is enabled. Cite only numbers you actually exported. No “join 10k”.
Failure modes / HK caveats
- No domain yet — Resend requires a domain you own. Buying one is your decision.
- DNS / MX conflicts — subdomain is usually safer for marketing mail.
- resend.dev limits — do not use shared
resend.devfor arbitrary recipients; use your verified domain for real subscribers. - Consent — HK PDPO / marketing consent expectations: human must verify; this page is not legal advice.
- Audiences → Contacts rename — older “Audience” tutorials map to current Contacts + Segments docs.
- Unsubscribe — don’t remove footers. Respect global unsubscribes.
- Spam / warm-up — sudden volume to cold addresses hurts; start small. Not inventing rates here.
- You press Send — you post, and you press Send.
Newsletter CTA
Next checklist: Segments and Contacts, then Broadcast drafts.
Human must verify
- Domain registrar + DNS edit access; subdomain choice; region selection.
- DKIM/SPF/DMARC records match Resend exactly; no proxied CNAME.
- API key storage (env only); rotation if leaked.
- Opt-in / consent wording for HK (and any other) recipients — legal review if needed.
- Bilingual strategy A vs B before first Broadcast.
- Open/click tracking enabled only if you accept the privacy tradeoff.
- You decide what goes in the issue before you press Send.
- Exact Resend pricing / quotas for your plan (not quoted here — check Billing docs when you subscribe).
Doc gaps
Pricing / free-tier limits are not copied here (check Resend Billing). Exact PDPO marketing-email rules are not in Resend docs — confirm with counsel if you need to. Not legal advice.
Docs cited
- Resend docs introduction · 2026-10-16
- Contacts / Audiences introduction · 2026-10-16
- Add and verify a domain · 2026-10-16
- Verified Domains · 2026-10-16
- Sending Broadcasts · 2026-10-16
- Sending Emails (transactional) · 2026-10-16