Skip to content

Managing domains

The Manage Domains API is in beta. The API and features may change before general availability.

The Manage Domains API lets you programmatically register and verify custom email domains for use with Transactional Send and Nylas Inbound. You can also manage domains through the Nylas Dashboard.

Before you can use the Manage Domains API, you need:

  • A Nylas Service Account for authenticating requests. Contact Nylas Support to get your credentials file.
  • A contract with Nylas that includes domain management capabilities.

All Manage Domains API requests use Nylas Service Account authentication, which requires cryptographic request signing with four custom headers (X-Nylas-Kid, X-Nylas-Timestamp, X-Nylas-Nonce, X-Nylas-Signature).

To register a domain, make a POST /v3/admin/domains request with the domain name and address.

It’s recommended to use a subdomain like mail.example.com or notifications.example.com for transactional sending. This keeps your transactional email separate from your main domain and makes DNS management easier.

After registering a domain, you must verify its DNS records before you can use it. The verification process has three steps:

  1. Call the Get domain info endpoint to retrieve the DNS records you need to add.
  2. Add the DNS records at your DNS provider.
  3. Call the Verify domain endpoint to trigger Nylas’ verification check.

Call POST /v3/admin/domains/{domain_id}/info with the verification type to get the DNS records you need to configure.

Some DNS record values are temporary and expire. Always call the /info endpoint to get fresh values before configuring DNS records. If a record has expired, calling /info again returns updated values.

After you add the DNS records at your provider, call POST /v3/admin/domains/{domain_id}/verify to trigger the verification check.

Configure DNS records before calling /verify. It is recommended to first configure the DNS settings and then make the first call to the /verify endpoint to avoid DNS caching issues. If verification fails and your configuration is correct, wait up to 24 hours (usually resolved within minutes, depending on TTL).

Different verification types are required depending on how you plan to use the domain.

TypeRequired forDescription
ownershipAll domainsA TXT record that proves you control the domain. Required before any other verifications.
dkimTransactional SendA TXT record that verifies the DKIM public key for authenticating outgoing mail.
spfTransactional SendA TXT record that authorizes Nylas to send email on your behalf.
feedbackTransactional SendAn MX record that enables bounce detection and feedback loop reporting.
mxNylas InboundAn MX record that routes incoming mail to Nylas.

Nylas also tracks dmarc and arc verification, but does not currently enforce them. Setting up DMARC and ARC records is recommended for better deliverability.

For Transactional Send, verify: ownership, dkim, spf, and feedback.

For Nylas Inbound, verify: ownership and mx.

To list all domains registered to your organization, make a GET /v3/admin/domains request.

The response includes cursor-based pagination. If the response includes a next_cursor value, pass it as the page_token query parameter to retrieve the next page.

To get a specific domain, make a GET /v3/admin/domains/{domain_id} request.

To update a domain’s name, make a PUT /v3/admin/domains/{domain_id} request.

Only the name field can be updated. The domain_address cannot be changed after the domain is created. To use a different domain address, delete the domain and create a new one.

To delete a domain, make a DELETE /v3/admin/domains/{domain_id} request.

Deleting a domain is irreversible. Any inboxes or sending configurations that use this domain stop working immediately.