SDK typés
L’API, en méthodes typées.
@openemail/sdk est un client TypeScript sans dépendances pour l’API OpenEmail, vérifié par rapport à son document OpenAPI à chaque build.
En bref
Qu’est-ce qu’un SDK ?
Un SDK, ou kit de développement logiciel, enveloppe une API HTTP dans les fonctions et les types d’un langage. Vous appelez des méthodes au lieu de construire des requêtes, et votre éditeur vérifie les arguments avant tout envoi.
0
Dépendances d’exécution
30s
Délai par tentative
2
Relances des appels répétables
Comment ça marche
Vérifié par rapport à l’API à chaque build
Un contrôle de parité lit le document OpenAPI et fait échouer le build au moindre écart : une méthode manquante, une méthode sans opération ou une mauvaise portée.
La pagination sans boucle de curseur
iterate() suit le curseur et ne récupère chaque page que lorsque votre boucle l’atteint : un break arrête donc les requêtes.
Des relances sans double envoi
Les appels répétables ont droit à deux relances au plus, avec un délai croissant. Un envoi garde la même clé d’idempotence pour toutes, et une relance renvoie donc le message d’origine.
Envoyez votre premier e-mail
Installez-le avec bun add @openemail/sdk et renseignez dans OPENEMAIL_API_KEY une clé créée dans Paramètres, Clés API.
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)Ce que vous obtenez
Déjà dans le produit
Node, Bun et Deno
Node 20 ou plus récent, ESM ou CommonJS, et il accepte votre propre fetch.
Des clés vérifiées tôt
Une clé au mauvais préfixe lève une erreur dès la construction, pas sous forme de 401.
Un client, plusieurs espaces de travail
Passez apiKey sur un seul appel pour agir pour un autre espace de travail.
Des erreurs à tester
OpenEmailApiError porte status, code et requestId, ainsi que isRateLimited et isNotFound.
Bonnes pratiques
En tirer le meilleur parti
- 01
La clé dans l’environnement
Définissez OPENEMAIL_API_KEY et laissez le client partagé la lire : aucune clé ne reste dans le code source.
- 02
Créez un seul client
Créez le client une fois, dans son propre module, et importez-le ailleurs.
- 03
Lisez le statut
Un envoi résolu peut encore être en file, programmé ou en échec : lisez status avant de le considérer comme remis.
Où en est-on
Bon à savoir
- Publication automatique
- La publication est manuelle : une version arrive sur npm quand quelqu’un la lance, pas quand le changement est intégré.
- Autres langages
- TypeScript uniquement. Pas encore de client Python, Go ou Ruby.
Questions
On nous demande souvent
Pour aller plus loin
Fonctionne bien avec
Commencer
Votre domaine,
votre courrier.
Pointez un domaine vers OpenEmail et lisez son courrier dans une boîte mail pensée pour lui. Le forfait gratuit couvre un domaine.