Die Mail, die Ihr Produkt sendet
vom Aufruf bis zum Ergebnis
Ihre App schickt eine Nachricht, und OpenEmail sendet sie von Ihrer eigenen Domain. Jeder Aufruf steht beim Schlüssel, der ihn gemacht hat, und jeder Versand hat ein Ergebnis zum Nachlesen.
Der Aufruf antwortet mit einer Nachrichten-ID. Jedes Ereignis an Ihrem Endpunkt trägt dieselbe ID.
Wo es anfängt
Wie das heute aussieht.
Die Mail kommt aus Ihrem Code
Belege, Anmeldecodes und Passwort-Resets verschickt Ihr Backend, kein Mensch tippt sie.
Nach dem Versand kommt nichts zurück
Ein Kunde sagt, der Code sei nie angekommen, und es gibt kein Zustellprotokoll zum Nachsehen.
Ein geteilter Schlüssel, kein Aufrufprotokoll
Jeder Dienst sendet mit demselben Geheimnis, und nichts zeigt, welcher Aufruf wann fehlgeschlagen ist.
So funktioniert es
In vier Schritten startklar.
- 01
Domain verifizieren
Veröffentlichen Sie die Einträge aus den Einstellungen. Die Domain wird grün, sobald sie stimmen.
- 02
Eingegrenzten Schlüssel ausstellen
Begrenzen Sie den Schlüssel auf die Adressen und Domains, von denen er senden darf, und deckeln Sie mit einer Rolle, was er erreicht.
- 03
Die Nachricht abschicken
Ein Aufruf nennt die Vorlage, ihre Werte und den Empfänger, und ein zweiter Versuch sendet sie nicht doppelt.
- 04
Webhook annehmen, Protokoll lesen
Ihr Endpunkt hört jedes Ereignis mit der Nachrichten-ID, und das Protokoll zeigt zugestellt, unzustellbar oder fehlgeschlagen.
Worauf es läuft
Die Teile, die die Arbeit machen.
Es läuft auf einer dokumentierten API mit eingrenzbaren Schlüsseln, einem typisierten SDK, Webhooks an Ihren Endpunkt, versionierten Vorlagen und den Einträgen, die hinter Ihrer Versanddomain stehen.
Eine dokumentierte HTTP-API mit Schlüsseln, die sich ausstellen, eingrenzen und widerrufen lassen.
Zuerst ein TypeScript-Client, dann der Rest.
Sagt dem Endpunkt Bescheid, wenn Mail ankommt, statt Polling zu verlangen.
Ein einmal geschriebener Text, versioniert und vielfach gesendet: aus dem Composer, aus eigenem Code oder von einem Agenten.
Ein Zeichen neben dem Absender, wenn die veröffentlichten Einträge der Absenderdomain zusammenpassen.
Ein p=none-Eintrag für den Anfang, zum Kopieren ausgegeben oder von einer Synchronisierung geschrieben, nie ungefragt verschärft.
v=DMARC1; p=none; rua=…
In der Praxis
Jeder Teil, Schritt für Schritt.
Vier kürzere Seiten gehen den Weg durch: aus dem eigenen Code senden, das Aufrufprotokoll lesen, was nach dem Versand passierte, und Mail in einem Testlauf, die noch kommt.
Senden Sie Belege, Codes und Passwort-Links aus Ihrem eigenen Code, und erfahren Sie, wann sie ankommen.
Jeder Aufruf eines Schlüssels, jeder gesendete Webhook, mit Code und Dauer.
Geben Sie jedem Testlauf eine eigene Adresse und lesen Sie die Mail, die er bekommt.
Fragen
Vor der Anmeldung gestellt.
Was verhindert, dass ein zweiter Versuch dieselbe E-Mail doppelt sendet?
Ein Aufruf nennt die Vorlage, ihre Werte und den Empfänger, und ein erneuter Versuch sendet nicht zweimal. Der Aufruf antwortet mit einer Nachrichten-ID, und jedes Ereignis, das Ihr Endpunkt hört, trägt dieselbe ID.
Kann ich sehen, was nach dem Versand passiert ist?
Ja. Jeder Versand liest sich als zugestellt, unzustellbar, beschwert oder fehlgeschlagen, nach Tag, Quelle und Absendeadresse, und das Anfrageprotokoll hält Methode, Pfad, Statuscode und Dauer für jeden Aufruf eines Schlüssels.
Gibt es ein SDK für meine Sprache?
Meistens noch nicht. Der typisierte Client kommt zuerst für TypeScript, die anderen folgen, also ruft jede andere Sprache vorerst direkt die dokumentierte HTTP-API auf.
In der Nähe
Weitere Aufgaben für dasselbe Postfach.
Jedes Ticket, jeder Datensatz und jeder Kunde kann eine eigene Adresse haben. Mail dorthin erreicht Ihren Endpunkt als signiertes Ereignis, und Ihr Code antwortet als diese Adresse.
Geben Sie einem Agenten eine eigene Adresse und einen Schlüssel, begrenzt auf das, was er darf. Er liest, setzt Labels, entwirft und sendet, und jeder Aufruf wird protokolliert.
Einmal als Vorlage schreiben. Aus dem Editor senden, aus dem eigenen Code oder an einem Tag, den Sie wählen, und danach lesen, was passiert ist.