autosendjs
v1.0.1
Published
Node.js SDK for Autosend with Resend-compatible adapter
Maintainers
Readme
AutoSend Node.js SDK
The official Node.js SDK for the AutoSend API.
Installation
npm install autosendjsor
yarn add autosendjsSetup
First, get your API key from the AutoSend Dashboard.
import { Autosend } from "autosendjs";
const autosend = new Autosend("as_xxxxxxxxxxxx");Usage
Send an email with plain text
import { Autosend } from "autosendjs";
const autosend = new Autosend("as_xxxxxxxxxxxx");
await autosend.emails.send({
from: { email: "[email protected]" },
to: { email: "[email protected]" },
subject: "Hello World",
text: "Welcome to Autosend!",
});Send an email with HTML
import { Autosend } from "autosendjs";
const autosend = new Autosend("as_xxxxxxxxxxxx");
await autosend.emails.send({
from: { email: "[email protected]" },
to: { email: "[email protected]" },
subject: "Hello World",
html: "<strong>Welcome to Autosend!</strong>",
});Send bulk emails
import { Autosend } from "autosendjs";
const autosend = new Autosend("as_xxxxxxxxxxxx");
await autosend.emails.bulk({
emails: [
{
from: { email: "[email protected]" },
to: { email: "[email protected]" },
subject: "Hello User 1",
html: "<p>Welcome!</p>",
},
{
from: { email: "[email protected]" },
to: { email: "[email protected]" },
subject: "Hello User 2",
html: "<p>Welcome!</p>",
},
],
});Manage contacts
import { Autosend } from "autosendjs";
const autosend = new Autosend("as_xxxxxxxxxxxx");
// Create a contact
await autosend.contacts.create({
email: "[email protected]",
firstName: "John",
lastName: "Doe",
listIds: ["list_abc123"],
customFields: { company: "Acme", plan: "pro" },
});
// Get a contact
await autosend.contacts.get("contact_id");
// Update or create a contact
await autosend.contacts.upsert({
email: "[email protected]",
firstName: "Jane",
});
// Delete a contact
await autosend.contacts.delete("contact_id");Configuration Options
const autosend = new Autosend("as_xxxxxxxxxxxx", {
baseUrl: "https://api.autosend.com/v1", // Custom API endpoint
timeout: 30000, // Request timeout in ms
maxRetries: 3, // Number of retry attempts
debug: false, // Enable debug logging
});Resend Adapter
AutoSend provides a drop-in replacement adapter for the Resend API:
import { Resend } from "autosendjs/resend";
const resend = new Resend("as_xxxxxxxxxxxx");
await resend.emails.send({
from: "[email protected]",
to: "[email protected]",
subject: "Hello World",
html: "<strong>It works!</strong>",
});
// Create a contact
await resend.contacts.create({
email: "[email protected]",
firstName: "John",
properties: { company: "Acme" },
});
// Get a contact
await resend.contacts.get("contact_id");
// Update a contact (by email)
await resend.contacts.update({
email: "[email protected]",
firstName: "Jane",
});
// Remove a contact
await resend.contacts.remove("contact_id");You can also use the RESEND_API_KEY environment variable:
import { Resend } from "autosendjs/resend";
const resend = new Resend(); // Uses RESEND_API_KEY env varLicense
MIT License
