Saltar para a documentação
SDK

Instalar

Um pacote, sem dependências, todos os runtimes de servidor.

Instalar

A primeira versão é a 0.0.1. Todas as operações documentadas têm um método, a verificação de paridade do pacote falha o build quando alguma fica de fora, e a API que envolve está ativa em todos os ambientes.

pnpm add @openemail/sdk
send-email.ts
import { init, openemail } from '@openemail/sdk' init({ apiKey: process.env.OPENEMAIL_API_KEY }) const email = await openemail.emails.send({  from: 'Acme Billing <[email protected]>',  to: '[email protected]',  subject: 'Your September invoice',  html: '<p>Invoice attached.</p>',}) console.log(email.id, email.status)

init configura uma vez o cliente openemail partilhado, e todos os módulos que importem openemail depois disso recebem esse cliente. Se o saltar, a primeira chamada constrói o cliente a partir de OPENEMAIL_API_KEY.

O send() resolver não significa que a mensagem partiu. Um envio agendado ou cancelável volta como queued ou scheduled e resolve-se mais tarde. Leia status, e não o facto de a promise ter resolvido.

Onde corre

Zero dependências em runtime, em Node 20+, Bun, Deno e Cloudflare Workers. Usa o fetch global e mais nada, e pode passar-lhe o seu.

ESM e CommonJS são ambos distribuídos, cada um com as suas declarações de tipos, por isso import { openemail } from '@openemail/sdk' e const { openemail } = require('@openemail/sdk') funcionam os dois.

Não num browser. O cliente transporta uma chave de API de workspace que pode enviar correio e ler a caixa de correio, por isso recusa-se a arrancar onde window e document existem. As caixas descartáveis são a exceção: createTempMail() não precisa de chave e corre numa página.

Este é um cliente **TypeScript/JavaScript**, e não há pacote para Python, Go, PHP ou Ruby. A partir de outra linguagem, a API é HTTP e JSON simples: o guia de início rápido traz um pedido funcional em oito linguagens, e o documento OpenAPI gera um cliente na maioria das restantes.