Updated docs
Our docs have been refreshed with updated guides, improved navigation, and a smarter search.
Our docs have been refreshed with updated guides, improved navigation, and a smarter search.
With our new API endpoint, you can now get a report with all of the email messages that were sent through an email batch. See the full context for each of your emails in your batch including delivery events like bounces, clicks, and complaints.
v1/batches/BATCH_ID/email_messages?offset=0
Example request:
curl "https://live.waypointapi.com/v1/batches/batch_RmETGV42naFpgHjr/email_messages" \-H "Content-Type: application/json" \-u "API_KEY_USERNAME:API_KEY_PASSWORD"
Response
{ "data": [ { "id": "em_45TWBJqcvwHLoDq5", "type": "EmailMessage", "createdAt": "2024-12-31T14:58:36.896Z", "updatedAt": "2024-12-31T15:58:15.008Z", "source": "BATCH", "status": "SUCCEEDED", "processedAt": null, "waypointTemplateId": "wptemplate_WVWNrT7e2yFhnnMv", "variables": { "message": "hello from a batch" }, "to": ["\"Jordan Isip\" <jordan@usewaypoint.com>"], "cc": [], "bcc": [], "from": "Waypoint <support@usewaypoint.com>", "replyTo": "", "sentAt": "2024-12-31T14:58:43.775Z", "deliveredAt": "2024-12-31T14:58:44.805Z", "firstOpenedAt": "2024-12-31T14:58:45.927Z", "lastOpenedAt": "2024-12-31T15:58:14.801Z", "firstClickedAt": null, "lastClickedAt": null, "firstComplainedAt": null, "lastComplainedAt": null, "firstBouncedAt": null, "lastBouncedAt": null, "erroredAt": null, "lastSuppressedAt": null, "lastUnsubscribedAt": null }, { "id": "em_HKbSarUFc391Cng3", "type": "EmailMessage", "createdAt": "2024-12-31T14:58:36.962Z", "updatedAt": "2024-12-31T15:19:51.765Z", "source": "BATCH", "status": "SUCCEEDED", "processedAt": null, "waypointTemplateId": "wptemplate_WVWNrT7e2yFhnnMv", "variables": { "message": "hello from a batch" }, "to": ["\"Carlos Rodriguez\" <carlos@usewaypoint.com>"], "cc": [], "bcc": [], "from": "Waypoint <support@usewaypoint.com>", "replyTo": "", "sentAt": "2024-12-31T14:58:43.781Z", "deliveredAt": "2024-12-31T14:58:45.076Z", "firstOpenedAt": "2024-12-31T14:58:45.727Z", "lastOpenedAt": "2024-12-31T15:19:51.609Z", "firstClickedAt": null, "lastClickedAt": null, "firstComplainedAt": null, "lastComplainedAt": null, "firstBouncedAt": null, "lastBouncedAt": null, "erroredAt": null, "lastSuppressedAt": null, "lastUnsubscribedAt": null } ]}
By default, Waypoint tracks events for clicks and opens. This allows teams to gather insights around activity within individual emails.
To track opens, Waypoint places a 1x1 pixel transaprent image within each message to track every time someone opens an email. To track clicks, Waypoint modifies (and masks) all links in a message to use a proxy URL to record the click before redirecting to the destination.
Due to these tradeoffs, teams may decide to turn these tracking settings off. These options can now be configured directly within your workspace settings page.
One of our most requested features is now available – webhooks. Webhooks are how services notify each other of events. On Waypoint, customers can use webhooks take action after an email event like a ‘bounce’ or ‘delivery’ has happened.
For example, posting a notification in a Slack channel whenever an email bounces or is marked as spam.
Add custom webhook endpoint URLs or use our Slack and Zapier integrations to make it even easier to connect and transform your data as needed.
Workspaces now include improved user management and roles to support additional team flexibility. This includes:
As always, teams on Waypoint can add an unlimited amount of admins and users to their workspace for no additional cost.
Our new API endpoint gives teams the ability to access the full timeline of events on an individual email message. These events include when the message was created, every open, click, bounce, or any other event found in our email event message logs.
This is especially helpful for teams that want to show this timeline of events to their own customers. For example, a CRM software platform may want to show these delivery events to help their customers better understand deliverability.
/v1/email_messages/EMAIL_MESSAGE_ID/events
Example response:
{ "meta": { "count": 5, "page": 1, "limit": 50 }, "data": [ { "id": "log_Davifvij7cBN96r9", "type": "EmailMessageLog", "createdAt": "2024-08-23T18:10:21.868Z", "updatedAt": "2024-08-23T18:10:21.868Z", "code": "EMAIL_MESSAGE_OPEN_SES_EVENT", "message": "Email was opened by a recipient at IP address 66.249.91.165. User agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.246 Mozilla/5.0" }, { "id": "log_8MXy5akcYqwXL7YJ", "type": "EmailMessageLog", "createdAt": "2024-08-23T18:10:20.215Z", "updatedAt": "2024-08-23T18:10:20.215Z", "code": "EMAIL_MESSAGE_DELIVERED_SES_EVENT", "message": "Email successfully delivered to jordan@usewaypoint.com. Delivery time: 2 seconds." }, { "id": "log_YcTNPR5MYjRpaEh8", "type": "EmailMessageLog", "createdAt": "2024-08-23T18:10:19.184Z", "updatedAt": "2024-08-23T18:10:19.184Z", "code": "EMAIL_MESSAGE_SENT_SES_EVENT", "message": "Email was sent." }, { "id": "log_nUHH2sZVhZhkKb5N", "type": "EmailMessageLog", "createdAt": "2024-08-23T18:10:19.147Z", "updatedAt": "2024-08-23T18:10:19.147Z", "code": "EMAIL_MESSAGE_RENDERED", "message": "Email was processed by Waypoint." }, { "id": "log_DkonKJ4aLgJS6Kgr", "type": "EmailMessageLog", "createdAt": "2024-08-23T18:10:19.032Z", "updatedAt": "2024-08-23T18:10:19.032Z", "code": "EMAIL_MESSAGE_CREATED", "message": "Email message was created." } ]}
Learn more in our API reference.
Waypoint’s new dynamic colors feature allow teams to theme email templates based on data. This is especially useful for vertical SaaS platforms (eg. software for yoga studios) that want to apply their customer’s branding and colors on email templates instead of their own. View an example/tutorial.
At the heart of Waypoint’s template builder is the use of data variables to apply the dynamic elements of a template. While these variables are most often used for dynamic text and images, they can now be used to set dynamic colors on a template or layout.
From a template or layout builder, simply click on the {}
icon next to a color within the global ‘Styles’ tab to set a theme color override based on data. Example: {{company.brandColor}}
.
Track usage (and any overages) easier on Waypoint.
All of our subscription tiers come with a base set of emails included on each plan. For example, our starter plan includes 10,000 live emails sends. To help teams better track usage, we’ve added a simple report within the billing section on your workspace settings page.
Additionally, any overages are now automatically calculated and billed as part of your monthly invoice.
Note: If you are currently on a paid workspace and not seeing this, you should see it at the start of your next invoice cycle.
Teams can now preview a Waypoint email template via API. This is especially helpful for teams that want to show a preview of an email (within their platform) before sending through Waypoint. For example, an invoicing platform.
Use the new endpoint and optionally pass in custom data or with your template’s test data to get the processed HTML template as a response.
/v1/templates/TEMPLATE_ID/preview
Learn more in our API reference for template previewing.
Display money values in your templates without the headaches. Teams can now convert numbers to formatted and localized currency strings with our new ‘currency’ Liquid templating filter.
Waypoint template builder using the new Liquid currency filter to format the variable output of 10.5
to $10.50
(defaults to USD).
Learn more about using Liquid templating on Waypoint.
To help devs monitor and debug Waypoint API requests, we’ve revamped our API requests troubleshooting page to include additional log information and permalinks to each request.
We’ve released a free and open source community version of our much-loved email template builder.
We call it EmailBuilder.js – a powerful block-based email builder that takes the best parts of other open source libraries like Editor.js and email component libraries and puts them into an easy to use no-code builder that dev teams can extend and self-host.
Learn more:
Typos or simple syntax issues can easily happen when working with dynamic data on email templates. This can be frustrating if you’re unable quickly diagnose the problem. This is why we’ve added new error messages at the block level to help you get back on track quickly.
Waypoint now supports unsubscribes. Teams can now use ‘unsubscribe groups’ to append an unsubscribe link to a related set of emails.
If a contact clicks the unsubscribe link, they will be opted-out and will not receive any additional emails with the matching unsubscribe group.
Since Waypoint manages the unsubscribes and the unsubscribe page, teams can give their users the option to unsubscribe from a set of emails with a single line of code.
‘Raw’ templates are now available from a new Waypoint API endpoint.
This means teams can now build email templates visually on Waypoint and then use our new API endpoint to programmatically grab the template with ready-to-process templating system (LiquidJS) with variables, loops, conditionals, and more.
This is especially useful for teams sending sensitive data (eg. HIPAA compliance) and want to store email templates within their codebase.
Starting with a blank template is always a challenge. This is why we’ve added 20+ more ready-to-edit templates on Waypoint. These templates cover a wide range of product-triggered emails that are commonly used across marketplaces, SaaS, and e-commerce applications. Use them to either get started faster or simply to serve as inspiration for your own templates.
Simply choose from one of our new samples while creating a new template on Waypoint:
Not using Waypoint yet? View these templates on our new templates gallery page. You can even download a free HTML export of the template for your own use!
Sending a weekly report or recommendations email? Waypoint now supports batch email sending on our API so you can send multiple emails with highly personalized content with a single API call. Learn more in our docs.
curl "https://live.waypointapi.com/v1/sandbox/email_messages_batch" \ -H "Content-Type: application/json" \ -u "API_KEY_USERNAME:API_KEY_PASSWORD" \ -d '{ "emailMessages": [ { "templateId": "wptemplate_RXL7zGTGsvkXzAP3", "to": "Jordan Isip <jordan@usewaypoint.com>", "variables": { "username": "fixie" } }, { "templateId": "wptemplate_RXL7zGTGsvkXzAP3", "to": "Carlos Rodriguez <jordan@usewaypoint.com>", "variables": { "username": "cohitre" } } ] }'
Sometimes while building email templates, you realize that certain sections would be better organized differently. Maybe it’s adding a parent container with a border or changing the layout to be presented in multiple columns. To help teams iterate faster, we’ve added drag and drop within our new Navigator feature. This means your team can now easily reorder and restructure blocks with a simple drag and drop.
When creating email templates that have complex layouts, it can quickly become a challenge to navigate in and around blocks. To help with this, we’re introducing a new feature that we call “Navigator”. Simply toggle the Navigator on and you’ll see a tree view of your blocks which give you and your team an easier way to find and navigate to specific blocks while building.
New border options on container blocks. Sometimes you want to give a little more emphasis to certain sections. You can now set the border color and border radius on containers to do this. Simply use the color picker and sliders after selecting a container.