API E-mail
createEmailMessage
Anchor link toCrée un message e-mail.
POST
https://api.pushwoosh.com/json/1.3/createEmailMessage
Paramètres de la requête
Anchor link toNom | Type | Requis | Description |
---|---|---|---|
auth | string | Oui | Jeton d’accès à l’API depuis le Panneau de Contrôle Pushwoosh. |
application | string | Oui | Code d’application Pushwoosh |
notifications | array | Oui | Tableau JSON contenant les détails du message e-mail. Voir le tableau Paramètres de Notifications ci-dessous. |
Paramètres de Notifications
Anchor link toNom | Type | Requis | Description |
---|---|---|---|
send_date | string | Oui | Définit quand envoyer l’e-mail. Format : YYYY-MM-DD HH:mm ou "now" . |
preset | string | Oui | Code du préréglage d’e-mail. Copiez-le depuis la barre d’URL de l’Éditeur de Contenu d’E-mail dans le Panneau de Contrôle Pushwoosh. |
subject | string ou object | Non | Ligne d’objet de l’e-mail. L’e-mail sera toujours dans la langue du contenu. Si subject ne contient pas de langue correspondante pour content , l’objet sera vide. |
content | string ou object | Non | Le corps du contenu de l’e-mail. Peut être une chaîne de caractères pour du contenu HTML simple ou un objet pour des versions localisées. |
attachments | array | Non | Les pièces jointes de l’e-mail. Seules deux pièces jointes sont autorisées. Chaque pièce jointe ne doit pas dépasser 1 Mo (encodée en base64). |
campaign | string | Non | Code de campagne pour associer l’e-mail à une campagne spécifique. |
ignore_user_timezone | boolean | Non | Si true , envoie l’e-mail immédiatement, en ignorant les fuseaux horaires des utilisateurs. |
timezone | string | Non | Envoie l’e-mail en fonction du fuseau horaire de l’utilisateur. Exemple : "America/New_York" . |
filter | string | Non | Envoie l’e-mail aux utilisateurs correspondant à une condition de filtre spécifique. |
devices | array | Non | Liste d’adresses e-mail (max 1000) pour envoyer des e-mails ciblés. S’il est utilisé, le message n’est envoyé qu’à ces adresses. Ignoré si le Groupe d’Applications est utilisé. |
use_auto_registration | boolean | Non | Si true , enregistre automatiquement les e-mails du paramètre devices . |
users | array | Non | Si défini, le message e-mail ne sera livré qu’aux ID utilisateurs spécifiés (enregistrés via l’appel /registerEmail). Pas plus de 1000 ID utilisateur dans un tableau. Si le paramètre “devices” est spécifié, le paramètre “users” sera ignoré. |
dynamic_content_placeholders | object | Non | Variables pour le contenu dynamique au lieu des valeurs de tags de l’appareil. |
conditions | array | Non | Conditions de segmentation utilisant des tags. Exemple : [["Country", "EQ", "BR"]] . |
from | object | Non | Spécifiez un nom d’expéditeur et un e-mail personnalisés, remplaçant les valeurs par défaut dans les propriétés de l’application. |
reply-to | object | Non | Spécifiez un e-mail de réponse personnalisé, remplaçant la valeur par défaut dans les propriétés de l’application. |
transactionId | string | Non | Identifiant de message unique pour éviter un nouvel envoi en cas de problèmes réseau. Stocké du côté de Pushwoosh pendant 5 minutes. |
capping_days | integer | Non | Le nombre de jours (max 30) pour appliquer le plafonnement de fréquence par appareil. Note : Assurez-vous que le Plafonnement de fréquence global est configuré dans le Panneau de Contrôle. |
capping_count | integer | Non | Le nombre maximum d’e-mails pouvant être envoyés d’une application spécifique à un appareil particulier pendant une période capping_days . Si le message créé dépasse la limite capping_count pour un appareil, il ne sera pas envoyé à cet appareil. |
capping_exclude | boolean | Non | Si défini à true , cet e-mail ne sera pas comptabilisé pour le plafonnement des futurs e-mails. |
capping_avoid | boolean | Non | Si défini à true , le plafonnement ne sera pas appliqué à cet e-mail spécifique. |
Exemple de requête
Anchor link to{ "request": { "auth": "API_ACCESS_TOKEN", // requis. Jeton d'accès à l'API depuis le Panneau de Contrôle Pushwoosh "application": "APPLICATION_CODE", // requis. Code d'application Pushwoosh. "notifications": [{ "send_date": "now", // requis. YYYY-MM-DD HH:mm OU 'now' "preset": "ERXXX-32XXX", // requis. Copiez le code du préréglage d'e-mail depuis la barre d'URL de // la page de l'éditeur de contenu d'e-mail dans le Panneau de Contrôle Pushwoosh. "subject": { // optionnel. Ligne d'objet du message e-mail. "de": "subject de", "en": "subject en" }, "content": { // optionnel. Corps du contenu de l'e-mail. "de": "<html><body>de Hello, moto</body></html>", "default": "<html><body>default Hello, moto</body></html>" }, "attachments": [{ // optionnel. Pièces jointes de l'e-mail "name": "image.png", // "name" - nom du fichier "content": "iVBANA...AFTkuQmwC" // "content" - contenu du fichier encodé en base64 }, { "name": "file.pdf", "content": "JVBERi...AFTarEGC" }], "campaign": "CAMPAIGN_CODE", // optionnel. Pour assigner ce message e-mail à une campagne particulière, // ajoutez un code de campagne ici. "ignore_user_timezone": true, // optionnel. "timezone": "America/New_York", // optionnel. Spécifiez pour envoyer le message selon le // fuseau horaire défini sur l'appareil de l'utilisateur. "filter": "FILTER_NAME", // optionnel. Envoyer le message à des utilisateurs spécifiques remplissant les conditions du filtre. "devices": [ // optionnel. Spécifiez les adresses e-mail pour envoyer des messages ciblés. "email_address1", // Pas plus de 1000 adresses dans un tableau. "email_address2" // Si défini, le message ne sera envoyé qu'aux adresses de ], // la liste. Ignoré si le Groupe d'Applications est utilisé. "use_auto_registration": true, // optionnel. Enregistre automatiquement les e-mails spécifiés dans le paramètre "devices" "users": [ // optionnel. Si défini, le message e-mail ne sera livré qu'aux "userId1", // ID utilisateur spécifiés (enregistrés via l'appel /registerEmail). "userId2" // Pas plus de 1000 ID utilisateur dans un tableau. ], // Si le paramètre "devices" est spécifié, // le paramètre "users" sera ignoré. "dynamic_content_placeholders": { // optionnel. Variables pour le contenu dynamique au lieu des valeurs de tags de l'appareil. "firstname": "John", "firstname_en": "John" }, "conditions": [ // optionnel. Conditions de segmentation, voir la remarque ci-dessous. ["Country", "EQ", "BR"], ["Language", "EQ", "pt"] ], "from": { // optionnel. Spécifiez un nom d'expéditeur et une adresse e-mail d'expéditeur "name": "alias from", // pour remplacer le "Nom d'expéditeur" et l'"E-mail d'expéditeur" par défaut "email": "from-email@email.com" // configurés dans les propriétés de l'application. }, "reply-to": { // optionnel. Spécifiez une adresse e-mail pour remplacer "name": "alias reply to ", // le "Répondre à" par défaut configuré dans les propriétés de l'application. "email": "reply-to@email.com" }, "transactionId": "unique UUID", // optionnel. Identifiant de message unique pour éviter un nouvel envoi // en cas de problèmes réseau. Stocké du côté // de Pushwoosh pendant 5 minutes. // Paramètres de plafonnement de fréquence. Assurez-vous que le plafonnement de fréquence global est configuré dans le Panneau de Contrôle. "capping_days": 30, // optionnel. Nombre de jours pour le plafonnement de fréquence (max 30 jours) "capping_count": 10, // optionnel. Le nombre maximum d'e-mails pouvant être envoyés depuis une // application spécifique à un appareil particulier pendant une période 'capping_days'. // Si le message créé dépasse la limite 'capping_count' // pour un appareil, il ne sera pas envoyé à cet appareil. "capping_exclude": true, // optionnel. Si défini à true, cet e-mail ne sera pas // comptabilisé pour le plafonnement des futurs e-mails. "capping_avoid": true // optionnel. Si défini à true, le plafonnement ne sera pas appliqué à // cet e-mail spécifique. }] }}
Exemples de réponse
Anchor link to{ "status_code": 200, "status_message": "OK", "response": null}
{ "status_code": 403, "status_message": "Token restrictions forbid this operation", "response": null}
Conditions de Tag
Anchor link toChaque condition de tag est un tableau de type [tagName, operator, operand]
où
- tagName : nom d’un tag
- operator : “EQ” | “IN” | “NOTEQ” | “NOTIN” | “LTE” | “GTE” | “BETWEEN”
- operand : chaîne | entier | tableau | date
Description de l’opérande
Anchor link to- EQ : la valeur du tag est égale à l’opérande ;
- IN : la valeur du tag est présente dans l’opérande (l’opérande doit toujours être un tableau) ;
- NOTEQ : la valeur du tag n’est pas égale à un opérande ;
- NOTIN : la valeur du tag n’est pas présente dans l’opérande (l’opérande doit toujours être un tableau) ;
- GTE : la valeur du tag est supérieure ou égale à l’opérande ;
- LTE : la valeur du tag est inférieure ou égale à l’opérande ;
- BETWEEN : la valeur du tag est supérieure ou égale à la valeur minimale de l’opérande mais inférieure ou égale à la valeur maximale de l’opérande (l’opérande doit toujours être un tableau).
Tags de type chaîne de caractères
Anchor link toOpérateurs valides : EQ, IN, NOTEQ, NOTIN
Opérandes valides :
- EQ, NOTEQ : l’opérande doit être une chaîne de caractères ;
- IN, NOTIN : l’opérande doit être un tableau de chaînes de caractères comme
["valeur 1", "valeur 2", "valeur N"]
;
Tags de type entier
Anchor link toOpérateurs valides : EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE
Opérandes valides :
- EQ, NOTEQ, GTE, LTE : l’opérande doit être un entier ;
- IN, NOTIN : l’opérande doit être un tableau d’entiers comme
[valeur 1, valeur 2, valeur N]
; - BETWEEN : l’opérande doit être un tableau d’entiers comme
[valeur_min, valeur_max]
.
Tags de type date
Anchor link toOpérateurs valides : EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE
Opérandes valides :
"YYYY-MM-DD 00:00"
(chaîne)- timestamp unix
1234567890
(entier) "N days ago"
(chaîne) pour les opérateurs EQ, BETWEEN, GTE, LTE
Tags de type booléen
Anchor link toOpérateurs valides : EQ
Opérandes valides : 0, 1, true, false
Tags de type liste
Anchor link toOpérateurs valides : IN
Opérandes valides : l’opérande doit être un tableau de chaînes de caractères comme ["valeur 1", "valeur 2", "valeur N"]
.
registerEmail
Anchor link toEnregistre une adresse e-mail pour l’application.
POST
https://api.pushwoosh.com/json/1.3/registerEmail
En-têtes de la requête
Anchor link toNom | Requis | Valeur | Description |
---|---|---|---|
Authorization | Oui | Token XXXX | Jeton d’API de l’appareil pour accéder à l’API de l’appareil. Remplacez XXXX par votre véritable jeton d’API de l’appareil. |
Corps de la requête
Anchor link toNom | Type | Description |
---|---|---|
application* | string | Code d’application Pushwoosh |
email* | string | Adresse e-mail. |
language | string | Locale de langue de l’appareil. Doit être un code de deux lettres minuscules conforme à la norme ISO-639-1. |
userId | string | ID utilisateur à associer à l’adresse e-mail. |
tz_offset | integer | Décalage du fuseau horaire en secondes. |
tags | object | Valeurs de tags à assigner à l’appareil enregistré. |
{ "status_code": 200, "status_message": "OK", "response": null}
{ "request": { "application": "APPLICATION_CODE", // requis. Code d'application Pushwoosh. "email":"email@domain.com", // requis. Adresse e-mail à enregistrer. "language": "en", // optionnel. Locale de langue. "userId": "userId", // optionnel. ID utilisateur à associer à l'adresse e-mail. "tz_offset": 3600, // optionnel. Décalage du fuseau horaire en secondes. "tags": { // optionnel. Valeurs de tags à définir pour l'appareil enregistré. "StringTag": "valeur chaîne", "IntegerTag": 42, "ListTag": ["chaine1","chaine2"], // définit la liste de valeurs pour les Tags de type Liste "DateTag": "2024-10-02 22:11", // notez que l'heure doit être en UTC "BooleanTag": true // les valeurs valides sont : true, false } }}
deleteEmail
Anchor link toSupprime une adresse e-mail de votre base d’utilisateurs.
POST
https://api.pushwoosh.com/json/1.3/deleteEmail
En-têtes de la requête
Anchor link toNom | Requis | Valeur | Description |
---|---|---|---|
Authorization | Oui | Token XXXX | Jeton d’API de l’appareil pour accéder à l’API de l’appareil. Remplacez XXXX par votre véritable jeton d’API de l’appareil. |
Corps de la requête
Anchor link toNom | Type | Description |
---|---|---|
application | string | Code d’application Pushwoosh |
string | Adresse e-mail utilisée dans la requête /registerEmail. |
{ "status_code": 200, "status_message": "OK", "response": null}
{ "request": { "application": "APPLICATION_CODE", // requis. Code d'application Pushwoosh "email": "email@domain.com" // requis. E-mail à supprimer des abonnés de l'application. }}
setEmailTags
Anchor link toDéfinit les valeurs des tags pour l’adresse e-mail.
POST
https://api.pushwoosh.com/json/1.3/setEmailTags
En-têtes de la requête
Anchor link toNom | Requis | Valeur | Description |
---|---|---|---|
Authorization | Oui | Token XXXX | Jeton d’API de l’appareil pour accéder à l’API de l’appareil. Remplacez XXXX par votre véritable jeton d’API de l’appareil. |
Corps de la requête
Anchor link toNom | Type | Description |
---|---|---|
application | string | Code d’application Pushwoosh |
string | Adresse e-mail. | |
tags | object | Objet JSON de tags à définir, envoyez ‘null’ pour supprimer la valeur. |
userId | string | ID utilisateur associé à l’adresse e-mail. |
{ "status_code": 200, "status_message": "OK", "response": { "skipped": [] }}
{ "request": { "email": "email@domain.com", // requis. Adresse e-mail pour laquelle définir des tags. "application": "APPLICATION_CODE", // requis. Code d'application Pushwoosh. "tags": { "StringTag": "valeur chaîne", "IntegerTag": 42, "ListTag": ["chaine1", "chaine2"], "DateTag": "2024-10-02 22:11", // heure en UTC "BooleanTag": true // les valeurs valides sont : true, false }, "userId": "userId" // optionnel. ID utilisateur associé à l'adresse e-mail. }}
registerEmailUser
Anchor link toAssocie un ID utilisateur externe à une adresse e-mail spécifiée.
POST
https://api.pushwoosh.com/json/1.3/registerEmailUser
Peut être utilisé dans l’appel API /createEmailMessage (le paramètre ‘users’).
En-têtes de la requête
Anchor link toNom | Requis | Valeur | Description |
---|---|---|---|
Authorization | Oui | Token XXXX | Jeton d’API de l’appareil pour accéder à l’API de l’appareil. Remplacez XXXX par votre véritable jeton d’API de l’appareil. |
Corps de la requête
Anchor link toNom | Type | Description |
---|---|---|
application* | string | Code d’application Pushwoosh |
email* | string | Adresse e-mail. |
userId* | string | ID utilisateur à associer à l’adresse e-mail. |
tz_offset | integer | Décalage du fuseau horaire en secondes. |
{ "status_code": 200, "status_message": "OK", "response": null}
{ "status_code": 400, "status_message": "Request format is not valid."}
{ "status_code": 403, "status_message": "Forbidden."}
{ "request": { "application": "APPLICATION_CODE", // requis. Code d'application Pushwoosh. "email": "email@domain.com", // requis. Adresse e-mail de l'utilisateur. "userId": "userId", // requis. ID utilisateur à associer à l'adresse e-mail. "tz_offset": 3600 // optionnel. Décalage du fuseau horaire en secondes. }}