Send your events
Your app already sends events to the tool you use now. Send the same events to Maqetin as well: identify() when someone signs in and track() when they do something that matters.
import { MaqetinClient } from '@maqetin/sdk-js';
const mq = new MaqetinClient({ publicKey: 'mq_live_…' });
// When someone signs in
mq.identify('u_42', { email: 'ada@example.com', firstName: 'Ada' });
// When they do something that matters
mq.track('order.placed', { total: 148, currency: 'SGD' });Run both side by side for a while. Profiles and history build in Maqetin while your current tool keeps sending.
Event names read object.action, in lower case. Ten words are reserved as the first part of a name and track() refuses them: app, install, deeplink, screen, page, push, in_app, link, message and email.
Move your contacts
Contacts move through the API. Call identify() for each person with their id, their email address and their traits.
Carry every opt-out across before the first send. Set each person's marketing-email setting from their status in your current tool, so that no one who unsubscribed gets a journey email.
Read one contact back through the API and check that its events arrived.
Move your templates
List every email you send today and the event that sends it. Rebuild each one as a template in Maqetin.
A template can print the contact's first name and any trait, the properties of the event that started a journey, and the data you pass when you send through the API. It has a default helper for a missing value.
Leave the unsubscribe link and the postal address out of your templates. Maqetin adds both in the footer, and a template author cannot remove them.
Preview each template and send a test to yourself through the API.
Rebuild each journey on the new events. A journey starts on an event, waits, checks what the person did and sends an email.
Verify your sending domain
Add your sending domain to the workspace. Maqetin shows the DNS records to publish.
| Record | Type | Host | Required |
|---|---|---|---|
| DKIM | CNAME | mq-7f3k._domainkey.mail.tamarind.sg | Yes |
| Return path | CNAME | bounce.mail.tamarind.sg | Yes |
| Tracking | CNAME | link.mail.tamarind.sg | Yes |
| DMARC | TXT | _dmarc.mail.tamarind.sg | No |
Sample: the records for mail.tamarind.sg, the sending domain of Tamarind Market, an online store in Singapore.
Three records are required: the DKIM, return-path and tracking CNAMEs. The DMARC record is optional; Maqetin checks it and does not require it.
A domain is verified when all three required records verify. Maqetin checks them again every day.
Use a subdomain you do not already send from. The records start with bounce. and link., so a domain where either name is already in use needs a different subdomain.
A from address must be on a verified sending domain of the workspace. Add the postal address of your business to the domain, because Maqetin puts it in each email.
Check before you switch on
- Send one event. Read the contact back through the API and find the event.
- Send one test email from each template. Send it to yourself and read it.
- Check the domain. Every required record shows verified.
- Check the opt-outs. Everyone who unsubscribed in your current tool has marketing email turned off.
- Switch one journey at a time. Turn the old one off when you publish the new one, so no one gets both.