Przejdź do dokumentacji
SDK

Instalacja

Jeden pakiet, zero zależności, każde serwerowe środowisko uruchomieniowe.

Instalacja

Pierwsze wydanie to 0.0.1. Każda udokumentowana operacja ma metodę, kontrola zgodności pakietu wywraca build, gdy którejś zabraknie, a API, które opakowuje, jest włączone w każdym środowisku.

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 konfiguruje współdzielonego klienta openemail jeden raz, a każdy moduł, który później zaimportuje openemail, dostaje tego klienta. Pomiń je, a pierwsze wywołanie zbuduje klienta z OPENEMAIL_API_KEY.

Rozwiązanie się send() nie znaczy, że wiadomość poszła. Wysyłka zaplanowana albo anulowalna wraca jako queued lub scheduled i rozstrzyga się później. Czytaj status, a nie fakt, że obietnica się rozwiązała.

Gdzie działa

Zero zależności czasu wykonania, na Node 20+, Bun, Deno i Cloudflare Workers. Używa globalnego fetch i niczego więcej, a możesz podać własny.

Dostarczane są i ESM, i CommonJS, każdy z własnymi deklaracjami typów, więc działa zarówno import { openemail } from '@openemail/sdk', jak i const { openemail } = require('@openemail/sdk').

Nie w przeglądarce. Klient niesie klucz API przestrzeni roboczej, który może wysyłać pocztę i czytać skrzynkę, więc odmawia startu tam, gdzie istnieją window i document. Jednorazowe skrzynki są wyjątkiem: createTempMail() nie potrzebuje klucza i działa na stronie.

To jest klient **TypeScript/JavaScript** i nie ma pakietu dla Pythona, Go, PHP ani Ruby. Z innego języka API to zwykły HTTP i JSON: szybki start niesie działające żądanie w ośmiu językach, a dokument OpenAPI wygeneruje klienta w większości pozostałych.