X-SMTPAPI Erweiterte Felder
X-SMTPAPI ist eine von EngageLab bereitgestellte Methode zur personalisierten E-Mail-Verarbeitung für Entwickler:innen. EngageLab prüft das Header-Feld mit dem Key X-SMTPAPI. Ist dieses Header-Feld vorhanden, wird der Value analysiert, um die E-Mail-Verarbeitung entsprechend anzupassen. Entwickler:innen können dieses Feld sowohl beim Versand über SMTP als auch über die API nutzen.
API-Zugriff
x_smtpapi = {
"to": ["d@hotmail.com", "i@hotmail.com"],
"sub": {
"%name%": ["jack", "rose"],
"%money%": ["199", "299"],
},
}
params['xsmtpapi'] = simplejson.dumps(x_smtpapi)
SMTP-Zugriff
x_smtpapi = {
"to": ["d@hotmail.com", "i@hotmail.com"],
"sub": {
"%name%": ["jack", "rose"],
"%money%": ["199", "299"],
},
}
msg['X-SMTPAPI'] = Header(base64.b64encode(simplejson.dumps(x_smtpapi)))
Der SMTP-Server prüft das Format des Header-Feldes mit dem Key X-SMTPAPI in der E-Mail. Werden die folgenden Anforderungen nicht erfüllt, wird ein Fehler xsmtpapi error gemeldet.
Bitte beachten Sie:
- Beim Versand über SMTP muss das X-SMTPAPI-Feld als letztes Header-Feld eingefügt werden. Andernfalls kann ein Fehler
xsmtpapi errorauftreten. - Beim Versand über SMTP muss x-smtpapi Base64-codiert sein. Andernfalls wird die E-Mail nach erfolgreicher SMTP-Anfrage von EngageLab als ungültig eingestuft –
worker: invalid XSMTP-API. - Beim Versand über die API kann der JSON-String direkt ohne Base64-Codierung und zusätzliche Kapselung übergeben werden.
- Die maximale Länge von X-SMTPAPI beträgt 1 MB.
Struktur und Verwendung des JSON-Strings im Value-Feld
to
Enthält ein Array von Empfängeradressen, um die Empfänger:innen der Nachricht zu definieren.
{
"to": ["ben@engagelab.com", "joe@engagelab.com"]
}
Hinweise:
- Das hier angegebene Feld
toüberschreibt den Empfänger-Parameterto. - Das
to-Array darf maximal 1000 Empfänger:innen enthalten. - Bei einer Header-Größe unter 1 MB erfolgt keine weitere Prüfung.
- Bei Überschreitung von 1 MB wird für jede Adresse geprüft: Ist eine einzelne Adresse kleiner als 10 KB, kann gesendet werden; andernfalls wird der Versand abgelehnt.
sub
Ein assoziatives Array, dessen „Key“ eine Variable und dessen „Value“ ein Array von Ersatzwerten ist.
Erläuterung:
Jede „Variable“ entspricht einem Array von Ersatzwerten. Beim Ersetzen des E-Mail-Inhalts wird für jede:n Empfänger:in der Wert der jeweiligen „Variable“ durch den entsprechenden Wert im „Ersatzwert-Array“ gemäß der Position im Empfänger:innen-Array ersetzt.
Beispiel:
# E-Mail-Inhalt
Sehr geehrte:r %name%,
Hallo! Ihr Verbrauchsbetrag im XX dieses Monats: %money%.
#---------------------------------------------------
# X-SMTPAPI
{
"to": ["ben@engagelab.com", "joe@engagelab.com"],
"sub": {
"%name%": ["Ben", "Joe"],
"%money%": [288, 497]
}
}
#---------------------------------------------------
# ben@engagelab.com erhält:
Sehr geehrte:r Ben,
Hallo! Ihr Verbrauchsbetrag im XX dieses Monats: 288.
#---------------------------------------------------
# joe@engagelab.com erhält:
Sehr geehrte:r Joe,
Hallo! Ihr Verbrauchsbetrag im XX dieses Monats: 497.
apps
Ein assoziatives Array mit einer Reihe von Anwendungsnamen (Abmelde-Tracking, Öffnungs-Tracking, Klick-Tracking) und deren Einstellungen. Diese Einstellungen überschreiben die Einstellungen im Benutzerkonto.
x_smtpapi = {
"to": ["xxx@qq.com"],
"sub": {"%name%": ["Joe"]},
"filters": {
"subscription_tracking": { # Abmelde-Tracking
"settings": {"enable": "1"}
},
"open_tracking": { # Öffnungs-Tracking
"settings": {"enable": "1"}
},
"click_tracking": { # Klick-Tracking
"settings": {"enable": "1"}
}
}
}
page_id
- Die
page_identspricht der ID einer Abmeldeseite, die unter „Einstellung“ – „Abmelden“ – „Abmeldeseite“ in der EngageLab-Konsole erstellt wurde. - Kund:innen müssen vor dem Versand eine Abmeldeseite in der EngageLab-Konsole anlegen und die
page_identsprechend setzen. - Der Versand erfolgt über den Parameter
page_id. Der Wert entspricht der ID einer Abmeldeseite. Der Abmeldelink und die Abmeldeseite erscheinen dann in der konfigurierten Sprache und im gewünschten Stil. - Der Parameter
page_idhat Vorrang vor der standardmäßigen Abmeldeseite des Benutzers. - Es wird die Array-Form unterstützt, um die Abmeldeseite für jede:n Empfänger:in individuell zu bestimmen. Die Position im Array entspricht der Position im Empfänger:innen-Array. Stimmen die Anzahl der
page_id-Werte und der Empfänger:innen nicht überein, wird die Standard-page_iddieses apiUsers verwendet.
Beispiel:
x_smtpapi = {
"to": ["xxx@qq.com", "xxx@hotmail.com", "xxx@gmail.com"],
"sub": {"%name%": ["Joe", "Ben", "Michael"]},
"settings": {
"unsubscribe": {
"page_id": [1, 2, 3]
}
}
}

