This guide takes you from a new project to a delivered email. You need access to your domain's DNS settings.

  1. Add a sending domain

    In the dashboard, open Email → Domains and add a subdomain you control, such as mail.example.com. Nexiom Connect sends from subdomains so your root domain's existing email keeps working.

    You can also create the domain with the API.

  2. Publish the DNS records

    Copy each record shown for the domain into your DNS provider: the DKIM records, the bounce-handling MX and SPF records, and the optional DMARC record. Use the exact names and values from your dashboard.

    Records usually propagate within minutes. Nexiom Connect re-checks pending domains automatically, and you can select Check status at any time. Provider-specific steps are in DNS provider setup.

  3. Create an API key

    Open API keys and create a key with the Email send only permission. Copy the key when it is shown — it starts with nc_ and is displayed only once.

    Store it as an environment variable on your server:

    .env
    NEXIOM_API_KEY=nc_your_api_key
  4. Send an email

    Send from an address on your verified domain. The Idempotency-Key header makes the request safe to retry.

    import { NexiomConnect } from '@nexiom/connect';
    
    const nexiom = new NexiomConnect({ apiKey: process.env.NEXIOM_API_KEY });
    
    const { data, error } = await nexiom.emails.send(
      {
        from: 'hello@mail.example.com',
        to: 'reader@example.com',
        subject: 'Welcome',
        text: 'Thanks for joining us.',
      },
      { idempotencyKey: 'welcome-user-123' },
    );
    
    if (error) {
      throw new Error(error.message);
    }
    
    console.log(data.messageId);

    A 202 Accepted response means the email is queued. It includes a messageId and one delivery ID per recipient.

  5. Check the delivery

    Open Email → Email logs to see the delivery move from queued to delivered, or retrieve it with the API. To be notified instead, add a webhook for email.delivered and email.bounced.

Next steps

Nexiom Connect
Open dashboard