Le courrier de votre app

Votre produit reçoit le courrier
et votre code répond

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.

Votre appli
Ticket 8123ticket-8123@in.yourapp.com
Ticket 8124ticket-8124@in.yourapp.com
Ticket 8125ticket-8125@in.yourapp.com
Àticket-8123@in.yourapp.com
Mon colis n'est jamais arrivé.
Deticket-8123@in.yourapp.comMême adresse
Il est en route. Le suivi est ci-dessous.

Personne n'a créé ces adresses. La réponse part de celle où le courrier est arrivé.

D'où ça part

À quoi ça ressemble aujourd'hui.

Les réponses arrivent hors du produit

Un client répond à une notification, et la réponse reste dans une boîte partagée au lieu d'être sur la fiche.

Il faut créer chaque adresse

On ne peut pas écrire à un nouveau ticket tant qu'une boîte n'existe pas, donc les adresses se créent à la main.

Votre serveur interroge en boucle

Rien ne dit à votre code qu'un message est arrivé, alors une tâche vérifie une boîte à intervalle fixe.

Comment ça marche

Opérationnel en quatre étapes.

  1. 01

    Pointez un domaine vers OpenEmail

    Ajoutez le domaine et publiez les enregistrements : chaque adresse dessus reçoit, même celles que personne n'a créées.

  2. 02

    Installez le client typé

    Ajoutez le paquet à votre app, puis posez une clé d'espace de travail que vous pourrez limiter et révoquer.

  3. 03

    Enregistrez votre point de terminaison

    Choisissez les événements, copiez le secret de signature, et répondez à chaque remise en cinq secondes.

  4. 04

    Répondez depuis votre code

    Récupérez le fil et ses fichiers par id, puis envoyez depuis l'adresse à laquelle le message a été remis.

Sur quoi ça repose

Les éléments qui font le travail.

Cela repose sur une API HTTP documentée, un client typé, des webhooks vers votre point de terminaison, le catch-all sur chaque domaine pointé ici, et votre marque, vos fichiers et vos liens suivis.

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.
Adresses fourre-tout

Toutes les adresses du domaine reçoivent, y compris celles qui n’ont jamais été créées. Un seul interrupteur referme tout.

hello@yourdomain.comremis
billing@yourdomain.comremis
careers@yourdomain.comremis
anything-at-all@yourdomain.comremis
oct-2026-signup@yourdomain.comremis
Plusieurs domaines

Pointez plusieurs domaines vers une seule boîte de réception, sous-domaines compris.

acme.comacme.devteam.acme.comhey.acme.io
Marque de l'espace de travail

Mettez votre propre marque et votre logo dans la barre latérale, à la place des nôtres.

acme.comacme.devstudio.acme.com
hello@acme.comremis
billing@acme.comremis
oct-2026-signup@acme.comremis
anything-at-all@acme.comremis
Des fichiers sur votre propre domaine

Les liens de téléchargement des fichiers que vous envoyez sur un sous-domaine de votre choix, comme files.votredomaine.com, au lieu de l'adresse OpenEmail.

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.

En pratique

Chaque élément, pas à pas.

Quatre pages plus courtes se trouvent dessous, une tâche chacune : une adresse par client, le courrier qui sort de votre code, celui qui y entre, et une adresse par test, encore à venir.

Une adresse par client

Donnez à chaque ticket, dossier ou client sa propre adresse, sans rien créer.

Ticket 8123ticket-8123@in.yourapp.com
Ticket 8124ticket-8124@in.yourapp.com
Àticket-8123@in.yourapp.com
Deticket-8123@in.yourapp.comMême adresse
L'e-mail dans votre produit

Envoyez, lisez et organisez le courrier depuis votre code avec un client typé.

awaitopenemail.emails.send({
})
idmsg_3e91c7
queuedsentdelivered
email.openedemail.clicked
L'e-mail dans votre appli

Le courrier arrivé sur votre domaine atteint votre serveur en webhook signé, quelques secondes après.

POSThooks.acme.dev/mail200
typeemail.received
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

Questions

Posées avant de s'inscrire.

Faut-il créer une adresse avant qu'elle marche ?

Non. Avec le catch-all activé, [email protected] reçoit dès qu'on lui écrit. Le courrier envoyé à des fautes de frappe et à des adresses inventées arrive aussi, et un seul interrupteur ferme le catch-all.

Comment mon code sait-il qu'un courrier est arrivé ?

Votre point de terminaison reçoit un webhook signé quelques secondes après l'arrivée du message. L'événement nomme le fil et l'adresse de remise : vous récupérez le message et ses fichiers par id.

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

Pas encore, sauf si vous écrivez en TypeScript. 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.

Le courrier de votre produit

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.

templateorder-receipt
202msg_9f2c7a14
email.sentmsg_9f2c7a14
email.deliveredmsg_9f2c7a14
email.openedmsg_9f2c7a14
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
Distribuez des adresses

Chaque formulaire veut une adresse. Donnez-en une à chacun, voyez laquelle reçoit du spam, et désactivez celle-là sans toucher au reste.

q7k2m9@domaine partagé58:12
Votre code de vérification09:41

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.