Champs étendus X-SMTPAPI

X-SMTPAPI est une méthode de traitement d'e-mails personnalisée proposée par EngageLab pour les développeurs. EngageLab récupérera les informations du champ d'en-tête dont la clé est X-SMTPAPI. Si ce champ d'en-tête est présent, il analysera la valeur pour modifier la méthode de traitement du mail. Les développeurs peuvent utiliser ce champ lors de l'utilisation de SMTP et de l'accès via API.

Accès API :

x_smtpapi = { "to": ["d@hotmail.com", "i@hotmail.com"], "sub": { "%name%": ["jack", "rose"], "%money%": ["199", "299"], }, } params['xsmtpapi'] = simplejson.dumps(x_smtpapi)
              
              x_smtpapi = {
    "to": ["d@hotmail.com", "i@hotmail.com"],
    "sub": {
        "%name%": ["jack", "rose"],
        "%money%": ["199", "299"],
    },
}

params['xsmtpapi'] = simplejson.dumps(x_smtpapi)

            
Afficher ce bloc de code dans la fenêtre flottante

Accès SMTP :

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)))
              
              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)))

            
Afficher ce bloc de code dans la fenêtre flottante
Le serveur SMTP vérifiera le format de l'information d'en-tête dont la **clé** est `X-SMTPAPI` dans l'e-mail. Si les exigences ci-dessus ne sont pas respectées, une erreur `xsmtpapi error` sera signalée. À noter : 1. Lors de l'appel SMTP, le X-SMTPAPI doit être le dernier dans le champ d'en-tête. Sinon, une erreur 'xsmtpapi error' peut survenir. 2. Lors de l'appel SMTP, le x-smtpapi doit être encodé en Base64. Sinon, après une requête SMTP réussie, EngageLab interceptera et jugera le mail comme invalide - `worker: invalid XSMTP-API` 3. Lors de l'appel API, vous pouvez directement transmettre la chaîne JSON sans encodage ni encapsulation Base64. 4. La longueur totale du X-SMTPAPI ne peut pas dépasser 1 Mo.
              
              Le serveur SMTP vérifiera le format de l'information d'en-tête dont la **clé** est `X-SMTPAPI` dans l'e-mail. Si les exigences ci-dessus ne sont pas respectées, une erreur `xsmtpapi error` sera signalée.
À noter :
1. Lors de l'appel SMTP, le X-SMTPAPI doit être le dernier dans le champ d'en-tête. Sinon, une erreur 'xsmtpapi error' peut survenir.
2. Lors de l'appel SMTP, le x-smtpapi doit être encodé en Base64. Sinon, après une requête SMTP réussie, EngageLab interceptera et jugera le mail comme invalide - `worker: invalid XSMTP-API`
3. Lors de l'appel API, vous pouvez directement transmettre la chaîne JSON sans encodage ni encapsulation Base64.
4. La longueur totale du X-SMTPAPI ne peut pas dépasser 1 Mo.

            
Afficher ce bloc de code dans la fenêtre flottante

La structure et l'utilisation de la chaîne JSON encapsulée par value sont présentées ci-dessous :

to Contient un tableau d'adresses des destinataires pour spécifier les destinataires du message.

{ "to": ["ben@engagelab.com", "joe@engagelab.com"] }
              
              {
    "to": ["ben@engagelab.com", "joe@engagelab.com"]
}

            
Afficher ce bloc de code dans la fenêtre flottante

Attention :

  • to ici écrasera le paramètre destinataire to
  • Le nombre de destinataires to ne peut pas dépasser 1000
  • Si l'en-tête de l'e-mail fait moins de 1 Mo, aucune action ne sera prise
  • Si l'en-tête de l'e-mail dépasse 1 Mo, vérifiez chaque adresse soumise. Si elle fait moins de 10 Ko, elle peut être envoyée. Si elle dépasse 10 Ko, elle ne peut pas être envoyée

sub est un tableau associatif dont la clé est une variable et la valeur est un tableau de valeurs de remplacement.

Explication d'utilisation : chaque "variable" correspond à un "tableau de valeurs de remplacement". Lors du remplacement du contenu de l'e-mail, chaque "destinataire" remplace la valeur de la "variable" par la valeur correspondante dans le "tableau de valeurs de remplacement" selon sa position dans le "tableau des destinataires".

