SimplesMail

← Docs / Quickstart

Quickstart Node.js

Use o fetch nativo do Node.js 18+. Não tem SDK oficial — a API é REST+JSON simples.

1. Instalação

shell
# Nenhuma dependência. Node 18+ tem fetch nativo.
# Opcional: dotenv para carregar a chave do .env
npm install dotenv

2. Hello world — enviar 1 email

javascript
const KEY = process.env.SIMPLESMAIL_KEY; // sm_live_...

const r = await fetch("https://api.simplesmail.itbooster.com.br/v1/messages", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    from: "no-reply@suaempresa.com.br",
    fromName: "Sua Empresa",
    to: "cliente@exemplo.com",
    subject: "Bem-vindo!",
    html: "<h1>Olá!</h1><p>Sua conta foi criada.</p>",
  }),
});

const data = await r.json();
if (!r.ok) throw new Error(data.error?.message ?? "Erro");
console.log("Enviado:", data.id);

3. Listar mensagens

javascript
const r = await fetch("https://api.simplesmail.itbooster.com.br/v1/messages?limit=50&status=delivered", {
  headers: { Authorization: `Bearer ${KEY}` },
});
const { data, nextCursor } = await r.json();
console.log(`${data.length} mensagens, cursor=${nextCursor}`);

4. Criar API key

javascript
const r = await fetch("https://api.simplesmail.itbooster.com.br/v1/api-keys", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ name: "Produção webhook" }),
});
const { id, key } = await r.json();
// IMPORTANTE: 'key' só aparece nesta resposta. Guarde com segurança.
console.log("Nova API key:", key);

5. Verificar domínio

javascript
// 1) Cadastrar domínio
const create = await fetch("https://api.simplesmail.itbooster.com.br/v1/domains", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ domain: "suaempresa.com.br" }),
});
const { id, dnsRecords } = await create.json();
console.log("Publique no DNS:", dnsRecords);

// 2) Após publicar DKIM/SPF/DMARC, forçar verificação:
const verify = await fetch(`https://api.simplesmail.itbooster.com.br/v1/domains/${id}/verify`, {
  method: "POST",
  headers: { Authorization: `Bearer ${KEY}` },
});
console.log("Status:", (await verify.json()).status);

A resposta inclui os registros DNS (DKIM CNAME, SPF, DMARC) que você precisa publicar no provedor do domínio. Depois de publicar, chame POST /v1/domains/{id}/verify para forçar a verificação.

Próximos passos