Changelog

The latest product updates on Waypoint.

Jan 1, 2025

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.

GET 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 } ] }

Dec 2, 2024

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.

Tracking Screenshot on Waypoint

Nov 26, 2024

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.

Add and configure Waypoint endpoint

Oct 14, 2024

Workspaces now include improved user management and roles to support additional team flexibility. This includes:

  • A new workspace 'Owner' role.
  • Owners can reassign ownership to another admin.
  • Owners and Admins can now remove users and open invites.

As always, teams on Waypoint can add an unlimited amount of admins and users to their workspace for no additional cost.

Waypoint team members screenshot

Oct 9, 2024

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.

Message timeline

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.

GET /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.