API REST de MailerPress, l’extension d’e-mail marketing pour WordPress. Chaque endpoint accepte un mot de passe d’application WordPress ; ceux de l’extension gratuite acceptent aussi une clé API, limitée aux scopes qui lui ont été donnés. Les endpoints Pro (segments, webhooks, tests A/B, renvois, gestion des champs personnalisés) n’acceptent que les mots de passe d’application.
Authentification
applicationPasswordHTTP basicMot de passe d’application WordPress (HTTP Basic). À générer dans Utilisateurs > Profil. Fonctionne sur tous les endpoints, avec les droits de l’utilisateur.
apiKeyClé d’API dans l’en-têteX-MailerPress-API-KeyClé API MailerPress (commence par mpk_), envoyée avec son secret. Limitée aux scopes qui lui ont été donnés (voir GET /api-keys/permissions) ; débit limité par clé, avec 429 et Retry-After en cas de dépassement. Non acceptée par les endpoints Pro.
apiSecretClé d’API dans l’en-têteX-MailerPress-API-SecretSecret API MailerPress (commence par mps_), toujours envoyé avec la clé.
Contacts
Contacts, leurs notes, leur activité et leurs statistiques
GET /contacts/all Lister les contacts
/contacts/all Lister les contactsRenvoie la liste paginée des contacts avec leurs étiquettes, listes, champs personnalisés et totaux d’engagement.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
pagedinteger queryNuméro de page
Par défaut :
1perPagesinteger queryRésultats par page
Par défaut :
20searchstring queryRechercher par e-mail ou identifiant de contact
subscription_statusstring queryFiltrer par statut d’inscription
Valeurs possibles :
subscribed,unsubscribed,pendinglistarray<object> queryFiltrer par listes : objets portant un `id`
Attributs enfants
idinteger
tagarray<object> queryFiltrer par étiquettes : objets portant un `id`
Attributs enfants
idinteger
segmentarray<object> queryPro – filtrer par segments : objets portant un `id`
Attributs enfants
idinteger
engagementstring queryFiltrer par niveau d’engagement
Valeurs possibles :
engaged,unengaged,inactivecustom_fieldsobject queryFiltrer par valeurs de champs personnalisés, indexées par clé de champ
orderbystring queryChamp de tri
orderstring querySens du tri
Valeurs possibles :
ASC,DESCPar défaut :DESC
Réponses
GET /contacts Lister les contacts d’étiquettes et de listes données
/contacts Lister les contacts d’étiquettes et de listes donnéesRenvoie, sans pagination, les contacts qui appartiennent aux étiquettes et listes données.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
tagsarray<integer> queryIdentifiants d’étiquettes
listsarray<integer> queryIdentifiants de listes
Réponses
PUT /contacts Mettre à jour des contacts en masse
/contacts Mettre à jour des contacts en masseMet à jour plusieurs contacts à la fois : statut, étiquettes, listes, champs personnalisés, données de profil.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Corps de la requête requis
idsarray<integer>Identifiants des contacts à mettre à jour ; avec `newStatus` seul, tous les contacts si vide
newStatusstringValeurs possibles :
subscribed,unsubscribed,pendingemailstring (email)first_namestringlast_namestringtagsarray<object>Attributs enfants
idinteger
removeTagsarray<object>Attributs enfants
idinteger
listsarray<object>Attributs enfants
idinteger
removeListsarray<object>Attributs enfants
idinteger
custom_fieldsarray<object>Attributs enfants
field_keystringfield_valuestring
Réponses
POST /contact Créer ou mettre à jour un contact
/contact Créer ou mettre à jour un contactCrée un contact, ou met à jour celui qui porte déjà cet e-mail. C’est aussi l’endpoint que les formulaires d’inscription appellent : avec une clé API, le scope `contacts:write` est requis et la soumission est de confiance (pas de double opt-in, champs écrasés). Limité en débit par IP.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Corps de la requête requis
emailstring (email) requisfirst_namestringlast_namestringsubscription_statusstringValeurs possibles :
subscribed,unsubscribed,pendingtagsarray<object>Objets portant un `id` d’étiquette
Attributs enfants
idinteger
listsarray<object>Objets portant un `id` de liste ; la liste par défaut si vide
Attributs enfants
idinteger
custom_fieldsobjectValeurs indexées par clé de champ
opt_in_sourcestringPar défaut :
unknownoptin_detailsstringlangstringCode de langue, pour les sites multilingues
Réponses
200 Contact créé ou mis à jour
successbooleanmessagestringcontact_idintegerdataobject
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
429 Trop de requêtes – la limite de débit de la clé API est dépassée ; Retry-After donne les secondes à attendre
DELETE /contact Supprimer des contacts
/contact Supprimer des contactsSupprime les contacts donnés et tout ce qui leur est rattaché.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Corps de la requête requis
idsarray<integer> requis
Réponses
PUT /contact/{id} Mettre à jour un contact
/contact/{id} Mettre à jour un contactMet à jour un contact par son identifiant.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
emailstring (email)first_namestringlast_namestringnewStatusstringValeurs possibles :
subscribed,unsubscribed,pendingtagsarray<object>Attributs enfants
idinteger
removeTagsarray<object>Attributs enfants
idinteger
listsarray<object>Attributs enfants
idinteger
removeListsarray<object>Attributs enfants
idinteger
custom_fieldsarray<object>Attributs enfants
field_keystringfield_valuestring
Réponses
DELETE /contact/all Supprimer tous les contacts
/contact/all Supprimer tous les contactsSupprime tous les contacts. Au-delà de 20 000 contacts, la suppression se fait en arrière-plan et un identifiant de lot est renvoyé.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Réponses
DELETE /contact/list/{id} Retirer un contact d’une liste
/contact/list/{id} Retirer un contact d’une listeDétache une liste d’un contact.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Paramètres
idinteger path requisIdentifiant du contact
Corps de la requête requis
listIdinteger requis
Réponses
DELETE /contact/tag/{id} Retirer une étiquette d’un contact
/contact/tag/{id} Retirer une étiquette d’un contactDétache une étiquette d’un contact.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Paramètres
idinteger path requisIdentifiant du contact
Corps de la requête requis
tagIdinteger requis
Réponses
GET /contact/check-email Vérifier l’existence d’un e-mail
/contact/check-email Vérifier l’existence d’un e-mailIndique si un contact porte déjà cette adresse e-mail.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
emailstring (email) query requisexclude_idinteger queryIdentifiant de contact à exclure de la vérification
Réponses
GET /contact/{contact_id}/activity Activité d’un contact
/contact/{contact_id}/activity Activité d’un contactRenvoie l’activité d’un contact (envoyé, ouvert, cliqué, désinscrit), groupée par campagne, quatre campagnes par page.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
contact_idinteger path requispageinteger queryNuméro de page
Par défaut :
1
Réponses
200 L’activité
activitiesarray<ContactActivity>pageintegerper_pageintegertotalinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /contact/{contact_id}/campaigns Campagnes d’un contact
/contact/{contact_id}/campaigns Campagnes d’un contactRenvoie les campagnes qu’un contact a reçues.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
contact_idinteger path requis
Réponses
GET /stats/{contact_id} Statistiques d’un contact
/stats/{contact_id} Statistiques d’un contactRenvoie les totaux d’engagement e-mail d’un contact, éventuellement pour une seule campagne.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
contact_idinteger path requiscampaign_idinteger queryRestreindre les totaux à cette campagne
Réponses
GET /contact-note/{contact_id} Notes d’un contact
/contact-note/{contact_id} Notes d’un contactRenvoie les notes rattachées à un contact.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
contact_idinteger path requis
Réponses
200 Les notes
successbooleannotesarray<ContactNote>
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
POST /contact/note Ajoute une note à un contact
/contact/note Ajoute une note à un contactAjoute une note à un contact.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Corps de la requête requis
contact_idinteger requiscontentstring requis
Réponses
200 Note créée
successbooleannoteContactNote
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
PUT /contact/note/{note_id} Mettre à jour une note
/contact/note/{note_id} Mettre à jour une noteMet à jour le contenu d’une note.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Paramètres
note_idinteger path requis
Corps de la requête requis
contentstring requis
Réponses
200 Note mise à jour
successbooleannoteContactNote
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
DELETE /contact/note/{note_id} Supprimer une note
/contact/note/{note_id} Supprimer une noteSupprime une note.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Paramètres
note_idinteger path requis
Réponses
POST /contact/{id}/confirm Confirmer un contact en attente
/contact/{id}/confirm Confirmer un contact en attenteMarque un contact en attente comme inscrit, comme s’il avait cliqué le lien de confirmation.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Paramètres
idinteger path requis
Réponses
POST /contact/{id}/send-confirmation-reminder Renvoyer l’e-mail de confirmation
/contact/{id}/send-confirmation-reminder Renvoyer l’e-mail de confirmationRenvoie l’e-mail de confirmation du double opt-in à un contact en attente.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Paramètres
idinteger path requis
Réponses
POST /contact/export Exporter les contacts
/contact/export Exporter les contactsLance l’export des contacts donnés, ou de tous, dans un fichier. Le lien de téléchargement est envoyé par e-mail à l’adresse donnée.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Corps de la requête requis
contact_idsarray<integer>Contacts à exporter ; tous si vide
emailstring (email) requis
Réponses
POST /contacts/import/init Démarrer un import de contacts
/contacts/import/init Démarrer un import de contactsCrée un lot d’import. Envoyez ensuite les lignes avec POST /contacts/import/chunk et suivez-le avec GET /contacts/import/progress/{batch_id}.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Corps de la requête requis
dataobject requisAttributs enfants
statusstringStatut d’inscription donné aux contacts importés
Valeurs possibles :
subscribed,unsubscribed,pendingPar défaut :pendingtagsarray<object>Attributs enfants
idinteger
listsarray<object>Attributs enfants
idinteger
forceUpdatebooleanÉcraser les contacts qui existent déjà
Par défaut :
false
Réponses
POST /contacts/import/chunk Ajouter des lignes à un import
/contacts/import/chunk Ajouter des lignes à un importAjoute des contacts à un lot d’import et planifie leur traitement.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Corps de la requête requis
batch_idinteger requischunkarray<object> requisLes contacts à importer
Attributs enfants
emailstring (email) requisfirst_namestringlast_namestring
forceUpdateboolean
Réponses
GET /contacts/import/progress/{batch_id} Avancement de l’import
/contacts/import/progress/{batch_id} Avancement de l’importRenvoie l’avancement d’un lot d’import.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
batch_idinteger path requis
Réponses
200 L’avancement
batch_idintegerstatusstringValeurs possibles :
pending,processing,completed,failedtotal_contactsintegerprocessed_contactsintegerprogress_percentagenumberchunksobjectAttributs enfants
totalintegerpendingintegerprocessingintegercompletedintegerfailedinteger
created_atstring (date-time)updated_atstring (date-time)
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
POST /contacts/import/retry/{batch_id} Relancer les lignes en échec d’un import
/contacts/import/retry/{batch_id} Relancer les lignes en échec d’un importRemet en file les morceaux en échec d’un lot d’import.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Paramètres
batch_idinteger path requis
Réponses
POST /contacts/import/reset Annuler un import
/contacts/import/reset Annuler un importSupprime un lot d’import et son travail en attente.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Corps de la requête requis
batch_idinteger requis
Réponses
POST /contact/import Importer un contact
/contact/import Importer un contactCrée ou met à jour un contact à partir d’une ligne d’import, avec ses étiquettes, listes et champs personnalisés.
Autorisation applicationPassword ou apiKey (contacts:write) + apiSecret
Corps de la requête requis
itemobject requisAttributs enfants
emailstring (email) requisfirst_namestringlast_namestring
statusstringValeurs possibles :
subscribed,unsubscribed,pendingPar défaut :pendingtagsarray<object>Attributs enfants
idinteger
listsarray<object>Attributs enfants
idinteger
forceUpdateboolean
Réponses
Campagnes
Campagnes : contenu, envoi, statut et statistiques
GET /campaigns Lister les campagnes
/campaigns Lister les campagnesRenvoie la liste paginée des campagnes avec leur lot et leurs statistiques.
Autorisation applicationPassword ou apiKey (campaigns:read) + apiSecret
Paramètres
pagedinteger queryNuméro de page
Par défaut :
1perPagesinteger queryRésultats par page
Par défaut :
10searchstring queryRechercher par nom de campagne
statusstring queryStatuts, séparés par des virgules ; `mine` garde les campagnes de l’utilisateur courant
campaign_typearray<object> queryTypes de campagne : objets portant un `id`
Attributs enfants
idstringValeurs possibles :
newsletter,ab_test,automated,automation,wp_email,wc_email,confirm_email
orderbystring queryChamp de tri
orderstring querySens du tri
Valeurs possibles :
ASC,DESCPar défaut :DESC
Réponses
POST /campaigns Créer une campagne
/campaigns Créer une campagneCrée une campagne en brouillon. Renvoie son identifiant.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
titlestring requiscampaign_typestringValeurs possibles :
newsletter,ab_test,automated,automation,wp_email,wc_email,confirm_emailPar défaut :newslettermetaobjectAttributs enfants
emailConfigobjectAttributs enfants
campaignSubjectstringemail_typestringValeurs possibles :
html,textPar défaut :html
automation_idintegerPour une campagne `automation` : le workflow auquel elle appartient
step_idstringPour une campagne `automation` : l’étape qui l’envoie
Réponses
GET /campaign/{id} Lire une campagne
/campaign/{id} Lire une campagneRenvoie une campagne avec son document d’éditeur et sa configuration.
Autorisation applicationPassword ou apiKey (campaigns:read) + apiSecret
Paramètres
idinteger path requis
Réponses
200 La campagne
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
PUT /campaign/{id} Mettre à jour une campagne
/campaign/{id} Mettre à jour une campagneMet à jour le titre et le statut d’une campagne, et la marque comme en cours d’édition par l’appelant.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
titlestringmetaobjectAttributs enfants
statusstring
Réponses
PUT /campaign/{id}/rename Renomme une campagne
/campaign/{id}/rename Renomme une campagneRenomme une campagne.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
titlestring requis
Réponses
PUT /campaign/{id}/settings Mettre à jour les réglages d’e-mail d’une campagne
/campaign/{id}/settings Mettre à jour les réglages d’e-mail d’une campagneMet à jour l’objet, l’expéditeur et les autres réglages d’e-mail d’une campagne.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
emailConfigobject requisAttributs enfants
campaignSubjectstringfromNamestringfromTostring (email)replyTostring (email)preheaderstring
Réponses
PUT /campaign/save-content/{id} Enregistrer le contenu d’une campagne
/campaign/save-content/{id} Enregistrer le contenu d’une campagneEnregistre le document d’éditeur et le HTML rendu d’une campagne. 423 si un autre utilisateur l’édite.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
contentstringLe document d’éditeur (JSON)
htmlstringLe HTML rendu
Réponses
200 Contenu enregistré
successbooleanmessagestringcampaign_idintegerupdated_dataobject
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
423 La campagne est verrouillée par un autre utilisateur
PUT /campaign/status Changer le statut de campagnes
/campaign/status Changer le statut de campagnesChange le statut d’une, de plusieurs ou de toutes les campagnes (`id` = `all`, éventuellement restreint par `campaign_type`, `filter_status` et `search`). Le passage à `trash` demande la permission de suppression.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
idinteger | array<integer> |allrequisUn identifiant de campagne, plusieurs, ou `all`
statusstring requisValeurs possibles :
draft,scheduled,sending,sent,paused,cancelled,trashcampaign_typearray<object>Attributs enfants
idstring
filter_statusstringAvec `all` : seulement les campagnes dans ce statut
searchstringAvec `all` : seulement les campagnes correspondant à ce texte
Réponses
200 Statuts mis à jour
successbooleanmessagestringupdated_idsarray<integer>new_statusstringscheduled_actions_cancelledintegerautomated_campaigns_restoredinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
DELETE /campaign Supprimer des campagnes
/campaign Supprimer des campagnesSupprime définitivement les campagnes données, leurs lots et leurs envois planifiés.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
idsarray<integer> requis
Réponses
DELETE /campaign/delete Vider la corbeille
/campaign/delete Vider la corbeilleSupprime définitivement des campagnes en corbeille : les identifiants donnés, ou toutes avec `id` = `all`.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
idinteger | array<integer> |allrequiscampaign_typearray<object>Attributs enfants
idstring
filter_statusstringsearchstring
Réponses
200 Campagnes supprimées
successbooleanmessagestringdeleted_idsarray<integer>deleted_batchesintegerscheduled_actions_cancelledinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
DELETE /campaign/all Vider la corbeille de types donnés
/campaign/all Vider la corbeille de types donnésSupprime définitivement toutes les campagnes en corbeille des types donnés.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
campaign_typearray<object> requisAttributs enfants
idstringnamestring
Réponses
POST /campaign/create_batch_V2 Envoyer ou planifier une campagne
/campaign/create_batch_V2 Envoyer ou planifier une campagneCrée le lot d’envoi d’une campagne : les destinataires sont résolus depuis le ciblage, le HTML stocké, et l’envoi mis en file tout de suite ou à `scheduledAt`. 409 si la campagne a déjà été envoyée ou si un lot est déjà en cours.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
recipientTargetingstringComment les destinataires sont choisis
Valeurs possibles :
classic,segment,contact_idsPar défaut :classiclistsarray<object>Avec `classic` : les listes à qui envoyer
Attributs enfants
idinteger
tagsarray<object>Avec `classic` : les étiquettes à qui envoyer
Attributs enfants
idinteger
segmentarray<object>Avec `segment` : un objet portant l’identifiant du segment ; avec `contact_ids` : les identifiants des contacts
postEditinteger requisL’identifiant de la campagne
sendTypestring requis`now` envoie tout de suite, `future` à `scheduledAt`
Valeurs possibles :
now,futurescheduledAtstringDate et heure dans le fuseau du site, `Y-m-d H:i:s` ou ISO 8601
htmlstring requisLe HTML rendu à envoyer
configSenderConfig requisopenTrackingstringValeurs possibles :
yes,noPar défaut :yesclickTrackingstringValeurs possibles :
yes,noPar défaut :yes
Réponses
POST /campaign/pause_batch Mettre un envoi en pause
/campaign/pause_batch Mettre un envoi en pauseAnnule le travail en file d’un lot et remet la campagne en brouillon.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
batchIdinteger requiscampaignIdinteger requis
Réponses
POST /campaign/resume_batch Reprendre un envoi
/campaign/resume_batch Reprendre un envoiRemet un lot en pause à l’état en attente.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
batchIdinteger requis
Réponses
POST /campaign/send_test Envoyer un e-mail de test
/campaign/send_test Envoyer un e-mail de testEnvoie le HTML donné comme e-mail de test aux adresses données.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
contactsarray<string (email)> requishtmlContentstring requissubjectstring requisconfigobjectAttributs enfants
fromNamestringfromTostring (email)
Réponses
200 Résultat par adresse
statusstringValeurs possibles :
success,partialsentarray<string>errorsarray<object>Attributs enfants
contactstringmessagestring
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
POST /campaign/count-audience Compter une audience
/campaign/count-audience Compter une audienceCompte les destinataires que donne un ciblage.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
Réponses
GET /campaign-status Statut et statistiques de campagnes
/campaign-status Statut et statistiques de campagnesRenvoie le statut, le lot et les statistiques d’une ou plusieurs campagnes.
Autorisation applicationPassword ou apiKey (campaigns:read) + apiSecret
Paramètres
idsstring query requisIdentifiants de campagnes, séparés par des virgules
Réponses
200 Les campagnes
array<CampaignStatus>
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /campaign/{id}/status Verrou d’édition d’une campagne
/campaign/{id}/status Verrou d’édition d’une campagneIndique si un autre utilisateur édite la campagne.
Autorisation applicationPassword ou apiKey (campaigns:read) + apiSecret
Paramètres
idinteger path requis
Réponses
GET /campaign/batches Lots d’envoi d’une campagne
/campaign/batches Lots d’envoi d’une campagneRenvoie les lots d’envoi d’une campagne avec leurs statistiques.
Autorisation applicationPassword ou apiKey (campaigns:read) + apiSecret
Paramètres
idinteger query requisIdentifiant de la campagne
pagedinteger queryNuméro de page
Par défaut :
1perPageinteger queryRésultats par page
Par défaut :
10
Réponses
200 Les lots
postsarray<object>Attributs enfants
batchBatchstatisticsBatchStatistics
pagesintegercountintegercurrent_pageintegerper_pageinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /batch/{batch_id}/chunks Morceaux d’un lot
/batch/{batch_id}/chunks Morceaux d’un lotRenvoie les morceaux dans lesquels un lot est envoyé, avec leur statut.
Autorisation applicationPassword ou apiKey (campaigns:read) + apiSecret
Paramètres
batch_idinteger path requispageinteger queryNuméro de page
Par défaut :
1per_pageinteger queryRésultats par page
Par défaut :
50statusstring queryFiltrer par statut de morceau
Valeurs possibles :
pending,processing,completed,failedorderbystring queryPar défaut :
chunk_indexorderstring queryValeurs possibles :
ASC,DESCPar défaut :ASC
Réponses
200 Les morceaux
chunksarray<object>Attributs enfants
idintegerbatch_idintegerchunk_indexintegerstatusstringcontacts_countintegerprocessed_atstring (date-time)
countintegerpagesintegercurrent_pageinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /batch-opened-contacts Contacts ayant ouvert
/batch-opened-contacts Contacts ayant ouvertRenvoie la liste paginée des contacts ayant ouvert un lot d’envoi.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
batch_idinteger query requispagedinteger queryNuméro de page
Par défaut :
1perPageinteger queryRésultats par page
Par défaut :
10searchstring queryTexte recherché
Réponses
200 Les contacts
postsarray<Contact>countintegeridentified_countintegeranonymous_countintegerpagesintegercurrent_pageinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /batch-clicked-contacts Contacts ayant cliqué
/batch-clicked-contacts Contacts ayant cliquéRenvoie la liste paginée des contacts ayant cliqué un lien d’un lot d’envoi.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
batch_idinteger query requispagedinteger queryNuméro de page
Par défaut :
1perPageinteger queryRésultats par page
Par défaut :
10searchstring queryTexte recherché
Réponses
200 Les contacts
postsarray<Contact>countintegeridentified_countintegeranonymous_countintegerpagesintegercurrent_pageinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /batch-unsubscribed-contacts Contacts désinscrits
/batch-unsubscribed-contacts Contacts désinscritsRenvoie la liste paginée des contacts désinscrits depuis un lot d’envoi.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
batch_idinteger query requispagedinteger queryNuméro de page
Par défaut :
1perPageinteger queryRésultats par page
Par défaut :
10searchstring queryTexte recherché
Réponses
200 Les contacts
postsarray<Contact>countintegeridentified_countintegeranonymous_countintegerpagesintegercurrent_pageinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /campaigns/{id}/logs Journaux d’envoi d’une campagne
/campaigns/{id}/logs Journaux d’envoi d’une campagneRenvoie, par contact, ce qu’il est advenu de l’e-mail d’une campagne.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
idinteger path requispageinteger queryNuméro de page
Par défaut :
1per_pageinteger queryRésultats par page
Par défaut :
50statusstring queryFiltrer par statut
Valeurs possibles :
sent,opened,clicked,unsubscribed,failed
Réponses
200 Les journaux
logsarray<CampaignLog>countintegerpagesintegerpageintegerper_pageinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /campaigns/{id}/email-logs Journaux de remise d’une campagne
/campaigns/{id}/email-logs Journaux de remise d’une campagneRenvoie le journal de remise d’une campagne tel que le service d’envoi l’a enregistré.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Paramètres
idinteger path requispageinteger queryNuméro de page
Par défaut :
1per_pageinteger queryRésultats par page
Par défaut :
50statusstring queryValeurs possibles :
success,error,pending
Réponses
GET /campaign/{id}/activate Activer une campagne automatisée
/campaign/{id}/activate Activer une campagne automatiséeActive une campagne `automated` (envoi récurrent ou déclenché).
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Paramètres
idinteger path requis
Réponses
GET /campaign/{id}/deactivate Désactiver une campagne automatisée
/campaign/{id}/deactivate Désactiver une campagne automatiséeDésactive une campagne `automated` et annule ses envois planifiés.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Paramètres
idinteger path requis
Réponses
POST /campaign/create_automated_campaign Configurer une campagne automatisée
/campaign/create_automated_campaign Configurer une campagne automatiséeStocke le HTML, le ciblage et la planification d’une campagne `automated` et l’active.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
recipientTargetingstringComment les destinataires sont choisis
Valeurs possibles :
classic,segment,contact_idsPar défaut :classiclistsarray<object>Avec `classic` : les listes à qui envoyer
Attributs enfants
idinteger
tagsarray<object>Avec `classic` : les étiquettes à qui envoyer
Attributs enfants
idinteger
segmentarray<object>Avec `segment` : un objet portant l’identifiant du segment ; avec `contact_ids` : les identifiants des contacts
postEditinteger requisL’identifiant de la campagne
sendTypestringscheduledAtstringhtmlstring requisconfigSenderConfig requisautomateSettingsobjectLes réglages de récurrence ou de déclenchement
Réponses
POST /campaign/update_automated_campaign Mettre à jour une campagne automatisée
/campaign/update_automated_campaign Mettre à jour une campagne automatiséeMet à jour le HTML et les réglages d’une campagne `automated`.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Corps de la requête requis
campaignIdinteger requishtmlstringdataobjectLes réglages à fusionner
Réponses
GET /campaign/{id}/revisions Révisions d’une campagne
/campaign/{id}/revisions Révisions d’une campagneRenvoie les révisions enregistrées du document d’éditeur d’une campagne.
Autorisation applicationPassword ou apiKey (campaigns:read) + apiSecret
Paramètres
idinteger path requis
Réponses
200 Les révisions
array<CampaignRevision>
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /campaign/{id}/revision/{revision_id} Lire une révision
/campaign/{id}/revision/{revision_id} Lire une révisionRenvoie une révision.
Autorisation applicationPassword ou apiKey (campaigns:read) + apiSecret
Paramètres
idinteger path requisrevision_idinteger path requis
Réponses
200 La révision
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
POST /campaign/revision/{id} Enregistrer une révision
/campaign/revision/{id} Enregistrer une révisionEnregistre le document d’éditeur donné comme révision, s’il diffère de la dernière. Cinq révisions sont conservées.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
jsonobject requisLe document d’éditeur
Réponses
POST /campaign/{id}/restore-revision/{revision_id} Restaurer une révision
/campaign/{id}/restore-revision/{revision_id} Restaurer une révisionRemet une révision comme contenu de la campagne.
Autorisation applicationPassword ou apiKey (campaigns:write) + apiSecret
Paramètres
idinteger path requisrevision_idinteger path requis
Réponses
POST /campaign/{id}/resend-unengaged Renvoyer aux contacts qui n’ont pas réagi
/campaign/{id}/resend-unengaged Renvoyer aux contacts qui n’ont pas réagiPro – crée une copie d’une newsletter envoyée et l’envoie aux contacts qui ne l’ont pas ouverte, n’ont pas cliqué, ou ni l’un ni l’autre.
Autorisation applicationPassword
Paramètres
idinteger path requis
Corps de la requête
modestringValeurs possibles :
unengaged,not_opened,not_clickedPar défaut :unengagedtitlestringNom de la nouvelle campagne
Réponses
200 La campagne de renvoi et son lot
campaign_idintegerbatch_idinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
422 La campagne ne peut pas être renvoyée (non envoyée, pas une newsletter, pas de suivi des ouvertures)
Listes
Listes de contacts
GET /list Lister les listes
/list Lister les listesRenvoie la liste paginée des listes de contacts.
Autorisation applicationPassword ou apiKey (lists:read) + apiSecret
Paramètres
pagedinteger queryNuméro de page
Par défaut :
1perPagesinteger queryRésultats par page
Par défaut :
20searchstring queryTexte recherché
orderbystring queryChamp de tri
orderstring querySens du tri
Valeurs possibles :
ASC,DESCPar défaut :DESC
Réponses
200 La page de listes
postsarray<ContactList>pagesintegercountinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
POST /list Créer une liste
/list Créer une listeCrée une liste de contacts. 409 si le nom est déjà pris.
Autorisation applicationPassword ou apiKey (lists:write) + apiSecret
Corps de la requête requis
titlestring requisdescriptionstring
Réponses
DELETE /list Supprimer des listes
/list Supprimer des listesSupprime les listes données. La liste par défaut est ignorée.
Autorisation applicationPassword ou apiKey (lists:write) + apiSecret
Corps de la requête requis
idsarray<integer> requis
Réponses
GET /list/all Toutes les listes
/list/all Toutes les listesRenvoie toutes les listes, sans pagination.
Autorisation applicationPassword ou apiKey (lists:read) + apiSecret
Réponses
DELETE /list/all Supprimer toutes les listes
/list/all Supprimer toutes les listesSupprime toutes les listes.
Autorisation applicationPassword ou apiKey (lists:write) + apiSecret
Réponses
PUT /list/{id}/rename Renommer une liste
/list/{id}/rename Renommer une listeRenomme une liste et met à jour sa description.
Autorisation applicationPassword ou apiKey (lists:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
titlestring requisdescriptionstring
Réponses
PUT /list/{id}/set-default Définir la liste par défaut
/list/{id}/set-default Définir la liste par défautFait d’une liste celle que rejoignent les nouveaux contacts quand aucune liste n’est donnée.
Autorisation applicationPassword ou apiKey (lists:write) + apiSecret
Paramètres
idinteger path requis
Réponses
Étiquettes
Étiquettes de contacts
GET /tags Lister les étiquettes
/tags Lister les étiquettesRenvoie la liste paginée des étiquettes.
Autorisation applicationPassword ou apiKey (tags:read) + apiSecret
Paramètres
pagedinteger queryNuméro de page
Par défaut :
1perPagesinteger queryRésultats par page
Par défaut :
20searchstring queryTexte recherché
orderbystring queryChamp de tri
orderstring querySens du tri
Valeurs possibles :
ASC,DESCPar défaut :DESC
Réponses
POST /tags Créer une étiquette
/tags Créer une étiquetteCrée une étiquette. 409 si le nom est déjà pris.
Autorisation applicationPassword ou apiKey (tags:write) + apiSecret
Corps de la requête requis
namestring requis
Réponses
GET /tag/all Toutes les étiquettes
/tag/all Toutes les étiquettesRenvoie toutes les étiquettes, sans pagination.
Autorisation applicationPassword ou apiKey (tags:read) + apiSecret
Réponses
DELETE /tag/all Supprimer toutes les étiquettes
/tag/all Supprimer toutes les étiquettesSupprime toutes les étiquettes.
Autorisation applicationPassword ou apiKey (tags:write) + apiSecret
Réponses
PUT /tag/{id}/rename Renomme une étiquette
/tag/{id}/rename Renomme une étiquetteRenomme une étiquette.
Autorisation applicationPassword ou apiKey (tags:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
titlestring requis
Réponses
DELETE /tag Supprimer des étiquettes
/tag Supprimer des étiquettesSupprime les étiquettes données.
Autorisation applicationPassword ou apiKey (tags:write) + apiSecret
Corps de la requête requis
idsarray<integer> requis
Réponses
Champs personnalisés
Définition des champs personnalisés des contacts (les créer avec options, les renommer et les supprimer demande MailerPress Pro)
GET /custom-field/all Lister les champs personnalisés
/custom-field/all Lister les champs personnalisésRenvoie la définition de tous les champs personnalisés.
Autorisation applicationPassword ou apiKey (contacts:read) + apiSecret
Réponses
200 Les définitions
array<CustomFieldDefinition>
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
POST /custom-field Créer un champ personnalisé
/custom-field Créer un champ personnaliséCrée un champ personnalisé ; la clé est dérivée du libellé. Renvoie le champ existant si la clé est déjà prise.
Autorisation applicationPassword ou apiKey (settings:write) + apiSecret
Corps de la requête requis
labelstring requistypestringValeurs possibles :
text,number,date,checkbox,selectPar défaut :text
Réponses
POST /custom-fields Créer un champ personnalisé avec des options
/custom-fields Créer un champ personnalisé avec des optionsPro – crée un champ personnalisé avec une clé explicite, des options et le caractère obligatoire.
Autorisation applicationPassword
Corps de la requête requis
field_keystring requislabelstring requistypestring requisValeurs possibles :
text,number,date,checkbox,selectoptionsarray<object>Attributs enfants
labelstringvaluestring
requiredboolean
Réponses
DELETE /custom-fields Supprimer des champs personnalisés
/custom-fields Supprimer des champs personnalisésPro – supprime plusieurs champs personnalisés par identifiant ou par clé.
Autorisation applicationPassword
Corps de la requête requis
idsarray<integer>field_keysarray<string>
Réponses
PUT /custom-fields/{field_key} Mettre à jour un champ personnalisé
/custom-fields/{field_key} Mettre à jour un champ personnaliséPro – met à jour un champ personnalisé ; un nouveau `field_key` le renomme et déplace les valeurs des contacts.
Autorisation applicationPassword
Paramètres
field_keystring path requis
Corps de la requête requis
field_keystringlabelstringtypestringValeurs possibles :
text,number,date,checkbox,selectoptionsarray<object>Attributs enfants
labelstringvaluestring
requiredboolean
Réponses
DELETE /custom-fields/{field_key} Supprimer un champ personnalisé
/custom-fields/{field_key} Supprimer un champ personnaliséPro – supprime un champ personnalisé et les valeurs que les contacts y avaient.
Autorisation applicationPassword
Paramètres
field_keystring path requis
Réponses
Clés API
Clés API, leurs scopes et leurs limites de débit (scope settings:*, c’est-à-dire la permission *:*)
GET /api-keys Lister les clés API
/api-keys Lister les clés APIRenvoie la liste paginée des clés API.
Autorisation applicationPassword ou apiKey (settings:read) + apiSecret
Paramètres
pagedinteger queryNuméro de page
Par défaut :
1perPagesinteger queryRésultats par page
Par défaut :
20searchstring queryTexte recherché
statusstring queryValeurs possibles :
active,revoked,expiredorderbystring queryValeurs possibles :
created_at,name,last_used_at,request_countPar défaut :created_atorderstring queryValeurs possibles :
ASC,DESCPar défaut :DESC
Réponses
POST /api-keys Créer une clé API
/api-keys Créer une clé APICrée une clé API. La clé et le secret ne sont renvoyés qu’ici, une seule fois.
Autorisation applicationPassword ou apiKey (settings:write) + apiSecret
Corps de la requête requis
namestring requisdescriptionstringpermissionsarray<string>Scopes, parmi GET /api-keys/permissions
rate_limit_requestsintegerRequêtes autorisées par fenêtre
Par défaut :
1000rate_limit_windowintegerFenêtre en secondes
Par défaut :
3600allowed_ipsarray<string>IP autorisées à utiliser la clé ; vide pour toutes
expires_in_daysintegerJours avant expiration de la clé ; 0 pour jamais
Par défaut :
0
Réponses
200 La nouvelle clé et son secret
successbooleanmessagestringkey_idintegerapi_keystringExemple :
mpk_…api_secretstringExemple :
mps_…namestringexpires_atstring (date-time), nullable
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
PUT /api-keys/{key_id} Mettre à jour une clé API
/api-keys/{key_id} Mettre à jour une clé APIMet à jour le nom, la description, les scopes, la limite de débit ou les IP autorisées d’une clé.
Autorisation applicationPassword ou apiKey (settings:write) + apiSecret
Paramètres
key_idinteger path requis
Corps de la requête requis
Réponses
DELETE /api-keys/{key_id} Révoquer une clé API
/api-keys/{key_id} Révoquer une clé APIRévoque une clé : elle cesse de fonctionner mais reste listée. DELETE /api-keys/{key_id}/delete la supprime pour de bon.
Autorisation applicationPassword ou apiKey (settings:write) + apiSecret
Paramètres
key_idinteger path requis
Réponses
POST /api-keys/{key_id}/reactivate Réactiver une clé API
/api-keys/{key_id}/reactivate Réactiver une clé APIRéactive une clé révoquée.
Autorisation applicationPassword ou apiKey (settings:write) + apiSecret
Paramètres
key_idinteger path requis
Réponses
DELETE /api-keys/{key_id}/delete Supprimer une clé API
/api-keys/{key_id}/delete Supprimer une clé APISupprime définitivement une clé.
Autorisation applicationPassword ou apiKey (settings:write) + apiSecret
Paramètres
key_idinteger path requis
Réponses
GET /api-keys/{key_id}/stats Utilisation d’une clé API
/api-keys/{key_id}/stats Utilisation d’une clé APIRenvoie le nombre de requêtes, la dernière utilisation et la limite de débit d’une clé.
Autorisation applicationPassword ou apiKey (settings:read) + apiSecret
Paramètres
key_idinteger path requis
Réponses
200 L’utilisation
key_idintegernamestringstatusstringrequest_countintegerlast_used_atstring (date-time)created_atstring (date-time)rate_limitobjectAttributs enfants
requestsintegerwindowinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /api-keys/permissions Permissions disponibles
/api-keys/permissions Permissions disponiblesRenvoie les scopes qu’une clé API peut recevoir.
Autorisation applicationPassword ou apiKey (settings:read) + apiSecret
Réponses
200 Les permissions
permissionsarray<Permission>
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
Modèles
Modèles d’e-mail et leurs catégories (scope templates:*, c’est-à-dire la permission *:*)
GET /templates/all Lister les modèles
/templates/all Lister les modèlesRenvoie la liste paginée des modèles.
Autorisation applicationPassword ou apiKey (templates:read) + apiSecret
Paramètres
pagedinteger queryNuméro de page
Par défaut :
1perPagesinteger queryRésultats par page
Par défaut :
20searchstring queryTexte recherché
categoryinteger queryIdentifiant de catégorie
categoriesarray<integer> queryIdentifiants de catégories
usage_typestring queryValeurs possibles :
newsletter,automationinternalboolean querySeulement les modèles intégrés
orderbystring queryChamp de tri
orderstring querySens du tri
Valeurs possibles :
ASC,DESCPar défaut :DESC
Réponses
POST /template Créer un modèle
/template Créer un modèleCrée un modèle ; les catégories inconnues sont créées.
Autorisation applicationPassword ou apiKey (templates:write) + apiSecret
Corps de la requête requis
templateNamestring requistemplateCategoryarray<string>templateJSONstring requisLe document d’éditeur
usage_typestringValeurs possibles :
newsletter,automationPar défaut :newsletter
Réponses
GET /template/{id} Lire un modèle
/template/{id} Lire un modèleRenvoie un modèle avec son contenu.
Autorisation applicationPassword ou apiKey (templates:read) + apiSecret
Paramètres
idinteger path requis
Réponses
PUT /template/{id} Mettre à jour un modèle
/template/{id} Mettre à jour un modèleMet à jour le nom, les catégories et le type d’usage d’un modèle.
Autorisation applicationPassword ou apiKey (templates:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
templateNamestring requistemplateCategoryarray<string>usage_typestringValeurs possibles :
newsletter,automation
Réponses
PUT /template/{id}/content Mettre à jour le contenu d’un modèle
/template/{id}/content Mettre à jour le contenu d’un modèleRemplace le document d’éditeur d’un modèle.
Autorisation applicationPassword ou apiKey (templates:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
contentstring requisLe document d’éditeur
Réponses
DELETE /templates/{id} Supprimer un modèle
/templates/{id} Supprimer un modèleSupprime un modèle.
Autorisation applicationPassword ou apiKey (templates:write) + apiSecret
Paramètres
idinteger path requis
Réponses
GET /categories/all Catégories de modèles
/categories/all Catégories de modèlesRenvoie les catégories de modèles.
Autorisation applicationPassword ou apiKey (templates:read) + apiSecret
Paramètres
usage_typestring queryValeurs possibles :
newsletter,automation
Réponses
POST /category/rename Renommer une catégorie
/category/rename Renommer une catégorieRenomme une catégorie de modèles.
Autorisation applicationPassword ou apiKey (templates:write) + apiSecret
Corps de la requête requis
current_namestring requisnew_namestring requis
Réponses
DELETE /category/delete Supprimer une catégorie
/category/delete Supprimer une catégorieSupprime une catégorie de modèles.
Autorisation applicationPassword ou apiKey (templates:write) + apiSecret
Corps de la requête requis
namestring requis
Réponses
Automatisations
Workflows : leurs étapes, statut, jobs et journaux (scope automations:*, c’est-à-dire la permission *:*)
GET /workflows Lister les workflows
/workflows Lister les workflowsRenvoie la liste paginée des workflows avec les statistiques de leurs jobs.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Paramètres
pagedinteger queryNuméro de page
Par défaut :
1perPagesinteger queryRésultats par page
Par défaut :
20searchstring queryTexte recherché
statusstring queryValeurs possibles :
DRAFT,ENABLED,DISABLEDtrigger_typestring queryFiltrer par clé de déclencheur
orderbystring queryValeurs possibles :
name,id,created_at,updated_atPar défaut :updated_atorderstring queryValeurs possibles :
ASC,DESCPar défaut :DESC
Réponses
200 La page de workflows
postsarray<AutomationListItem>pagesintegercountinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
POST /workflows Créer un workflow
/workflows Créer un workflowCrée un workflow à partir de ses étapes, ou d’un modèle.
Autorisation applicationPassword ou apiKey (automations:write) + apiSecret
Corps de la requête requis
Réponses
200 Le workflow
automationAutomationnodesarray<AutomationNode>
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /workflows/{id} Lire un workflow
/workflows/{id} Lire un workflowRenvoie un workflow et ses étapes.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Paramètres
idinteger path requis
Réponses
200 Le workflow
automationAutomationnodesarray<AutomationNode>
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
PUT /workflows/{id} Mettre à jour un workflow
/workflows/{id} Mettre à jour un workflowRemplace les réglages et les étapes d’un workflow. 400 avec la liste des erreurs si une étape est invalide.
Autorisation applicationPassword ou apiKey (automations:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête requis
Réponses
200 Le workflow
automationAutomationnodesarray<AutomationNode>
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
DELETE /workflows/{id} Supprimer un workflow
/workflows/{id} Supprimer un workflowSupprime un workflow et ses jobs.
Autorisation applicationPassword ou apiKey (automations:write) + apiSecret
Paramètres
idinteger path requis
Réponses
DELETE /workflows/all Supprimer tous les workflows
/workflows/all Supprimer tous les workflowsSupprime tous les workflows.
Autorisation applicationPassword ou apiKey (automations:write) + apiSecret
Réponses
PUT /workflows/status Changer le statut de workflows
/workflows/status Changer le statut de workflowsActive, désactive ou remet en brouillon les workflows donnés, ou tous avec `ids` = `all`.
Autorisation applicationPassword ou apiKey (automations:write) + apiSecret
Corps de la requête requis
idsarray<integer> |allrequisstatusstring requisValeurs possibles :
DRAFT,ENABLED,DISABLED
Réponses
GET /workflows/{id}/stats Statistiques d’un workflow
/workflows/{id}/stats Statistiques d’un workflowRenvoie les compteurs de jobs et de journaux d’un workflow.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Paramètres
idinteger path requis
Réponses
200 Les statistiques
total_jobsintegeractive_jobsintegercompleted_jobsintegerfailed_jobsintegerjobs_by_statusobjecttotal_logsintegerlogs_by_statusobjectunique_usersintegerlast_executionstring (date-time)
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /workflows/{id}/logs Journaux d’un workflow
/workflows/{id}/logs Journaux d’un workflowRenvoie le journal d’exécution d’un workflow, par contact et par étape.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Paramètres
idinteger path requispageinteger queryNuméro de page
Par défaut :
1per_pageinteger queryRésultats par page
Par défaut :
50statusstring queryFiltrer par statut
Réponses
200 Les journaux
logsarray<AutomationLog>countintegerpagesintegerpageintegerper_pageinteger
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /workflows/{id}/goals Objectifs d’un workflow
/workflows/{id}/goals Objectifs d’un workflowRenvoie les étapes objectif d’un workflow avec leurs statistiques de conversion.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Paramètres
idinteger path requis
Réponses
200 Les objectifs
goalsarray<object>Attributs enfants
step_idstringgoal_eventstringlabelstringnext_step_idstringalternative_step_idstringstatsobject
totalsobject
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /workflows/ab-tests/{automationId} Tests A/B d’un workflow
/workflows/ab-tests/{automationId} Tests A/B d’un workflowRenvoie les résultats des étapes de test A/B d’un workflow.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Paramètres
automationIdinteger path requis
Réponses
200 Les tests
idintegertest_namestringstep_idstringstatusstringValeurs possibles :
running,completedwinnerstring, nullablewinner_metricnumber, nullablewinning_criteriastringValeurs possibles :
open_rate,click_ratecreated_atstring (date-time)completed_atstring (date-time), nullableversion_aobjectAttributs enfants
subjectstringmetricsobject
version_bobjectAttributs enfants
subjectstringmetricsobject
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
POST /workflows/{id}/retry-failed Relancer les jobs en échec
/workflows/{id}/retry-failed Relancer les jobs en échecRemet en file les jobs en échec d’un workflow – un seul, avec `job_id`, ou tous.
Autorisation applicationPassword ou apiKey (automations:write) + apiSecret
Paramètres
idinteger path requis
Corps de la requête
job_idinteger
Réponses
GET /workflows/failed-jobs Jobs en échec
/workflows/failed-jobs Jobs en échecRenvoie les jobs en échec de tous les workflows sur une période.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Paramètres
intervalstring queryPériode
Valeurs possibles :
24h,7d,30dPar défaut :7d
Réponses
200 Les jobs
failed_jobsarray<object>Attributs enfants
idintegerautomation_idintegerworkflow_namestringuser_idintegeruser_emailstringstatusstringcreated_atstring (date-time)updated_atstring (date-time)stepsarray<object>Attributs enfants
step_idstringstatusstringcreated_atstring (date-time)dataobject
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /workflows/triggers Déclencheurs disponibles
/workflows/triggers Déclencheurs disponiblesRenvoie les déclencheurs qu’une étape de workflow peut utiliser, avec leurs clés et réglages.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Réponses
GET /workflows/actions Actions disponibles
/workflows/actions Actions disponiblesRenvoie les actions qu’une étape de workflow peut utiliser, avec leurs clés et réglages.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Réponses
GET /workflows/conditions Conditions disponibles
/workflows/conditions Conditions disponiblesRenvoie les conditions qu’une étape de workflow peut utiliser, avec leurs clés et réglages.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Réponses
GET /workflows/goals Objectifs disponibles
/workflows/goals Objectifs disponiblesRenvoie les objectifs qu’une étape de workflow peut utiliser, avec leurs clés et réglages.
Autorisation applicationPassword ou apiKey (automations:read) + apiSecret
Réponses
Segments
Pro – segments dynamiques de contacts. Mot de passe d’application uniquement : les endpoints Pro n’acceptent pas les clés API.
GET /segments Lister les segments
/segments Lister les segmentsPro – renvoie la liste paginée des segments avec leur nombre de contacts.
Autorisation applicationPassword
Paramètres
pagedinteger queryNuméro de page
Par défaut :
1perPagesinteger queryRésultats par page
Par défaut :
20searchstring queryTexte recherché
orderbystring queryChamp de tri
orderstring querySens du tri
Valeurs possibles :
ASC,DESCPar défaut :DESC
Réponses
POST /segments Créer un segment
/segments Créer un segmentPro – crée un segment à partir de ses conditions. 409 si le nom est déjà pris.
Autorisation applicationPassword
Corps de la requête requis
namestring requisconditionsobject requis
Réponses
PUT /segments/{id} Mettre à jour un segment
/segments/{id} Mettre à jour un segmentPro – met à jour le nom et les conditions d’un segment.
Autorisation applicationPassword
Paramètres
idinteger path requis
Corps de la requête requis
namestring requisconditionsobject requis
Réponses
DELETE /segments/{id} Supprimer un segment
/segments/{id} Supprimer un segmentPOST /segments/preview-count Compter les contacts de conditions
/segments/preview-count Compter les contacts de conditionsPro – compte les contacts qui répondent à un arbre de conditions, avant de l’enregistrer.
Autorisation applicationPassword
Corps de la requête requis
conditionsobject requis
Réponses
GET /getContactSegment Contacts d’un segment
/getContactSegment Contacts d’un segmentPro – renvoie les contacts d’un segment : paginés, ou seulement leurs identifiants.
Autorisation applicationPassword
Paramètres
segmentNamestring query requisonlyIdsboolean queryNe renvoyer que les identifiants
response_typestring queryValeurs possibles :
paginated,idspageinteger queryNuméro de page
Par défaut :
1per_pageinteger queryRésultats par page
Par défaut :
20
Réponses
GET /conditions-metadata Conditions disponibles
/conditions-metadata Conditions disponiblesPro – renvoie les champs, opérateurs et types de saisie qu’une condition de segment peut utiliser.
Autorisation applicationPassword
Réponses
Webhooks
Pro – webhooks sortants (MailerPress appelle vos URL sur des événements) et entrants (vos systèmes appellent MailerPress). Mot de passe d’application uniquement.
GET /webhooks/events Événements disponibles
/webhooks/events Événements disponiblesPro – renvoie les événements auxquels un webhook sortant peut s’abonner.
Autorisation applicationPassword
Réponses
200 Les événements
array<WebhookEvent>
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /webhooks/outgoing Webhooks sortants
/webhooks/outgoing Webhooks sortantsPro – renvoie la configuration des webhooks sortants, indexée par événement.
Autorisation applicationPassword
Réponses
POST /webhooks/outgoing Enregistrer les webhooks sortants
/webhooks/outgoing Enregistrer les webhooks sortantsPro – remplace la configuration des webhooks sortants. Chaque événement est envoyé en POST JSON à ses URL, signé par `X-Webhook-Signature: sha256=<HMAC-SHA256 du corps avec le secret>`.
Autorisation applicationPassword
Corps de la requête requis
object
Réponses
GET /webhooks/outgoing-settings Webhooks sortants et leurs événements
/webhooks/outgoing-settings Webhooks sortants et leurs événementsPro – renvoie les événements et les configurations sortantes en un appel.
Autorisation applicationPassword
Réponses
200 Événements et configurations
eventsarray<WebhookEvent>configsobject
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
POST /webhooks/outgoing/{event_key}/test Envoyer un événement de test
/webhooks/outgoing/{event_key}/test Envoyer un événement de testPro – envoie en POST un exemple de charge utile d’un événement aux URL données, ou à celles configurées.
Autorisation applicationPassword
Paramètres
event_keystring path requis
Corps de la requête
urlsarray<string (uri)>secretstring
Réponses
200 Un résultat par URL
successbooleanmessagestringresultsarray<object>Attributs enfants
urlstringsuccessbooleanstatus_codeintegerresponse_bodystringerrorstring
test_payloadWebhookPayload
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /webhooks Webhooks entrants
/webhooks Webhooks entrantsPro – renvoie les webhooks entrants.
Autorisation applicationPassword
Réponses
200 Les webhooks
array<IncomingWebhook>
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
GET /webhooks/incoming Webhooks entrants et leurs gestionnaires
/webhooks/incoming Webhooks entrants et leurs gestionnairesPro – renvoie les webhooks entrants et les gestionnaires qu’ils peuvent exécuter.
Autorisation applicationPassword
Réponses
200 Webhooks et gestionnaires
webhooksarray<IncomingWebhook>available_handlersarray<object>Attributs enfants
keystringlabelstringdescriptionstring
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
POST /webhooks/incoming Enregistrer les webhooks entrants
/webhooks/incoming Enregistrer les webhooks entrantsPro – remplace la configuration des webhooks entrants.
Autorisation applicationPassword
Corps de la requête requis
object
Réponses
POST /webhooks/{webhook_id} Enregistrer un webhook entrant
/webhooks/{webhook_id} Enregistrer un webhook entrantPro – crée ou met à jour un webhook entrant. Un secret est généré si aucun n’est donné.
Autorisation applicationPassword
Paramètres
webhook_idstring path requis
Corps de la requête requis
descriptionstringenabledbooleanPar défaut :
truehandlersarray<string>secretstring
Réponses
200 Webhook enregistré
successbooleanmessagestringwebhookIncomingWebhook
400 Requête incorrecte – paramètres invalides
401 Non autorisé – authentification requise
403 Interdit – permissions ou scope insuffisants
404 Introuvable
DELETE /webhooks/{webhook_id} Supprimer un webhook entrant
/webhooks/{webhook_id} Supprimer un webhook entrantPro – supprime un webhook entrant.
Autorisation applicationPassword
Paramètres
webhook_idstring path requis
Réponses
GET /webhooks/incoming/{webhook_id}/secret Secret d’un webhook entrant
/webhooks/incoming/{webhook_id}/secret Secret d’un webhook entrantPro – renvoie le secret de signature d’un webhook entrant.
Autorisation applicationPassword
Paramètres
webhook_idstring path requis
Réponses
POST /webhooks/incoming/{webhook_id}/regenerate-secret Régénérer le secret
/webhooks/incoming/{webhook_id}/regenerate-secret Régénérer le secretPro – remplace le secret de signature d’un webhook entrant.
Autorisation applicationPassword
Paramètres
webhook_idstring path requis
Réponses
POST /webhooks/receive/{webhook_id} Appeler un webhook entrant
/webhooks/receive/{webhook_id} Appeler un webhook entrantPro – l’URL que vos systèmes appellent. Le corps (JSON ou formulaire) est signé par `X-Webhook-Signature` (ou `X-Hub-Signature-256`, `X-Signature`) : `sha256=<HMAC-SHA256 du corps avec le secret du webhook>`. Les gestionnaires du webhook s’exécutent ensuite sur la charge utile.
Aucune authentification requise.
Paramètres
webhook_idstring path requis
Corps de la requête requis
object
Réponses
Tests A/B
Pro – tests A/B entre variantes d’une campagne. Mot de passe d’application uniquement.
GET /ab-campaigns Lister les tests A/B
/ab-campaigns Lister les tests A/BPro – renvoie la liste paginée des tests A/B.
Autorisation applicationPassword
Paramètres
pagedinteger queryNuméro de page
Par défaut :
1per_pageinteger queryRésultats par page
Par défaut :
20searchstring queryTexte recherché
statusstring queryValeurs possibles :
draft,running,completed,canceled
Réponses
POST /ab-campaigns Créer un test A/B
/ab-campaigns Créer un test A/BPro – crée un test A/B en brouillon et une campagne par variante.
Autorisation applicationPassword
Corps de la requête requis
Réponses
GET /ab-campaigns/{id} Lire un test A/B
/ab-campaigns/{id} Lire un test A/BPro – renvoie un test avec ses variantes et leurs métriques.
Autorisation applicationPassword
Paramètres
idinteger path requis
Réponses
DELETE /ab-campaigns/{id} Supprimer un test A/B
/ab-campaigns/{id} Supprimer un test A/BPro – supprime un test et ses campagnes variantes.
Autorisation applicationPassword
Paramètres
idinteger path requis
Réponses
PUT /ab-campaigns/{id}/settings Mettre à jour les réglages d’un test A/B
/ab-campaigns/{id}/settings Mettre à jour les réglages d’un test A/BPro – met à jour un test en brouillon : mode, échantillon, durée, métrique gagnante, audience. 409 une fois lancé.
Autorisation applicationPassword
Paramètres
idinteger path requis
Corps de la requête requis
Réponses
POST /ab-campaigns/{id}/variations/{campaign_id}/clone Copier une variante
/ab-campaigns/{id}/variations/{campaign_id}/clone Copier une variantePro – copie le contenu d’une campagne variante dans une autre du même test.
Autorisation applicationPassword
Paramètres
idinteger path requiscampaign_idinteger path requisLa campagne variante dans laquelle copier
Corps de la requête requis
source_campaign_idinteger requisonly_if_emptybooleanSeulement si la cible n’a pas encore de contenu
Réponses
POST /ab-campaigns/{id}/launch Lancer un test A/B
/ab-campaigns/{id}/launch Lancer un test A/BPro – envoie l’échantillon de chaque variante. 422 avec moins de deux variantes ou si l’une n’a pas de contenu.
Autorisation applicationPassword
Paramètres
idinteger path requis
Réponses
POST /ab-campaigns/{id}/evaluate Évaluer un test A/B
/ab-campaigns/{id}/evaluate Évaluer un test A/BPro – compare les variantes sur la métrique gagnante et, avec `send_winner`, envoie la gagnante au reste de l’audience.
Autorisation applicationPassword
Paramètres
idinteger path requis
Corps de la requête
send_winnerboolean
Réponses
POST /ab-campaigns/{id}/send-winner Envoyer la gagnante
/ab-campaigns/{id}/send-winner Envoyer la gagnantePro – envoie la variante gagnante aux contacts qui n’étaient pas dans l’échantillon.
Autorisation applicationPassword
Paramètres
idinteger path requis
Réponses
POST /ab-campaigns/{id}/cancel Annuler un test A/B
/ab-campaigns/{id}/cancel Annuler un test A/BPro – annule un test en cours et ses envois en attente.
Autorisation applicationPassword
Paramètres
idinteger path requis
Réponses
Schémas
Error
ErrorcodestringExemple :
rest_forbiddenmessagestringdataobjectAttributs enfants
statusintegerExemple :
403
Tag
Tagtag_idintegerExemple :
3namestringExemple :
VIPcreated_atstring (date-time)
ContactList
ContactListlist_idintegerExemple :
1namestringExemple :
Newsletterdescriptionstringis_defaultintegerValeurs possibles :
0,1contact_countintegercreated_atstring (date-time)
CustomFieldDefinition
CustomFieldDefinitionidintegerfield_keystringExemple :
companylabelstringExemple :
CompanytypestringValeurs possibles :
text,number,date,checkbox,selectrequiredbooleanis_editablebooleanoptionsarray<object>Attributs enfants
labelstringvaluestring
Contact
Contactcontact_idintegerExemple :
42idintegerExemple :
42emailstring (email)Exemple :
[email protected]first_namestringExemple :
Johnlast_namestringExemple :
Doesubscription_statusstringValeurs possibles :
subscribed,unsubscribed,pendingExemple :subscribedcreated_atstring (date-time)updated_atstring (date-time)tagsarray<object>Attributs enfants
tag_idintegertag_namestring
contact_listsarray<object>Attributs enfants
list_idintegerlist_namestring
custom_fieldsarray<object>Attributs enfants
field_keystringlabelstringtypestringrequiredbooleanoptionsarray<string>valuestring
total_openedintegertotal_clickedinteger
ContactNote
ContactNoteidintegercontact_idintegercontentstringcreated_atstring (date-time)updated_atstring (date-time)
ContactActivity
ContactActivitycampaign_idintegercampaign_namestringengagement_scorenumberactivitiesarray<object>Attributs enfants
typestringValeurs possibles :
sent,opened,clicked,unsubscribedtimestampstring (date-time)detailsobject
Campaign
CampaignidintegerExemple :
12namestringExemple :
October newslettersubjectstringstatusstringValeurs possibles :
draft,scheduled,pending,sending,sent,paused,cancelled,error,trash,active,inactivecampaign_typestringValeurs possibles :
newsletter,ab_test,automated,automation,wp_email,wc_email,confirm_emailemail_typestringValeurs possibles :
html,textuser_idintegerauthorobjectAttributs enfants
namestringemailstring
batchintegerpublic_urlstring (uri)lockedbooleanstatisticsBatchStatisticscreated_atstring (date-time)updated_atstring (date-time)
CampaignDetail
CampaignDetailtitlestringstatusstringjsonstringLe document d’éditeur (JSON) de la campagne
configobjecttypestringcampaign_typestringemail_typestringeditor_typestringValeurs possibles :
visual,htmlautomation_idinteger, nullableautomation_namestring, nullablestep_idstring, nullable
BatchStatistics
BatchStatisticstotal_opensintegertotal_clicksintegertotal_unsubscribesinteger
Batch
Batchidintegercampaign_idintegerstatusstringValeurs possibles :
pending,scheduled,processing,completed,paused,cancelled,drafttotal_emailsintegersender_namestringsender_tostring (email)subjectstringscheduled_atstring (date-time), nullablecreated_atstring (date-time)
CampaignStatus
CampaignStatuscampaign_idintegertitlestringsubjectstringstatusstringbatchBatchstatisticsBatchStatistics
SenderConfig
SenderConfigfromNamestringExemple :
MailerPressfromTostring (email)Exemple :
[email protected]subjectstring requisExemple :
Our October news
AudienceTargeting
AudienceTargetingrecipientTargetingstringComment les destinataires sont choisis
Valeurs possibles :
classic,segment,contact_idsPar défaut :classiclistsarray<object>Avec `classic` : les listes à qui envoyer
Attributs enfants
idinteger
tagsarray<object>Avec `classic` : les étiquettes à qui envoyer
Attributs enfants
idinteger
segmentarray<object>Avec `segment` : un objet portant l’identifiant du segment ; avec `contact_ids` : les identifiants des contacts
CampaignLog
CampaignLogidintegercontact_idintegeremailstringfirst_namestringlast_namestringstatusstringValeurs possibles :
sent,opened,clicked,unsubscribed,faileddataobjectAttributs enfants
emails_openedintegeremails_clickedintegerunsubscribedbooleanunsubscribed_atstring (date-time)opened_atstring (date-time)
created_atstring (date-time)
EmailLog
EmailLogidintegerto_emailstring (email)subjectstringfrom_emailstringfrom_namestringservicestringExemple :
brevostatusstringValeurs possibles :
pending,success,errorerror_messagestring, nullablecreated_atstring (date-time)sent_atstring (date-time), nullableis_htmlboolean
CampaignRevision
CampaignRevisionidintegercampaign_idintegerjsonstringcreated_byintegercreated_by_namestringcreated_atstring (date-time)
ApiKey
ApiKeykey_idintegernamestringdescriptionstringpermissionsarray<string>statusstringValeurs possibles :
active,revoked,expiredrate_limit_requestsintegerExemple :
1000rate_limit_windowintegerFenêtre en secondes
Exemple :
3600allowed_ipsarray<string>request_countintegerlast_used_atstring (date-time), nullableexpires_atstring (date-time), nullablecreated_atstring (date-time)updated_atstring (date-time)
ApiKeyInput
ApiKeyInputnamestringdescriptionstringpermissionsarray<string>Scopes, parmi GET /api-keys/permissions
rate_limit_requestsintegerRequêtes autorisées par fenêtre
Par défaut :
1000rate_limit_windowintegerFenêtre en secondes
Par défaut :
3600allowed_ipsarray<string>IP autorisées à utiliser la clé ; vide pour toutes
Permission
PermissionidstringExemple :
contacts:readlabelstringdescriptionstring
Template
TemplateidintegernamestringcontentstringLe document d’éditeur (JSON)
cat_idintegercategoriesarray<object>Attributs enfants
category_idintegernamestringslugstring
usage_typestringValeurs possibles :
newsletter,automationinternalbooleancreated_atstring (date-time)updated_atstring (date-time)
Automation
AutomationidintegernamestringauthorintegerstatusstringValeurs possibles :
DRAFT,ENABLED,DISABLEDrun_once_per_subscriberbooleancreated_atstring (date-time)updated_atstring (date-time)
AutomationNode
AutomationNodeidstringExemple :
step_1step_idstringExemple :
step_1typestringValeurs possibles :
trigger,action,condition,delay,goal,ab_testkeystringLa clé du déclencheur, de l’action ou de la condition, parmi les catalogues /workflows/triggers, /actions et /conditions
Exemple :
contact_subscribedsettingsobjectnext_step_idstring, nullablealternative_step_idstring, nullablepositionobjectAttributs enfants
xnumberynumber
AutomationInput
AutomationInputautomationobject requisAttributs enfants
namestring requisstatusstringValeurs possibles :
DRAFT,ENABLED,DISABLEDrun_once_per_subscriberboolean
nodesarray<AutomationNode> requistemplate_idstringPartir d’un modèle de workflow plutôt que des nœuds donnés
AutomationListItem
AutomationListItemidintegerautomation_idintegernamestringstatusstringcreated_atstring (date-time)updated_atstring (date-time)statsobjectAttributs enfants
total_jobsintegeractive_jobsintegercompleted_jobsintegerfailed_jobsintegerlast_executionstring (date-time)
ab_testobject, nullableAttributs enfants
latest_winnerstringlatest_completed_atstring (date-time)
AutomationLog
AutomationLoguser_idintegeremailstringstatusstringdataobjectcreated_atstring (date-time)job_statusstringcondition_rulesobject, nullableevent_namestringstep_typestringstep_keystring
Segment
SegmentidintegernamestringExemple :
Engaged buyersconditionsobjectL’arbre de conditions, tel que le constructeur de segments l’enregistre ; les champs et opérateurs viennent de GET /conditions-metadata
contact_countintegercreated_atstring (date-time)updated_atstring (date-time)
OutgoingWebhookConfig
OutgoingWebhookConfigenabledbooleanurlsarray<string (uri)>Les URL auxquelles l’événement est envoyé en POST
secretstringSecret de signature ; `***` dans les réponses, et pour conserver celui en place à l’enregistrement
WebhookEvent
WebhookEventkeystringExemple :
contact.creatednamestringdescriptionstringcategorystring
WebhookPayload
WebhookPayloadeventstringExemple :
contact.createddataobjectmetadataobjectAttributs enfants
timestampstring (date-time)event_keystringevent_namestring
IncomingWebhook
IncomingWebhookidstringExemple :
crm-syncdescriptionstringenabledbooleanhandlersarray<string>Clés des gestionnaires, parmi `available_handlers`
secretstring`***` dans les réponses
urlstring (uri)
AbVariation
AbVariationidintegercampaign_idintegerlabelstringExemple :
Atraffic_percentageintegersample_contact_countintegersent_contact_countintegertitlestringsubjectstringstatusstringeditor_typestringValeurs possibles :
visual,htmlconfigobjectmetricsobjectAttributs enfants
sentintegeropensintegerclicksintegeropen_ratenumberclick_ratenumberperformance_scorenumber
AbTest
AbTestidintegernamestringuser_idintegerstatusstringValeurs possibles :
draft,running,completed,canceledtest_modestringwinner : envoyer l’échantillon, désigner une gagnante, l’envoyer au reste ; split : envoyer chaque variante à sa part
Valeurs possibles :
winner,splitsample_percentageintegertest_duration_valueintegertest_duration_unitstringValeurs possibles :
minutes,hours,daystest_duration_secondsintegerwinner_metricstringValeurs possibles :
open_rate,click_rate,performance_scoreauto_send_winnerbooleanfallback_campaign_idinteger, nullablewinner_campaign_idinteger, nullableaudience_configAudienceTargetingvariationsarray<AbVariation>created_atstring (date-time)updated_atstring (date-time)
AbTestInput
AbTestInputnamestring requistest_modestringValeurs possibles :
winner,splitPar défaut :winnersample_percentageintegerPar défaut :
20test_duration_valueintegertest_duration_unitstringValeurs possibles :
minutes,hours,daysPar défaut :hourswinner_metricstringValeurs possibles :
open_rate,click_rate,performance_scorePar défaut :performance_scoreauto_send_winnerbooleanfallback_variation_labelstringPar défaut :
AaudienceAudienceTargetingvariation_countintegervariationsarray<object>Attributs enfants
labelstringsource_campaign_idintegerCopier cette campagne dans la variante
base_email_configobjectExpéditeur et objet partagés par les variantes
base_jsonstringDocument d’éditeur partagé par les variantes