Skip to content
Skip to main content

Quickstart: Transactional Send (Beta)

Transactional Send lets you send emails directly from a domain you’ve verified with Nylas, without needing to authenticate individual users or create grants. It’s designed for system notifications, password resets, account verifications, and other automated emails that come from your application rather than a specific user account.

The endpoint works just like the regular message send endpoint, but instead of using a grant route (/v3/grants/{grant_id}/messages/send), you use a domain route: /v3/domains/{domain_name}/messages/send. Same message structure, same fields — you’re just sending from a verified domain rather than through a user’s authenticated account.

You need a Nylas API key. If you haven’t set up your account yet:

You do not need a grant for transactional sending — that’s the whole point. You just need a verified domain.

Before you can send transactional emails, you need a domain that Nylas has verified. You can use Nylas’ free nylas.email domain for testing, or verify your own custom domain.

Nylas provides a free domain in the format <your-application-name>.nylas.email that you can use right away without any DNS setup. If your application is named “my-app”, for example, you can send from addresses like [email protected] or [email protected].

If you want to use your own domain for better branding and control, you’ll need to verify it with Nylas first. Navigate to your Organization Settings in the Dashboard and add your domain. Nylas will generate the DNS records you need to add, and once those propagate, you can click ‘Verify’ to enable the domain for sending. You can also manage domains programmatically using the Manage Domains API.

It’s usually best to use a subdomain like mail.yourcompany.com or notifications.yourcompany.com for transactional sending. This keeps your transactional emails separate from your main domain, helps maintain your main domain’s sender reputation, and makes DNS management easier.

The request body is identical to what you’d use with the regular message send endpoint — you include to, from, subject, body, and any other fields you need.

Every transactional send request requires a from address that uses your verified domain. If you also have a Nylas Agent Account on that domain, replies are delivered to the Agent Account’s mailbox automatically. Otherwise, include a reply_to address that points to a mailbox you monitor, because there is no default mailbox to receive replies.

The difference is the URL path and declaring the from address: instead of /v3/grants/{grant_id}/messages/send, you’re using /v3/domains/{domain_name}/messages/send with your verified domain name. Everything else works the same way.

If you’re using a new domain, you might want to check out our guide on warming up your email domain to improve deliverability.