1. Installation

Install the SDK via Composer:

npm install lettermint

2. Send your first email

Initialize the client with your API token:

import { Lettermint } from "lettermint";

const lettermint = new Lettermint({
    apiToken: "your-api-token"
});

Send your first email:

const response = await lettermint.email
  .from('John Doe <john@yourdomain.com>')
  .to('recipient@example.com')
  .subject('Hello from Lettermint')
  .text('This is a test email sent using the Lettermint Node.js SDK.')
  .send();

console.log(`Email sent with ID: ${response.message_id}`);

3. Email Features

Basic Email

Send a simple text or HTML email:

const response = await lettermint.email
    .from('John Doe <john@yourdomain.com>')
    .to('recipient@example.com')
    .subject('Your acount is ready!')
    .html('<h1>Welcome!</h1><p>Thanks for signing up.</p>')
    .text('Welcome! Thanks for signing up.')
    .send();

Multiple Recipients

Send to multiple recipients using CC and BCC:

const response = await lettermint.email
    .from('John Doe <john@yourdomain.com>')
    .to('user1@example.com', 'user2@example.com')
    .cc('manager@yourdomain.com')
    .bcc('archive@yourdomain.com')
    .subject('Monthly Newsletter')
    .html('<h1>This Month\'s Updates</h1>')
    .send();

Custom Headers and Reply-To

Add custom headers and set reply-to addresses:

const response = await lettermint.email
    .from('support@yourdomain.com')
    .to('customer@example.com')
    .replyTo('help@yourdomain.com')
    .subject('Support Ticket #12345')
    .headers({
        'X-Priority': '1',
        'X-Ticket-ID': '12345'
    })
    .html('<p>Your support ticket has been updated.</p>')
    .send();

File Attachments

Attach files to your emails:

import fs from 'fs';

// Read file content
const fileContent = fs.readFileSync('/path/to/document.pdf');
const base64Content = fileContent.toString('base64');

const response = await lettermint.email
    .from('invoices@yourdomain.com')
    .to('customer@example.com')
    .subject('Your Invoice')
    .html('<p>Please find your invoice attached.</p>')
    .attach('invoice.pdf', base64Content)
    .send();

4. Response

const response = await lettermint.email
    .from('John Doe <john@yourdomain.com>')
    .to('recipient@example.com')
    .subject('Test')
    .text('Hello!')
    .send();

console.log(`Email sent with ID: ${response.message_id}`);
console.log(`Status: ${response.status}`);

GitHub Repository

Find the complete source code, report issues, or contribute on GitHub.