Reçus, codes et réinitialisations

Le courrier de votre produit
de l'appel au résultat

Votre app envoie un message et OpenEmail l'expédie depuis votre domaine. Chaque appel est rattaché à la clé qui l'a fait, et chaque envoi a un résultat à lire.

Votre code
templateorder-receipt
idempotency-keyorder_10482
202msg_9f2c7a14Envoyé une fois
Votre point d'accèshooks.acme.dev
email.sentmsg_9f2c7a14
email.deliveredmsg_9f2c7a14
email.openedmsg_9f2c7a14

L'appel répond avec un identifiant de message. Chaque événement reçu par votre point d'accès porte le même.

D'où ça part

À quoi ça ressemble aujourd'hui.

Le courrier sort de votre code

Reçus, codes d'inscription et réinitialisations partent de votre backend, personne ne les tape.

Après l'envoi, plus rien

Un client dit que le code n'est jamais arrivé, et aucune trace de distribution ne permet de vérifier.

Une clé partagée, aucun journal

Tous les services envoient avec le même secret, et rien ne montre quel appel a échoué ni quand.

Comment ça marche

Opérationnel en quatre étapes.

  1. 01

    Vérifiez votre domaine

    Publiez les enregistrements affichés dans les réglages, et le domaine passe au vert dès qu'ils concordent.

  2. 02

    Créez une clé limitée

    Limitez la clé aux adresses et domaines depuis lesquels elle peut envoyer, et bornez sa portée avec un rôle.

  3. 03

    Envoyez le message

    Un appel nomme le modèle, ses valeurs et le destinataire, et une nouvelle tentative ne peut pas l'envoyer deux fois.

  4. 04

    Prenez le webhook, lisez le journal

    Votre point de terminaison reçoit chaque événement par ID du message, et le journal indique distribué, rejeté ou échec.

Sur quoi ça repose

Les éléments qui font le travail.

Cela repose sur une API documentée avec des clés limitables, un SDK typé, des webhooks vers votre point de terminaison, des modèles versionnés et les enregistrements qui soutiennent votre domaine d'envoi.

API REST

Une API HTTP documentée, avec des clés à émettre, restreindre et révoquer.

/threads?query=invoice
{ "threads": 12 }
La même boîte, qu'elle soit tenue par une personne ou par un programme.
SDK typés

Un client TypeScript d'abord, le reste ensuite.

/threads?query=invoice
{ "threads": 12 }
La même boîte, qu'elle soit tenue par une personne ou par un programme.
Webhooks

Prévient votre endpoint quand du courrier arrive, au lieu de vous obliger à l'interroger.

/threads?query=invoice
{ "threads": 12 }
La même boîte, qu'elle soit tenue par une personne ou par un programme.
Modèles

Un corps écrit une fois, versionné, et envoyé maintes fois : depuis le compositeur, depuis votre propre code ou par un agent.

PrésentationFactureRelance
Bonjour Sarah, ravi de vous avoir rencontrée à
Expéditeur vérifié

Une marque à côté de l'expéditeur quand les enregistrements publiés du domaine expéditeur concordent.

receipts@stripe.com
SPFDKIMDMARC
expéditeur vérifié
Politique DMARC

Un enregistrement de départ p=none, affiché à copier ou écrit par une synchronisation, jamais durci à votre place.

TXT_dmarc.acme.com

v=DMARC1; p=none; rua=…

Facultatifobserver seulement
Le suivi sur votre propre domaine

Les liens suivis et le pixel d'ouverture sur un sous-domaine de votre choix, comme links.votredomaine.com, au lieu de l'adresse OpenEmail.

Voyez quand le courrier que vous avez envoyé est ouvert

Si un message que vous avez envoyé a été ouvert, quand, combien de fois et quels liens ont été suivis. Actif sauf si vous le désactivez, et franc sur les mesures qu'il ne peut pas obtenir.

En pratique

Chaque élément, pas à pas.

Quatre pages plus courtes suivent le chemin : envoyer depuis votre code, lire le journal des appels, ce qui s'est passé après l'envoi, et le courrier dans un test, encore à venir.

L'e-mail de votre appli

Envoyez reçus, codes et liens de réinitialisation depuis votre code, et sachez quand ils arrivent.

templateorder-receipt
202msg_9f2c7a14
email.sentmsg_9f2c7a14
email.deliveredmsg_9f2c7a14
email.openedmsg_9f2c7a14
Surveillez votre intégration

Chaque appel d'une clé, chaque webhook envoyé, avec le code et la durée.

oe_live_7f20Renouvelée
GET/emails20061 ms
POST/emails429send_quota_exceeded
Testez vos e-mails d'inscription
Bientôt

Donnez à chaque test sa propre adresse et lisez le courrier qu'il reçoit.

signup-02@acme.com
Confirmez votre e-mail730915
signup-01@acme.com418204
signup-02@acme.com730915
Voyez ce qui suit l'envoi

Voyez ce qu'il est advenu de chaque envoi, et écartez les adresses mortes du suivant.

Distribué129
Rejeté3
Bloqué[email protected]Mis de côté

Questions

Posées avant de s'inscrire.

Qu'est-ce qui empêche un renvoi d'expédier deux fois ?

Un appel nomme le modèle, ses valeurs et le destinataire, et le rejouer n'envoie pas deux fois. L'appel répond avec un ID du message, et chaque événement reçu par votre point de terminaison porte ce même ID.

Puis-je voir ce qui s'est passé après l'envoi ?

Oui. Chaque envoi se lit distribué, rejeté, plainte ou échec, par jour, source et adresse d'envoi, et le journal des requêtes garde la méthode, le chemin, le code de statut et la durée de chaque appel d'une clé.

Y a-t-il un SDK pour mon langage ?

Pas encore, dans la plupart des cas. Le client typé est d'abord TypeScript, les autres suivront : pour l'instant, tout autre langage appelle directement l'API HTTP documentée.

À proximité

D'autres tâches pour la même boîte.

Votre produit reçoit le courrier

Chaque ticket, fiche ou client peut avoir son adresse. Le courrier envoyé là atteint votre point de terminaison en événement signé, et votre code répond depuis cette adresse.

Ticket 8123ticket-8123@in.yourapp.com
Ticket 8124ticket-8124@in.yourapp.com
Àticket-8123@in.yourapp.com
Deticket-8123@in.yourapp.comMême adresse
Confiez la boîte au logiciel

Donnez à un agent sa propre adresse et une clé limitée à ce qu'il peut faire. Il lit, étiquette, rédige et envoie, et chacun de ses appels est journalisé.

listThreadsgetThreadsearchMailsendEmail
Tout ce que vous envoyez

Écrivez-le une fois comme modèle. Envoyez-le depuis l'éditeur, depuis votre code ou le jour de votre choix, puis lisez ce qui s'est passé.

Bonjour{{firstName}}Omar
Lire les nouvelles
130Envoyé42Ouvert9Cliqué

Votre boîte de réception,
à vos conditions.

L’infrastructure e-mail pour les entreprises, l’IA, les agents et le courrier personnel. Conçue pour l’échelle, la confidentialité et le contrôle. Tout ce que l’e-mail aurait dû avoir dès le premier jour.

OpenEmail

L’infrastructure e-mail pour les entreprises, l’IA, les agents et le courrier personnel. Conçue pour l’échelle, la confidentialité et le contrôle. Tout ce que l’e-mail aurait dû avoir dès le premier jour.

© 2026 OpenEmail. Tous droits réservés.