Email channel setup (Step 1) and contact import (Step 3) can run in parallel. You don’t need to finish domain verification before importing your audience.
Send your first action-based email
Before building a campaign, verify your integration is working end-to-end with a single action-based email. This confirms your API key, channel id, and domain authentication are all correct.What you’ll do:
- Create an API key in the dashboard
- Set up an email channel with a from address and display name
- Verify your sending domain (SPF, DKIM, DMARC)
- Send one email via
POST /v1/messagesand confirm delivery
Email quickstart
Full walkthrough with curl examples and domain verification steps.
Email capabilities
Channels, deliverability, suppression, and event types.
Configure your email channel for campaigns
Action-based and subscription mail run under the same channel, but subscription mode applies additional rules: one-click unsubscribe headers, list-unsubscribe compliance, and consent enforcement.What you’ll do:
- Enable the
NEWSLETTERmessage type on your channel (in Channel settings) - Confirm your domain has a DMARC policy — required by major mailbox providers for bulk sends
- Set a default unsubscribe footer in your brand kit
- Optional: configure a custom reply-to and bounce address
Email API
Channel configuration, domain verification status, and settings.
Introduction to email
Channels, sender domains, and deliverability overview.
Build your email audience
Your campaign needs a segment — a filtered view of contacts who have valid email consent for your newsletter channel.
- CSV import
- Sync from Shopify (coming soon)
- Landing page opt-in (coming soon)
Best for: Migrating an existing list or one-time import.
- Export your current list as a CSV with at minimum: email, first name, and a consent flag.
- In the dashboard, go to Contacts → Import and upload the file.
- Map your CSV columns to contact fields and mark the consent field as
newsletter_consent. - Apply a tag (e.g.
newsletter-import-2026) during import so you can segment the new batch.
Create your email template
Templates let your design team own the email layout while developers manage the send logic. They version independently — in-flight campaigns always use the snapshot they launched with.What you’ll do:
- Go to Templates → New template
- Select your email channel and set message type to
NEWSLETTER - Build your layout using the block editor (header, hero, text blocks, CTA button, footer)
- Attach your brand kit — logo, colors, and legal footer are inherited automatically
- Preview in dark mode and on mobile before publishing
- Publish the version — campaigns reference the published snapshot
Templating
Versions, brand kits, and channel constraints.
Email subscription API
Payload structure and billing for subscription sends.
Launch your email campaign
With a verified channel, a consented segment, and a published template you’re ready to send.What you’ll do:
- Go to Campaigns → New campaign
- Set a trigger: Scheduled (specific date/time) or Manual (launch when you click)
- Select your audience segment — the builder shows estimated audience size
- Add a SEND node, select your email channel and newsletter template
- Optionally add a WAIT + CONDITION node to send a follow-up only to non-openers
- Review projected cost (number of Basic Message units × price)
- Launch — each contact gets an execution; the platform handles sending, bounce handling, and unsubscribes
- Delivery rate, open rate, click rate in the campaign dashboard
- Unsubscribes and complaints auto-update your suppression list
- Set up webhooks to receive real-time engagement events in your backend
Campaigns in depth
Node types, execution states, and the pause/resume flow.
Campaigns API
API-triggered launch, pause, and resume.
Webhooks
Delivery, open, click, and unsubscribe events.
Billing (Email)
Email billing model — all sends are Basic Message.
What comes next
A/B testing
Split your audience between subject lines or layouts with an AB_TEST node.
Multi-channel campaigns
Combine email and RCS in one flow with channel-fallback logic.
Events & analytics
Open, click, and bounce events for engagement-based campaign branching.
Consent sync
Keep consent records current across CRMs, imports, and opt-in forms.