> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mailglyph.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Emails

> Send emails and validate email addresses with the MailGlyph Node.js SDK.

Use a **secret key** client for all email methods.

```ts theme={null}
import MailGlyph from 'mailglyph';

const client = new MailGlyph(process.env.MAILGLYPH_SECRET_KEY as string);
```

## Send with basic HTML

```ts theme={null}
const result = await client.emails.send({
  to: 'user@example.com',
  from: {
    name: 'MailGlyph Demo',
    email: 'hello@your-verified-domain.com'
  },
  subject: 'Welcome',
  body: '<h1>Hello</h1><p>Your SDK setup is working.</p>'
});

console.log(result.success, result.data.timestamp);
```

## Send to multiple recipients

`to` supports strings, recipient objects, or both:

```ts theme={null}
await client.emails.send({
  to: [
    'one@example.com',
    { name: 'Two', email: 'two@example.com' }
  ],
  from: 'hello@your-verified-domain.com',
  subject: 'Product update',
  body: '<p>New features are live.</p>'
});
```

## Send with template and data

```ts theme={null}
await client.emails.send({
  to: 'user@example.com',
  from: 'hello@your-verified-domain.com',
  template: 'tmpl_123',
  data: {
    firstName: 'John',
    plan: 'premium'
  }
});
```

## Send with attachments

Attachment content should be Base64-encoded:

```ts theme={null}
await client.emails.send({
  to: 'user@example.com',
  from: 'billing@your-verified-domain.com',
  subject: 'Your invoice',
  body: '<p>Invoice attached.</p>',
  attachments: [
    {
      filename: 'invoice.pdf',
      content: 'JVBERi0xLjQKJ...',
      contentType: 'application/pdf'
    }
  ]
});
```

## Send with advanced options

```ts theme={null}
await client.emails.send({
  to: 'user@example.com',
  from: { name: 'Growth Team', email: 'hello@your-verified-domain.com' },
  subject: 'Release notes',
  body: '<p>Monthly update.</p>',
  reply: 'support@your-verified-domain.com',
  name: 'Monthly newsletter',
  subscribed: true,
  headers: {
    'X-Campaign-Id': 'monthly-2026-03'
  }
});
```

## Handle typo suggestions

```ts theme={null}
const verification = await client.emails.verify('user@gmial.com');

if (verification.data.isTypo && verification.data.suggestedEmail) {
  console.log('Did you mean:', verification.data.suggestedEmail);
}
```

For bulk validation, credits, and ledger examples, see [Node.js Email Validation](https://docs.mailglyph.com/sdks/nodejs/email-validation.md).

See full endpoint details in the [Send email API reference](https://docs.mailglyph.com/api-reference/public-api/sendEmail.md) and [Email Validation API reference](https://docs.mailglyph.com/api-reference/verifications/verifyEmail.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.