Exemple :

# Contenu de l'e-mail Cher %name% : Bonjour ! Votre montant de consommation chez XX ce mois-ci : %money% . #--------------------------------------------------- # X-SMTPAPI { "to": ["ben@engagelab.com", "joe@engagelab.com"], "sub": { "%name%": ["Ben", "Joe"], "%money%": [288, 497] } } #--------------------------------------------------- # ben@engagelab.com recevra : Cher Ben : Bonjour ! Votre montant de consommation chez XX ce mois-ci : 288 . #--------------------------------------------------- # joe@engagelab.com recevra : Cher Joe : Bonjour ! Votre montant de consommation chez XX ce mois-ci : 497 .
              
              # Contenu de l'e-mail

Cher %name% :

    Bonjour ! Votre montant de consommation chez XX ce mois-ci : %money% .

#---------------------------------------------------

# X-SMTPAPI

{
"to": ["ben@engagelab.com", "joe@engagelab.com"],
"sub":
{
"%name%": ["Ben", "Joe"],
"%money%": [288, 497]
}
}

#---------------------------------------------------

# ben@engagelab.com recevra :

Cher Ben :

    Bonjour ! Votre montant de consommation chez XX ce mois-ci : 288 .

#---------------------------------------------------

# joe@engagelab.com recevra :

Cher Joe :

    Bonjour ! Votre montant de consommation chez XX ce mois-ci : 497 .

            
Afficher ce bloc de code dans la fenêtre flottante

apps est un tableau associatif contenant un ensemble de noms d'applications (Désabonnement, Ouverture, Clic) et leurs paramètres. Ces paramètres remplacent ceux du compte utilisateur.

x_smtpapi = { "to": ["xxx@qq.com"], "sub": {"%name%": ["Joe"]}, "filters": { "subscription_tracking": { # Suivi de désabonnement "settings": { "enable": "1" } }, "open_tracking": { # Suivi d'ouverture "settings": { "enable": "1" } }, "click_tracking": { # Suivi de clic "settings": { "enable": "1" } } } }
              
              x_smtpapi =
{
    "to": ["xxx@qq.com"],
    "sub": {"%name%": ["Joe"]},
    "filters": {
        "subscription_tracking": { # Suivi de désabonnement
            "settings": { "enable": "1" }
        },
        "open_tracking": { # Suivi d'ouverture
            "settings": { "enable": "1" }
        },
        "click_tracking": { # Suivi de clic
            "settings": { "enable": "1" }
        }
    }
}

            
Afficher ce bloc de code dans la fenêtre flottante

page_id

  • page_id correspond au champ ID d'une page de désabonnement créée sous "Paramètres" - "Désabonnement" - "Page de désabonnement" dans la console EngageLab.
  • Le client doit créer une page de désabonnement à l'avance sur la console EngageLab avant de l'envoyer via le paramètre page_id correspondant à l'ID.
  • L'envoi se fait via le paramètre page_id. La valeur est définie comme l'ID d'une page de désabonnement. À ce moment, le lien et la page de désabonnement sont dans la langue et le style configurés.
  • La priorité de la transmission du paramètre page_id est supérieure à celle du paramètre de page de désabonnement par défaut correspondant à l'utilisateur.
  • Prend en charge la forme tableau pour spécifier la page de désabonnement, qui doit être cohérente avec le nombre de destinataires dans le xsmtpapi. La position du tableau correspond à chaque "destinataire" selon sa position dans le "tableau des destinataires". Si cela ne correspond pas au nombre de destinataires, la page_id par défaut de cet apiUser sera utilisée à la place.

Exemple :

x_smtpapi = { "to": ["xxx@qq.com", "xxx@hotmail.com", "xxx@gmail.com"], "sub": {"%name%": ["Joe", "Ben", "Michael"]}, "settings": { "unsubscribe": {"page_id": [1, 2, 3]} } }
              
              x_smtpapi =
{
    "to": ["xxx@qq.com", "xxx@hotmail.com", "xxx@gmail.com"],
    "sub": {"%name%": ["Joe", "Ben", "Michael"]},
    "settings": 
    {
        "unsubscribe": 
            {"page_id": [1, 2, 3]}
    }
}

            
Afficher ce bloc de code dans la fenêtre flottante
icon
Contactez-nous