Node.js (npm package)
Send emails with even less code from your Node.js application by using the Waypoint npm package. In addition to being a helpful API wrapper, this npm package provides alias functions that enforce typescript payloads.
Install the npm package
Section titled “Install the npm package”npm install @usewaypoint/client --save
Import and initialize a client
Section titled “Import and initialize a client”Learn more about setting up API keys.
const { createClient } = require("@usewaypoint/client");const client = createClient(API_KEY_USERNAME, API_KEY_PASSWORD);
Send a templated message
Section titled “Send a templated message”Learn more about sending templated emails API.
await client.emailMessages.createTemplated({ templateId: // template id example: 'wptemplate_xxxxxxxxxxxxxxxx', to: // email address of recipient, variables: // variables expected by the template,});
Code example
Section titled “Code example”const { createClient } = require("@usewaypoint/client");const client = createClient(API_KEY_USERNAME, API_KEY_PASSWORD);
client.emailMessages.createTemplated({ templateId: "wptemplate_ABc123XYZ", to: 'Jordan Isip <jordan@usewaypoint.com>', variables: { "passcode": "1234510", "expiresIn": "45 minutes" }});
Additional options for sending
Section titled “Additional options for sending”Send a sandbox message
Section titled “Send a sandbox message”Learn more about sending test emails API.
await client.sandboxEmailMessages.createTemplated({ templateId: // template id example: 'wptemplate_xxxxxxxxxxxxxxxx', to: // email address of recipient, variables: // variables expected by the template});
Send a message without a template
Section titled “Send a message without a template”Learn more about sending emails without a template API.
await client.emailMessages.createRaw({ to: // email address of recipient, subject: 'Hello', bodyHtml: '<h1>Hello world</h1>'});
Send a sandbox message without a template
Section titled “Send a sandbox message without a template”Learn more about sending test emails API.
await client.sandboxEmailMessages.createRaw({ to: // email address of recipient, subject: 'Hello', bodyHtml: '<h1>Hello world</h1>'});
Downloading/previewing a template
Section titled “Downloading/previewing a template”Learn more about downloading templates API.
await client.templates.previewHtml( 'wptemplate_RXL7zGTGsvkXzAP3', { "passcode": "1234510", "expiresIn": "45 minutes" });