Notix
Guides

Confirm new subscribers before they get a campaign.

Turn on double opt-in for a contact book, change the confirmation email, and see how pending contacts become subscribed. Every endpoint named here is in the API reference.

Double opt-in requires new contacts to confirm their email address before they become subscribed. When enabled on a contact book, newly added contacts receive a confirmation email with a verification link. Only after clicking the link do they become fully subscribed.

Why use double opt-in?

  • Ensures email addresses are valid and owned by the subscriber
  • Reduces bounce rates and spam complaints
  • Improves deliverability and sender reputation
  • Helps comply with email marketing regulations (GDPR, CAN-SPAM)

How it works

  1. A contact is added. When a contact is added to a contact book with double opt-in on (in the console, through the API or by CSV import), it is created as Pending instead of subscribed.
  2. A confirmation email goes out. The contact gets an email with a unique confirmation link, signed with HMAC-SHA256 and valid for 7 days.
  3. The contact confirms. They click the link and confirm on the confirmation page.
  4. The contact is subscribed. Their status changes from Pending to Subscribed, and they now receive your emails.

Enabling double opt-in

In the console

  1. Open Contacts and choose a contact book
  2. Turn on the Double Opt-in switch
  3. Optionally, choose Edit confirmation email to change the email
  4. Save the email

Through the API

Create a contact book with double opt-in enabled:

bash
curl -X POST "https://app.usenotix.dev/api/v1/contactBooks" \
  -H "Authorization: Bearer $NOTIX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Newsletter Subscribers",
    "doubleOptInEnabled": true,
    "doubleOptInFrom": "Newsletter <hello@yourdomain.com>",
    "doubleOptInSubject": "Please confirm your subscription"
  }'

Or enable it on an existing contact book:

bash
curl -X PATCH "https://app.usenotix.dev/api/v1/contactBooks/<contactBookId>" \
  -H "Authorization: Bearer $NOTIX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "doubleOptInEnabled": true
  }'

Contact statuses

When double opt-in is enabled, contacts have three possible statuses:

StatusDescription
SubscribedContact has confirmed their subscription and will receive emails
PendingContact has been added but hasn't confirmed yet
UnsubscribedContact has explicitly unsubscribed

Note: contacts that are Pending do not receive campaign emails. They only receive the confirmation email.

Customising the confirmation email

You can change three things about of the confirmation email:

From address

Set a custom sender address for confirmation emails. The address must use one of your verified domains.

json
{
  "doubleOptInFrom": "Newsletter <hello@yourdomain.com>"
}

If not set, the confirmation email will be sent from the first available verified domain.

Subject line

Change the subject. The default is "Please confirm your subscription".

json
{
  "doubleOptInSubject": "Confirm your subscription to our newsletter"
}

Email template

Edit the confirmation email body in the Notix email editor in the console, or send the editor's JSON content through the API.

Template variables

The following variables can be used in the confirmation email template:

VariableDescription
{{doubleOptInUrl}}The confirmation link (required)
{{email}}The contact's email address
{{firstName}}The contact's first name
{{lastName}}The contact's last name

Required: the {{doubleOptInUrl}} variable must be in the email. The confirmation email cannot be saved without it, so every confirmation email carries a working link.

Resending confirmation emails

If a contact has not confirmed, resend the confirmation email from the console:

  1. Open the contact book and find the pending contact
  2. Choose Resend confirmation email on that contact

Each resend generates a new confirmation link with a fresh 7-day expiration window.

Best practices

Best practiceWhy it helps
Set up a verified domain firstDouble opt-in emails need a verified domain before they can be sent
Keep the confirmation email simpleMakes it easier for subscribers to understand and complete the confirmation step
Use a recognizable from addressReduces the chance of the confirmation email being ignored or marked as spam
Monitor pending contactsHelps you spot low confirmation rates and improve your signup flow