E-commerce
Les paramètres Commerce, la vue d’ensemble du chiffre d’affaires et le profil d’achat d’un contact.
Récupérer les paramètres Commerce
Récupère les paramètres Commerce de l’espace de travail. Un espace de travail qui ne les a jamais modifiés obtient les valeurs par défaut. Nécessite une clé API avec la portée full.
/commerce/settingsL’objet paramètres
objectstringToujours commerce_settings.
currencystringCode ISO 4217 à trois lettres utilisé pour les commandes et les paniers qui n’indiquent pas de devise. Par défaut : USD.
attribution_click_daysintegerUne nouvelle commande est attribuée à l’e-mail de campagne ou d’automatisation sur lequel l’acheteur a cliqué en dernier dans ce nombre de jours précédant la commande. Par défaut : 5.
attribution_open_daysintegerSans clic, la commande est attribuée à l’e-mail que l’acheteur a ouvert en dernier dans ce nombre de jours. Avec 0, seuls les clics sont attribués. Par défaut : 1.
cart_abandon_minutesintegerLe panier d’un contact contenant des articles qui n’est pas mis à jour pendant ce nombre de minutes devient abandonné et émet cart.abandoned. Par défaut : 60.
{
"object": "commerce_settings",
"currency": "USD",
"attribution_click_days": 5,
"attribution_open_days": 1,
"cart_abandon_minutes": 60
}Mettre à jour les paramètres Commerce
Modifie les paramètres Commerce de l’espace de travail. Seuls les champs envoyés changent. L’attribution est fixée au premier enregistrement d’une commande : les nouvelles fenêtres s’appliquent donc aux commandes enregistrées ensuite. Nécessite une clé API avec la portée full.
/commerce/settingsCorps de la requête
currencystringCode ISO 4217 à trois lettres, comme EUR. Utilisé pour les commandes et les paniers qui n’indiquent pas de devise.
attribution_click_daysintegerFenêtre de clic en jours, de 1 à 30.
attribution_open_daysintegerFenêtre d’ouverture en jours, de 0 à 30. Avec 0, seuls les clics sont attribués.
cart_abandon_minutesintegerMinutes sans mise à jour avant que le panier d’un contact devienne abandonné, de 15 à 10 080 (7 jours).
Réponse
Renvoie 200 OK avec l’ensemble des paramètres. Renvoie 422 quand une valeur est hors limites.
{
"object": "commerce_settings",
"currency": "EUR",
"attribution_click_days": 5,
"attribution_open_days": 0,
"cart_abandon_minutes": 120
}{
"message": "Validation failed. cart_abandon_minutes: Must be a whole number from 15 to 10080.",
"errors": {
"cart_abandon_minutes": [
"Must be a whole number from 15 to 10080."
]
}
}Récupérer la vue d’ensemble Commerce
Récupère les chiffres de Email MarketingCommerce pour une période. Nécessite une clé API avec la portée full.
Le chiffre d’affaires correspond au total des commandes moins les remboursements, et les commandes annulées ne comptent pas. Les montants sont regroupés par devise et jamais convertis : la plupart des champs sont donc des listes avec une entrée par devise.
/commerce/overviewParamètres de requête
fromstringDébut de la période, une date ou une date-heure ISO 8601. Par défaut : 30 jours avant to.
tostringFin de la période, exclue. Par défaut : maintenant. La période peut durer jusqu’à 366 jours.
Réponse
objectstringToujours commerce_overview.
from, tostringLa période utilisée, au format ISO 8601 UTC.
totalsobject[]Toutes les commandes passées sur la période, par devise, du chiffre d’affaires le plus élevé au plus faible : currency, orders, revenue, buyers et average_order_value.
attributedobject[]Les commandes attribuées à un e-mail, par channel (campaigns ou automations) et par currency, avec orders, revenue et buyers.
customersobject-
new: les contacts dont la première commande est dans la période. -
returning: les contacts dont la première commande est antérieure àfromet qui ont de nouveau commandé depuisfrom.
cartsobjectLes paniers mis à jour pour la dernière fois sur la période : active, abandoned et recovered (convertis après avoir été abandonnés). abandoned_by_currency liste, par currency, le nombre de paniers abandonnés (carts) et leur value totale, de la valeur la plus élevée à la plus faible ; abandoned_value et abandoned_currency reprennent la première entrée.
seriesobject[]Une entrée par jour et par devise avec des commandes : date (YYYY-MM-DD), currency, orders, revenue et attributed_revenue.
top_productsobject[]Les produits classés par chiffre d’affaires des articles, 10 au maximum : product_id (l’ID du produit dans votre boutique), title, image_url, currency, quantity et revenue.
top_campaignsobject[]Les campagnes classées par chiffre d’affaires attribué, 5 au maximum : campaign_id, name, currency, orders et revenue.
Renvoie 422 si from ou to n’est pas une date valide, si from n’est pas antérieur à to, ou si la période dépasse 366 jours.
{
"object": "commerce_overview",
"from": "2026-09-10T00:00:00.000Z",
"to": "2026-10-10T00:00:00.000Z",
"totals": [
{
"currency": "USD",
"orders": 1284,
"revenue": 108422.6,
"buyers": 1007,
"average_order_value": 84.44
}
],
"attributed": [
{
"channel": "campaigns",
"currency": "USD",
"orders": 312,
"revenue": 27140.3,
"buyers": 288
},
{
"channel": "automations",
"currency": "USD",
"orders": 158,
"revenue": 13981.2,
"buyers": 149
}
],
"customers": {
"new": 604,
"returning": 403
},
"carts": {
"active": 37,
"abandoned": 412,
"recovered": 66,
"abandoned_value": 35210.8,
"abandoned_currency": "USD",
"abandoned_by_currency": [
{ "currency": "USD", "carts": 412, "value": 35210.8 }
]
},
"series": [
{
"date": "2026-10-08",
"currency": "USD",
"orders": 51,
"revenue": 4318.4,
"attributed_revenue": 1702.9
},
{
"date": "2026-10-09",
"currency": "USD",
"orders": 44,
"revenue": 3720.15,
"attributed_revenue": 1188.6
}
],
"top_products": [
{
"product_id": "8123456789",
"title": "Trail running shoe",
"image_url": "https://shop.example.com/images/trail-running-shoe.jpg",
"currency": "USD",
"quantity": 214,
"revenue": 18190
}
],
"top_campaigns": [
{
"campaign_id": "cmp_3zNrBaNjAoPK1l0IL2GQ3pDkubN",
"name": "October newsletter",
"currency": "USD",
"orders": 214,
"revenue": 18364.3
}
]
}{
"message": "Validation failed. from: Use an ISO from/to range of at most 366 days.",
"errors": {
"from": [
"Use an ISO from/to range of at most 366 days."
]
}
}Récupérer le profil d’achat d’un contact
Récupère ce qu’un contact a acheté et consulté : les métriques d’achat, les 10 commandes les plus récentes, le panier ouvert et les produits consultés récemment. Le tableau de bord affiche les mêmes données dans la carte Purchases de la page du contact. Nécessite une clé API avec la portée full.
/contacts/{id}/commerceParamètres de chemin
idstringObligatoireL’ID du contact (con_...) ou l’adresse e-mail du contact. Encodez les adresses e-mail pour l’URL.
Réponse
objectstringToujours contact_commerce.
contact_idstringL’ID du contact (con_...).
metricsobjectLes métriques d’achat, recalculées à chaque écriture de commande. Elles comptent toutes les commandes sauf les commandes annulées et déduisent les remboursements. Quand le contact a commandé dans plusieurs devises, seules les commandes dans la devise de sa dernière commande comptent.
-
orders_count(entier),total_spent(nombre),average_order_value(nombre),currency(chaîne ou null). -
first_order_at,last_order_at(chaîne ou null). -
expected_next_order_at(chaîne ou null) : la dernière commande plus l’intervalle moyen entre les commandes du contact. Défini à partir de la deuxième commande. -
churn_risk(chaîne ou null) :low,mediumouhigh. Compare le temps écoulé depuis la dernière commande à l’intervalle moyen entre les commandes du contact (au moins 14 jours), ou à 90 jours après une seule commande. Dans cet intervalle, il vautlow, jusqu’au double de l’intervallemedium, et au-delàhigh.nullsans commande. -
last_active_at(chaîne ou null) : la dernière activité signalée par le script de suivi sur votre site. -
timezone(chaîne ou null) : le fuseau horaire IANA signalé par le navigateur du contact. Utilisé par les envois à l’heure locale.
ordersobject[]Les 10 commandes les plus récemment passées par le contact.
orders_totalintegerNombre de commandes du contact, y compris les commandes annulées. Utilisez Lister les commandes avec contact_id pour les parcourir page par page.
open_cartobject | nullLe panier du contact mis à jour le plus récemment qui est active ou abandoned et contient des articles, ou null.
recently_viewedobject[]Les produits consultés par le contact au cours des 90 derniers jours, 12 au maximum, du plus récent au plus ancien, tels que signalés par le script de suivi. Les produits archivés et en rupture de stock sont exclus. Chacun a id (l’ID du produit dans votre boutique), title, url, image_url, price, price_formatted, currency et on_sale.
Renvoie 404 si aucun contact ne correspond à id.
{
"object": "contact_commerce",
"contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
"metrics": {
"orders_count": 3,
"total_spent": 276.3,
"average_order_value": 92.1,
"currency": "USD",
"first_order_at": "2026-03-14T10:12:00.000Z",
"last_order_at": "2026-10-08T14:32:10.000Z",
"expected_next_order_at": "2027-01-20T16:42:15.000Z",
"churn_risk": "low",
"last_active_at": "2026-10-09T18:03:27.000Z",
"timezone": "Europe/London"
},
"orders": [
{
"object": "order",
"id": "ord_3aMEK4No62Zw8S1fcHNznAnnbfp",
"external_id": "1042",
"contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
"email": "ada@example.com",
"status": "paid",
"currency": "USD",
"subtotal": 89,
"discount": null,
"shipping": 5,
"tax": 0,
"total": 94,
"refunded_amount": 0,
"coupon_codes": [],
"cart_id": null,
"source": "api",
"placed_at": "2026-10-08T14:32:10.000Z",
"paid_at": "2026-10-08T14:32:11.204Z",
"fulfilled_at": null,
"canceled_at": null,
"refunded_at": null,
"attribution": null,
"items": [
{
"product_id": "8123456789",
"variant_id": null,
"sku": "TRS-BLU-42",
"title": "Trail running shoe",
"quantity": 1,
"unit_price": 89,
"total": 89,
"categories": [
"Shoes",
"Running"
],
"url": "https://shop.example.com/products/trail-running-shoe",
"image_url": "https://shop.example.com/images/trail-running-shoe.jpg"
}
],
"metadata": {},
"created_at": "2026-10-08T14:32:11.204Z",
"updated_at": "2026-10-08T14:32:11.204Z"
}
],
"orders_total": 3,
"open_cart": null,
"recently_viewed": [
{
"id": "8123456790",
"title": "Merino running socks",
"url": "https://shop.example.com/products/merino-running-socks",
"image_url": "https://shop.example.com/images/merino-running-socks.jpg",
"price": 9,
"price_formatted": "$9.00",
"currency": "USD",
"on_sale": false
}
]
}{
"error": "Contact not found",
"message": "Contact not found."
}