This feature is in private preview
This feature is in private preview and therefore is subject to change. If you would like to preview this feature please contact your customer representative or our support team
The Marketing emails API provides the ability to send marketing emails without the complexities of having to create a campaign, an audience, and then schedule it to send. It's therefore ideal for allowing your platforms and systems to send marketing emails on demand with ease.
The content of the emails can be either your own custom HTML, or you can include a triggered campaign ID to use the content of the campaign.
Marketing opt-in checks and contacts
Email marketing status is checkedThe Marketing emails API checks before sending any emails that the email address being sent to doesn't have an email marketing opt-out; if an opt-out exists then the email is not sent.
Contacts are created for unknown email addresses
If the email address that you're targeting doesn't already exist in Dotdigital, then a new contact is created and it is assumed to be subscribed to marketing emails.
You must ensure you have email marketing consent for sendsIf we don't recognize the email address sent to, we create a contact and set the email channel to
subscribed. It's important therefore that you only attempt to send to email addresses that have consented to receive email marketing.
Allow recipients to unsubscribe
List-UnsubscribeWe include the List-unsubscribe tag in the technical header of all marketing emails sent through this endpoint; you don't need to add it.
In both campaign templates and raw HTML used for sending marketing email you must include a clear and obvious way to unsubscribe from future marketing email by including Dotdigital's unsubscribe link. You can add the Dotdigital unsubscribe link to your template or HTML using the $UNSUB$ token. This will be replaced with the full URL to the correct Dotdigital unsubscribe page when sending the email.
This link is automatically included when you send using a triggered campaign ID.
In raw HTML content include the token $UNSUB$ in your HTML and we replace this with a contact specific URL to unsubscribe them from future marketing email. _
The
$UNSUB$value does not include the protocolHTTP://orHTTPS://so that you're able to control this. If unsure, use//:as the protocol and this follows the protocol used by the parent document.
Example usage of $UNSUB$:
<a href="//:$UNSUB$">Click here to <b>unsubscribe</b></a>Failure to include the
$UNSUBlink in your email will result in the send being rejected!
Other ways contacts are unsubscribed
Dotdigital also unsubscribes a contact from email marketing if:
- A contact unsubscribes through a preference centre .
- We are notified by an ISP of an unsubscribe using the List-Unsubscribe header.
For example, contacts using Gmail's subscription management function to unsubscribe. - We receive an ISP compliant related to the email sent to a contact.
- The email has hard bounced, or soft bounced a given number of times, and is considered a bad email address.
Learn more about automatic suppressions for bounced email addresses. - The contact is on our global suppression list due to being a known problematic email address.
Tracking email status
You can track the activity related to your Marketing Email API sends using either Data Firehose or the Events API. The table below illustrates what events are raised when by the Email Marketing API:
Event | Events API event raised | Firehose event raised | Applies to |
|---|---|---|---|
Email is sent successfully | message.sent |
| |
Email delivered | message.status |
| |
Email read/opened | message.status |
| |
Email soft bounced | message.status |
| |
Email hard bounced | message.status |
| |
Email failed for reasons other than a bounce such as opted out of emails | message.status |
| |
Link clicked in email | interaction.click |
| |
Unsubscribe triggered by email | interaction.unsubscribe |
| |
Unsubscribed by list subscription notification from ISP | interaction.unsubscribe |
| |
ISP Complaint received | interaction.unsubscribe |
| |
Inbound | message.received |
|
