Référence des événements
Dans cette section, vous trouverez toutes les références d'events prises en charge par Commanders Act.
Introduction
Pour chaque événement, certaines propriétés sont requises.
Dans tous les cas, les propriétés suivantes sont requises :
event_namecontext.event_idcontext.event_timestamp
Remarque : Les commanders act one tag et les mobile sdks ajoutent automatiquement les propriétés de contexte.
Dans cette section, vous trouverez la liste de tous nos événements standard, avec la liste des propriétés standard requises ou non.
Events courantsEvents e-commerceEvents vidéoEvents de tracking de campagnesSi le type d’événement ou les propriétés que vous recherchez ne sont pas mentionnés dans cette section, vous pouvez toujours envoyer des événements personnalisés et des propriétés personnalisées. Mais la propriété event_name reste requise.
Voici les événements les plus utilisés :
add_payment_info
Cet événement signifie qu’un utilisateur a soumis ses informations de paiement
Paramètres (obligatoires et recommandés)
payment_method
string
Oui
card
La méthode de paiement choisie (voir la liste des valeurs possibles ci-dessous)
user
Oui
consent_categories est la liste des consentements de l’utilisateur et est obligatoire pour gérer les consentements. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
coupon
string
Non
CHRISTMAS
Code coupon utilisé pour un achat.
revenue
number
Non
16.00
Chiffre d’affaires (prix d’expédition et taxes exclus) après remise.
()revenue est généralement requis pour un reporting pertinent.
()currency est requis si vous définissez revenue.
currency
string (ISO 4217)
Non
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
(*) Si vous fournissez le paramètre revenue vous devez également fournir le paramètre currency afin que les métriques de revenu puissent être calculées avec précision.
Exemple
cact('trigger','add_payment_info', {
payment_method: 'card',
revenue: 16.00,
currency: 'EUR',
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});val event = TCAddPaymentInfoEvent("card")
event.revenue = 16.00f
event.currency = "EUR"
serverside.execute(event)TCAddPaymentInfoEvent event = new TCAddPaymentInfoEvent("card");
event.revenue = 16.6f;
event.currency = "EUR";
serverside.execute(event);TCAddPaymentInfoEvent *event = [[TCAddPaymentInfoEvent alloc] initWithId: @"ID";
event.revenue = [[NSDecimalNumber alloc] initWithFloat: 16.00f];
event.currency = @"EUR";
[TCS execute: event];let event = TCAddPaymentInfoEvent(payementMethod: "card")
event?.revenue = 16.00
event?.currency = "EUR"
serverside?.execute(event)var event = TCAddPaymentInfoEvent();
event.paymentMethod = "card";
event.revenue = 16.00;
event.currency = "EUR";
serverside.execute(event);{
"event_name": "add_payment_info",
"payment_method": "card",
"revenue": 16.00,
"value": 22.53,
"currency": "EUR",
"user": {
"id": "12345",
"email": "[email protected]",
"consent_categories": [
1,
3
]
}
}add_shipping_info
Cet événement signifie qu’un utilisateur a soumis ses informations de livraison.
Paramètres
currency
string (ISO 4217)
Oui
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
(*) Si vous fournissez le paramètre revenue ou valuevous devez également fournir le paramètre currency afin que les métriques de revenu puissent être calculées avec précision.
value
number
Oui
22.53
La valeur monétaire de l’événement (prix d’expédition et taxes inclus) après remise
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
coupon
string
Non
CHRISTMAS
Code coupon utilisé pour un achat.
shipping_tier
string
Non
Ground
Le niveau de livraison (par ex. Next-day, Air`) sélectionné pour la livraison de l’article acheté.
Exemple
{% tabs %} {% tab title="JavaScript" %} `
``javascript cact('trigger','add_shipping_info', { value: 8.00, currency: 'EUR', coupon: 'promo', shipping_tier: 'ups', items: [{ id: 'SKU_12345', quantity: 1, variant: 'red', coupon: 'CHRISTMAS', discount: 1.99, product:{ id: '12345', name: 'Trex tshirt', category_1: 'clothes', category_2: 't-shirts', category_3: 'boy', brand: 'Lacoste', price: 9.99 } }], user: { id: '12356', email:'[email protected]', consent_categories: [1,3] } });
</div>
<div data-gb-custom-block data-tag="tab" data-title='Kotlin (Android)'>
```kotlin
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCAddShippingInfoEvent(items, 112.5f, "EUR")
event.coupon = "promo"
event.shippingTier = "ups"
serverside.execute(event)TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCAddShippingInfoEvent event = new TCAddShippingInfoEvent(items, 112.5f, "EUR");
event.coupon = "promo";
event.shippingTier = "ups";
serverside.execute(event);NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithString: @"1.5"]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCAddShippingInfoEvent *event = [[TCAddShippingInfoEvent alloc] initWithItems: items
withValue: [[NSDecimalNumber alloc] initWithString: @"12.2"]
withCurrency: @"EUR"];
event.coupon = @"promo";
event.shippingTier = @"ups";
[TCS execute: event];let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCAddShippingInfoEvent(items: [item_1, item_2], withValue: 1, withCurrency: "EUR")
event?.addAdditionalProperty("additionalKey", withBoolValue: true)
event?.coupon = "promo"
event?.shippingTier = "ups"
serverside?.execute(event)TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 150;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
TCProduct tc_product_2 = TCProduct();
tc_product_2.ID = "product_2_ID";
tc_product_2.name = "product_2_name";
tc_product_2.price = 150;
tc_product_2.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_2 = TCItem();
tc_item_2.ID = "item_2_id";
tc_item_2.quantity = 2;
tc_item_2.product = tc_product;
tc_item_2.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCAddShippingInfoEvent();
event.coupon = "promo";
event.shippingTier = "ups";
event.currency = "EUR";
event.items = [tc_item_1, tc_item_2];
serverside.execute(event);{
"event_name": "add_shipping_info",
"shipping_tier": "Ground",
"revenue": 16.00,
"value": 22.53,
"currency": "EUR",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
],
"price": 9.99
}
},
{
"id": "SKU_12346",
"quantity": 1,
"price": 9.99,
"variant": "green",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12346",
"name": "Heart tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "girl",
"brand": "Jenyfion",
"colors": [
"blue",
"white"
],
"price": 9.99
}
}
],
"user": {
"id": "12345",
"email": "[email protected]",
"consent_categories": [
1,
3
]
}
}add_to_cart
Cet événement signifie qu’un article a été ajouté à un panier pour achat.
Paramètres (obligatoires et recommandés)
value
number
Oui*
8.00
La valeur monétaire de l’événement.
()value est généralement requis pour un reporting pertinent.
()currency est requis si vous définissez value.
currency
string (ISO 4217)
Oui*
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
(*) Si vous fournissez le paramètre revenue vous devez également fournir le paramètre currency afin que les métriques de revenu puissent être calculées avec précision.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','add_to_cart', {
value: 8.00,
currency: 'EUR',
items: [{
id: 'SKU_12345',
quantity: 1,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
price: 9.99
}
}],
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCAddToCartEvent(22.53f, "EUR", items)
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCAddToCartEvent event = new TCAddToCartEvent(22.53f, "EUR", items);
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 1.5f]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCAddToCartEvent *event = [[TCAddToCartEvent alloc] initWithValue: [[NSDecimalNumber alloc] initWithString: @"12.2"]
withCurrency: @"EUR"
withItems: items];
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCAddToCartEvent(value: 1, withCurrency: "EUR", withItems: [item_1, item_2])
event?.addAdditionalProperty("additionalKey", withBoolValue: true)
event?.currency = "EUR"
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 12.5;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCAddToCartEvent();
event.currency = "EUR";
event.items = [tc_item_1];
event.value = 12.5;
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "add_to_cart",
"value": 8.00,
"currency": "EUR",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
]
}
}
]
}{% endtab %} {% endtabs %}
add_to_wishlist
L’événement signifie qu’un article a été ajouté à une wishlist. Utilisez cet événement pour identifier les articles cadeaux populaires dans votre app.
Paramètres (obligatoires et recommandés)
value
number
Non
8.00
La valeur monétaire de l’événement.
()revenue est généralement requis pour un reporting pertinent.
()currency est requis si vous définissez revenue.
currency
string (ISO 4217)
Non
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
(*) Si vous fournissez le paramètre revenue vous devez également fournir le paramètre currency afin que les métriques de revenu puissent être calculées avec précision.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','add_to_wishlist', {
value: 8.00,
currency: 'EUR',
items: [{
id: 'SKU_12345',
quantity: 1,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
price: 9.99
}
}],
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCAddToWishlistEvent(items)
event.value = 20.00f
event.currency = "EUR"
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCAddToWishlistEvent event = new TCAddToWishlistEvent(items);
event.value = 20.00f;
event.currency = "EUR";
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 1.5f]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCAddToWishlistEvent *event = [[TCAddToWishlistEvent alloc] initWithValue: [[NSDecimalNumber alloc] initWithString: @"12.2"]
withCurrency: @"EUR"
withItems: items];
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCAddToWishlistEvent(items: [item_1, item_2])
event?.currency = "EUR"
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 150;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCAddToWishlistEvent();
event.addAdditionalPropertyWithIntValue("key_additional_1", 12);
event.addAdditionalPropertyWithListValue("key_additional_2", [12,12,12]);
event.currency = "EUR";
event.items = [tc_item_1];
event.value = 12.5;
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "add_to_wishlist",
"value": 8.00,
"currency": "EUR",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
]
}
}
]
}{% endtab %} {% endtabs %}
begin_checkout
Cet événement signifie qu’un utilisateur a commencé un checkout.
Paramètres (obligatoires et recommandés)
revenue
number
Oui
16.00
La valeur monétaire de l’événement (prix d’expédition et taxes exclus) après remise
value
number
Oui
22.53
La valeur monétaire de l’événement (prix d’expédition et taxes inclus) après remise
currency
string (ISO 4217)
Oui
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
(*) Si vous fournissez le paramètre revenue vous devez également fournir le paramètre currency afin que les métriques de revenu puissent être calculées avec précision.
coupon
string
Non
CHRISTMAS
Code coupon utilisé pour un achat.
id
string
Non
0_12345
ID de transaction. Utilisé comme clé pour les mises à jour
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','begin_checkout', {
id: 'O_12345',
coupon: 'CHRISTMAS',
revenue: 16.00,
value: 20.33,
currency: 'EUR',
user: {
id: '12356',
email:'[email protected]'
},
items: [{
id: 'SKU_12345',
quantity: 1,
price: 9.99,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
colors: ['red'],
price: 9.99
}
}, {
id: 'SKU_12346',
quantity: 1,
price: 9.99,
variant: 'green',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12346',
name: 'Heart tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'girl',
brand: 'Jenyfion',
colors: ['blue','white'],
price: 9.99
}
}]
}){% endtab %}
{% tab title="Kotlin (Android)" %}
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCBeginCheckoutEvent(1.0f, 2.0f, "EUR", items)
event.coupon = "CHRISTMAS"
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCBeginCheckoutEvent event = new TCBeginCheckoutEvent(1.0f, 2.0f, "EUR", items);
event.coupon = "CHRISTMAS";
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 1.5f]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCBeginCheckoutEvent *event = [[TCBeginCheckoutEvent alloc] initWithRevenue: [[NSDecimalNumber alloc] initWithString: @"1.1"]
withValue: [[NSDecimalNumber alloc] initWithString: @"12.2"]
withCurrency: @"EUR"
withItems: items];
event.coupon = @"CHRISTMAS";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCBeginCheckoutEvent(revenue: 1, withValue: 3, withCurrency: "EUR", withItems: [item_1, item_2])
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 10;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
TCProduct tc_product_2 = TCProduct();
tc_product_2.ID = "product_2_ID";
tc_product_2.name = "product_2_name";
tc_product_2.price = 5.10;
tc_product_2.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_2 = TCItem();
tc_item_2.ID = "item_2_id";
tc_item_2.quantity = 2;
tc_item_2.product = tc_product;
tc_item_2.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCBeginCheckoutEvent();
event.coupon = "CHRISTMAS";
event.items = [tc_item_1, tc_item_2];
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "begin_checkout",
"id": "O_12345",
"coupon": "CHRISTMAS",
"revenue": 16.00,
"value": 22.53,
"currency": "EUR",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
],
"price": 9.99
}
},
{
"id": "SKU_12346",
"quantity": 1,
"price": 9.99,
"variant": "green",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12346",
"name": "Heart tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "girl",
"brand": "Jenyfion",
"colors": [
"blue",
"white"
],
"price": 9.99
}
}
],
"user": {
"id": "12345",
"email": "[email protected]",
"consent_categories": [
1,
3
]
}
}{% endtab %} {% endtabs %}
generate_lead
Enregistrez cet événement lorsqu’un lead a été généré pour comprendre l’efficacité de vos campagnes de réengagement.
Paramètres (obligatoires et recommandés)
value
number
Non*
9.99
La valeur monétaire de l’événement.
()revenue est généralement requis pour un reporting pertinent.
()currency est requis si vous définissez revenue.
currency
string (ISO 4217)
Non*
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
(*) Si vous fournissez le paramètre revenue vous devez également fournir le paramètre currency afin que les métriques de revenu puissent être calculées avec précision.
id
string
Non
ID du lead
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','generate_lead', {
currency: 'EUR',
value: 9.99,
id: 'L_12345',
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val event = TCGenerateLeadEvent(9.99f, "EUR")
event.ID = "L_12345"
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCGenerateLeadEvent event = new TCGenerateLeadEvent(9.99f, "EUR");
event.ID = "L_12345";
serverside.execute(event);TCLoginEvent event = new TCLoginEvent();
event.method = "LinkedIn";
serverside.execute(event);
{% endtab %}
{% tab title="Objective-C (iOS)" %}
TCGenerateLeadEvent *event = [[TCGenerateLeadEvent alloc] initWithValue: [[NSDecimalNumber alloc] initWithString: @"12.2"]
withCurrency: @"EUR"];
event.ID = @"2b758628-f81b-454f-8e3d-867e8bc98523";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let event = TCGenerateLeadEvent(value: 1, withCurrency: "EUR")
event?.ID = "2b758628-f81b-454f-8e3d-867e8bc98523";
serverside.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
var event = TCGenerateLeadEvent();
event.currency = "EUR";
event.value = 9.99;
event.ID = "2b758628-f81b-454f-8e3d-867e8bc98523";
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "generate_lead",
"method": "LinkedIn"
}{% endtab %} {% endtabs %}
login
Envoyez cet événement pour signifier qu’un utilisateur s’est connecté.
Paramètres
method
string
Non
La méthode utilisée pour se connecter.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="Javascript" %}
cact('trigger', 'login', {
method: 'LinkedIn',
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val event = TCLoginEvent()
event.method = "LinkedIn"
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCLoginEvent event = new TCLoginEvent();
event.method = "LinkedIn";
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
TCLoginEvent *event = [[TCLoginEvent alloc] init];
event.method = @"LinkedIn";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let event = TCLoginEvent()
event.method = "linkedin"
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
var event = TCLoginEvent();
event.method = "LinkedIn";
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "login",
"method": "LinkedIn"
}{% endtab %} {% endtabs %}
page_view
L’appel page_view vous permet d’enregistrer chaque fois qu’un utilisateur voit une page de votre site web, ainsi que toute propriété optionnelle concernant la page.
Paramètres (obligatoires et recommandés)
page_type
string
Oui
product_list
Catégorie de page. Types prédéfinis recommandés :
home
landing
product_list
product
content_list
content
search
funnel
success
funnel_confirmation
account
cart
legal (par ex. Privacy Policy)
Équivalent à tc_vars.env_template
page_name
string
Non
Suggestion pour la Fête des Mères
Nom de la page.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
type
(obsolète)
string
Non
product_list
Catégorie de page
Paramètres ajoutés automatiquement par l’API cact pour les sources web
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
path
string
Non
/products/mothers
Partie chemin de l’URL de la page : location.pathname depuis l’API DOM.
Exemple
{% tabs %} {% tab title="Javascript" %}
cact('trigger','page_view', {
page_type: 'product_list',
page_name: 'Best sellers',
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val event = TCPageViewEvent("product_list")
event.pageName = "Best sellers"
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCPageViewEvent event = new TCPageViewEvent("product_list")
event.pageName = "Best sellers";
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
TCPageViewEvent *event = [[TCPageViewEvent alloc] init];
event.pageType = @"product_list";
event.pageName = @"Best sellers";
[TCS execute: event];
//ou vous pourriez également l’utiliser dans un constructeur, comme suit :
TCPageViewEvent *event = [[TCPageViewEvent alloc] initWithType: @"type"];{% endtab %}
{% tab title="Swift (iOS)" %}
let event = TCPageViewEvent(type: "product list")
event?.pageName = "Best sellers"
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
var event = TCPageViewEvent();
event.pageName = "event_page_name";
event.pageType = "event_page_type";
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "page_view",
"page_type": "product_list",
"page_name": "Best sellers"
}{% endtab %} {% endtabs %}
purchase
Déclenchez cet événement lorsqu’un ou plusieurs articles sont achetés par un utilisateur.
Paramètres (obligatoires et recommandés)
id
string
Oui
O_1245
ID de transaction. Utilisé comme clé pour les mises à jour
event_name
string
Oui
purchase
Doit être purchase
type
string
Oui
offline
Type de conversion (online, offline, call, etc.)
value
number
Oui
22.53
Le prix final de la conversion (expédition et taxes inclus) après remise
revenue
number
Oui
16.00
Le prix final de la conversion (expédition et taxes exclus) après remise
payment_method
string
Oui
card
Type de méthode de paiement (voir la liste des valeurs possibles ci-dessous)
currency
string (ISO 4217)
Oui
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
status
string
Oui
en_cours
Statut de la conversion (voir la liste des valeurs possibles ci-dessous). Les conversions avec le statut "pending" ne sont pas incluses dans la somme par défaut et les comptes agrégés sur la fonctionnalité augmented user attributes
user
Oui
Toutes les propriétés que vous ajoutez ici seront utilisées comme conditions pour faire correspondre les utilisateurs dans notre base de données.
consent_categories est automatiquement rempli si vous utilisez Commanders Act CMP.
coupon
string
Non
CHRISTMAS
Code coupon utilisé pour un achat.
tax_amount
number
Non
3.20
Montant des taxes à la fin de la conversion
shipping_amount
number
Non
3.33
Coût d'expédition associé à une transaction.
shipping_provider
string
Non
Post
Informations sur le fournisseur
discount_value
number
Non
3.98
Montant de la remise (taxes inclus)
original_value
number
Non
19.98
Premier prix pour la conversion originale (taxes inclus)
original_revenue
number
Non
16.78
Premier revenu pour la conversion originale (taxes exclus)
original_tax_amount
number
Non
3.20
Montant des taxes au début de la conversion
returned_value
number
Non
0
Montant des articles retournés (taxes inclus)
returned_quantity
number
Non
0
Quantité d'articles retournés (taxes inclus)
cancelled_value
number
Non
0
Montant des articles annulés (taxes inclus)
cancelled_quantity
number
Non
0
Quantité d'articles annulés (taxes inclus)
Ajouté automatiquement par cact API
url
string(url)
Non
aucun
URL vers le site web où vous pouvez acheter l'article
Équivalent à window.location.href
Exemple
{% tabs %} {% tab title="json" %}
{
"id": "O_12345",
"event_name": "purchase",
"type": "offline",
"value": 0,
"revenue": 16.00,
"payment_method": "card",
"currency": "EUR",
"status": "in_progress",
"user": {
"id": "12345",
"email": "[email protected]",
"consent_categories": [
1,
3
],
"card": "3320457845"
},
"context": {
"event_id": "2025uaoauud",
"event_timestamp": "2025-04-18T07:53:39.974+02:00"
},
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"discount": 1.99,
"value": 8.0,
"cancelled_value": 0,
"cancelled_quantity": 0,
"original_value": 9.99,
"returned_value": 0,
"returned_quantity": 0,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
],
"price": 9.99
}
},
{
"id": "SKU_12346",
"quantity": 1,
"price": 9.99,
"variant": "green",
"coupon": "CHRISTMAS",
"discount": 1.99,
"value": 8.0,
"cancelled_value": 0,
"cancelled_quantity": 0,
"original_value": 9.99,
"returned_value": 0,
"returned_quantity": 0,
"product": {
"id": "12346",
"name": "Heart tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "girl",
"brand": "Jenyfuen",
"colors": [
"blue",
"white"
],
"price": 9.99
}
}
],
"coupon": "CHRISTMAS",
"tax_amount": 3.20,
"shipping_amount": 3.33,
"shipping_provider": "Post",
"discount_value": 3.98,
"original_value": 19.98,
"original_revenue": 16.78,
"original_tax_amount": 3.20,
"returned_value": 0,
"returned_quantity": 0,
"cancelled_value": 0,
"cancelled_quantity": 0
}{% endtab %}
{% tab title="Javascript" %}
cact('trigger','purchase', {
id: 'O_12345',
coupon: 'CHRISTMAS',
revenue: 16.00,
value: 20.33,
shipping_amount: 3.33,
tax_amount: 3.20,
currency: 'EUR',
user: {
id: '12356',
email:'[email protected]'
},
items: [{
id: 'SKU_12345',
quantity: 1,
price: 9.99,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
colors: ['red'],
price: 9.99
}
}, {
id: 'SKU_12346',
quantity: 1,
price: 9.99,
variant: 'green',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12346',
name: 'Heart tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'girl',
brand: 'Jenyfion',
colors: ['blue','white'],
price: 9.99
}
}]
}){% endtab %}
{% tab title="Kotlin (Android)" %}
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCPurchaseEvent("O_12345", 16.0f, 22.53f, "EUR", "purchase", "CreditCard", "waiting", items)
event.shippingAmount = 3.33f
event.taxAmount = 3.20f
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCPurchaseEvent event = new TCPurchaseEvent("O_12345", 16.0f, 22.53f, "EUR", "purchase", "CreditCard", "waiting", items);
event.shippingAmount = 3.33f;
event.taxAmount = 3.20f;
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithString: @"1.5"]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCPurchaseEvent *event = [[TCPurchaseEvent alloc] initWithId: @"ID"
withRevenue: [[NSDecimalNumber alloc] initWithString: @"1.1"]
withValue: [[NSDecimalNumber alloc] initWithString: @"12.2"]
withCurrency: @"EUR"
withType: @"purchase"
withPaymentMethod: @"CreditCard"
withStatus: @"waiting"
withItems: items];
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCPurchaseEvent(id: "purchaseID", withRevenue: 16.21, withValue: 23.10, withCurrency: "EUR", withType: "purchase", withPaymentMethod: "CreditCard", withStatus: "waiting", withItems: [item_1, item_2])
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 10;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
TCProduct tc_product_2 = TCProduct();
tc_product_2.ID = "product_2_ID";
tc_product_2.name = "product_2_name";
tc_product_2.price = 5.10;
tc_product_2.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_2 = TCItem();
tc_item_2.ID = "item_2_id";
tc_item_2.quantity = 2;
tc_item_2.product = tc_product;
tc_item_2.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCPurchaseEvent();
event.shippingAmount = 3.33;
event.taxAmount = 3.20;
event.revenue = 2.5;
event.value = 12.2;
event.currency = "EUR";
event.type = "purchase";
event.paymentMethod = "CreditCard";
event.status = "waiting";
event.items = [tc_item_1, tc_item_2];
serverside.execute(event);{% endtab %} {% endtabs %}
refund
Déclenchez cet événement lorsqu'un achat a été remboursé
Paramètres (obligatoires et recommandés)
id
string
Oui
O_1245
ID de transaction. Utilisé comme clé pour les mises à jour
user
Oui
Toutes les propriétés que vous ajoutez ici seront utilisées comme conditions pour faire correspondre les utilisateurs dans notre base de données.
consent_categories est automatiquement rempli si vous utilisez Commanders Act CMP.
revenue
number
Oui
16.00
La valeur monétaire de l’événement (prix d’expédition et taxes exclus) après remise
value
number
Oui
22.53
La valeur monétaire de l’événement (prix d’expédition et taxes inclus) après remise
shipping_amount
number
Non
3.33
Coût d'expédition associé à une transaction.
tax_amount
number
Non
3.20
Coût d'expédition associé à une transaction.
currency
string (ISO 4217)
Oui
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
coupon
string
Non
CHRISTMAS
Code coupon utilisé pour un achat.
type
string
Oui
offline
Type de conversion (online, offline, call, etc.)
items
Non*
(*) items est requis pour les remboursements partiels mais peut être omis pour les remboursements complets.
Ajouté automatiquement par cact API
url
string(url)
Non
aucun
URL vers le site web où vous pouvez acheter l'article
Équivalent à window.location.href
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','refund', {
id: 'O_12345',
coupon: 'CHRISTMAS',
revenue: 16.00,
value: 20.33,
shipping_amount: 3.33,
tax_amount: 3.20,
currency: 'EUR',
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
}){% endtab %}
{% tab title="Kotlin (Android)" %}
val event = TCRefundEvent("O_12345", 16.00f, 23.53f, "EUR", "offline")
event.coupon = "CHRISTMAS"
event.shippingAmount = 4.33f
event.taxAmount = 3.20f
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCRefundEvent event = new TCRefundEvent("O_12345", 16.00f, 23.53f, "EUR", "offline");
event.coupon = "CHRISTMAS";
event.shippingAmount = 4.33f;
event.taxAmount = 3.20f;
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 1.5f]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCRefundEvent *event = [[TCRefundEvent alloc] initWithID: @"2b758628-f81b-454f-8e3d-867e8bc98523"
withRevenue: [[NSDecimalNumber alloc] initWithString: @"20.2"]
withValue: [[NSDecimalNumber alloc] initWithString: @"26.2"]
withCurrency: @"EUR"
withType: @"offline"
withItems: items];
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCRefundEvent(id: "purchaseID", withRevenue: 16.32, withValue: 23.1, withCurrency: "EUR", withType: "refund", withItems: [item_1, item_2])
event?.shippingAmount = 11
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
var event = TCRefundEvent();
event.currency = "EUR";
event.value = 26.20;
event.revenue = 20.20;
event.coupon = "CHRISTMAS";
event.shippingAmount = 4.33;
event.taxAmount = 3.20;
event.type = "offline";
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "refund",
"value": 8.00,
"currency": "EUR",
"revenue": 16.00,
"shipping_amount": 3.33,
"tax_amount": 3.20
}{% endtab %} {% endtabs %}
remove_from_cart
Cet événement signifie qu'un article a été retiré d'un panier.
Paramètres (obligatoires et recommandés)
value
number
Non
8.00
La valeur monétaire de l’événement.
()value est généralement requis pour un reporting pertinent.
()currency est requis si vous définissez value.
currency
string (ISO 4217)
Non
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
(*) Si vous fournissez le paramètre revenue vous devez également fournir le paramètre currency afin que les métriques de revenu puissent être calculées avec précision.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','remove_from_cart', {
value: 8.00,
currency: 'EUR',
items: [{
id: 'SKU_12345',
quantity: 1,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
price: 9.99
}
}],
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCRemoveFromCartEvent(items)
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCRemoveFromCartEvent event = new TCRemoveFromCartEvent(items);
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 1.5f]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCRemoveFromCartEvent *event = [[TCRemoveFromCartEvent alloc] initWithItems: items];
event.value = [[NSDecimalNumber alloc] initWithString: @"12.2"];
event.currency = @"EUR";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCRemoveFromCartEvent(items: [item_1, item_2])
event?.value = 22.53
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 10;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCRemoveFromCartEvent();
event.value = 15.1;
event.currency = "EUR";
event.items = [tc_item_1];
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "remove_from_cart",
"value": 8.00,
"currency": "EUR",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
]
}
}
]
}{% endtab %} {% endtabs %}
search
Utilisez cet événement pour contextualiser les opérations de recherche. Cet événement peut vous aider à identifier le contenu le plus populaire dans votre application.
Paramètres
search_term
string
Oui
t-shirts
Le terme qui a été recherché.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','search', {
search_term: 't-shirts',
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val event = TCSearchEvent("t-shirts")
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
// Some code{% endtab %}
{% tab title="Objective-C (iOS)" %}
TCSearchEvent *event = [[TCSearchEvent alloc] init];
event.searchTerm = @"t-shirts";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let event = TCSearchEvent(searchTerm: "t-shirts")
serverside.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
var event = TCSearchEvent();
event.searchTerm = "t-shirts";
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "search",
"search_term": "t-shirts"
}{% endtab %} {% endtabs %}
select_content
Cet événement signifie qu'un utilisateur a sélectionné du contenu d'un certain type. Cet événement peut vous aider à identifier le contenu et les catégories de contenu populaires dans votre application ou à cliquer sur une promotion interne.
Paramètres
content_type
string
Non
product
Le type de contenu sélectionné.
item_id
string
Non
I_12345
Un identifiant pour l'article qui a été sélectionné.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','select_content', {
content_type: 'product',
item_id: 'I_12345',
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val event = TCSelectContentEvent
event.contentType = "product"
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCSelectContentEvent event = new TCSelectContentEvent();
event.contentType = "product";
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
TCSelectContentEvent *event = [[TCSelectContentEvent alloc] init];
event.contentType = @"product";
event.itemID = @"I_12345";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let event = TCSelectContentEvent()
event.contentType = "product"
event.itemID = "I_12345"
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
var event = TCSelectContentEvent();
event.contentType = "product";
event.itemId = "I_12345";
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "select_content",
"content_type": "product",
"item_id": "I_12345"
}{% endtab %} {% endtabs %}
select_item
Cet événement signifie qu'un article a été sélectionné à partir d'une liste.
Paramètres
item_list_name
string
Non
Produits associés
Le nom de la liste dans laquelle l'article a été présenté à l'utilisateur.
items
Oui
Les articles pour l'événement. Le items tableau est censé avoir un seul élément, représentant l'article sélectionné.
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','select_item', {
item_list_name: 'Related products',
items: [{
id: 'SKU_12345',
quantity: 1,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
price: 9.99
}
}],
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCSelectItemEvent(items);
event.itemListName = "Related products"
serverside.execute(event);{% endtab %}
{% tab title="Java (Android)" %}
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCSelectItemEvent event = new TCSelectItemEvent(items);
event.itemListName = "Related products";
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice:[[NSDecimalNumber alloc] initWithFloat: 1.5f]]
withQuantity: 1]];
TCSelectItemEvent *event = [[TCSelectItemEvent alloc] initWithItems: items];
event.itemListName = @"Related products";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCSelectItemEvent(items: [item_1, item_2])
event.itemListName = "Related products";
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 150;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCSelectItemEvent();
event.itemListName = "Related products";
event.items = [tc_item_1];
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "select_item",
"item_list_name": "Related products",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
]
}
}
]
}{% endtab %} {% endtabs %}
sign_up
Cet événement indique qu'un utilisateur s'est inscrit pour un compte.
Paramètres (obligatoires et recommandés)
method
string
Non
La méthode utilisée pour l'inscription.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','sign_up', {
method: 'email',
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val event = TCSignUpEvent()
event.method = "email"
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCSignUpEvent event = new TCSignUpEvent();
event.method = "email";
serverside.execute(event);
{% endtab %}
{% tab title="Objective-C (iOS)" %}
TCSignUpEvent *event = [[TCSignUpEvent alloc] init];
event.method = @"email";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let event = TCSignUpEvent()
event.method = "email"
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
var event = TCSignUpEvent();
event.method = "email";
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "sign_up",
"method": "email"
}{% endtab %} {% endtabs %}
view_cart
Cet événement signifie qu'un utilisateur a consulté son panier.
Paramètres (obligatoires et recommandés)
value
number
Non
8.00
La valeur monétaire de l’événement.
()value est généralement requis pour un reporting pertinent.
()currency est requis si vous définissez value.
currency
string (ISO 4217)
Non
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
(*) Si vous fournissez le paramètre revenue vous devez également fournir le paramètre currency afin que les métriques de revenu puissent être calculées avec précision.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','view_cart', {
value: 8.00,
currency: 'EUR',
items: [{
id: 'SKU_12345',
quantity: 1,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
price: 9.99
}
}],
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCViewCartEvent(items)
event.value = 15.1f
event.currency = "EUR"
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCViewCartEvent event = new TCViewCartEvent(items);
event.value = 15.1f;
event.currency = "EUR";
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithString: @"1.5"]]
withQuantity: 1]];
TCViewCartEvent *event = [[TCViewCartEvent alloc] initWithItems: items];
event.value = [[NSDecimalNumber alloc] initWithString: @"12.2"];
event.currency = @"EUR";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCViewCartEvent(items: [item_1, item_2])
event?.value = 22.53
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 10;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
TCProduct tc_product_2 = TCProduct();
tc_product_2.ID = "product_2_ID";
tc_product_2.name = "product_2_name";
tc_product_2.price = 5.10;
tc_product_2.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_2 = TCItem();
tc_item_2.ID = "item_2_id";
tc_item_2.quantity = 2;
tc_item_2.product = tc_product;
tc_item_2.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCViewCartEvent();
event.value = 15.1;
event.currency = "EUR";
event.items = [tc_item_1, tc_item_2
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "view_cart",
"value": 8.00,
"currency": "EUR",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
]
}
}
]
}{% endtab %} {% endtabs %}
view_item
Cet événement signifie qu'un contenu a été affiché à l'utilisateur. Utilisez cet événement pour gérer les articles les plus consultés.
Paramètres (obligatoires et recommandés)
value
number
Oui*
9.99
La valeur monétaire de l’événement.
()value est généralement requis pour un reporting pertinent.
()currency est requis si vous définissez value.
currency
string (ISO 4217)
Oui*
EUR
Devise de l’achat ou des articles associés à l’événement, au format ISO 4217 à 3 lettres.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="JavaScript" %}
cact('trigger','view_item', {
value: 9.99,
currency: 'EUR',
items: [{
id: 'SKU_12345',
quantity: 1,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
price: 9.99
}
}],
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCViewItem(items)
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCViewItem event = new TCViewItem(items);
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: [[NSDecimalNumber alloc] initWithString: @"1.5"]]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCViewItem *event = [[TCViewItem alloc] initWithItems: items];
event.revenue = [[NSDecimalNumber alloc] initWithString: @"12.2"];
event.currency = @"EUR";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCViewItem(items: [item_1, item_2])
event?.revenue = 12.2
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 150;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCViewItemEvent();
event.pageName = "event_page_name";
event.pageType = "event_page_type";
event.items = [tc_item_1];
event.addAdditionalPropertyWithIntValue("key_additional_1", 12);
event.addAdditionalPropertyWithListValue("key_additional_2", [12,12,12]);
event.addAdditionalPropertyWithMapValue("key_map", {'test': 12, "test2": "value"});
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "view_item",
"value": 8.00,
"currency": "EUR",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
]
}
}
]
}{% endtab %} {% endtabs %}
view_item_list
Enregistrez cet événement lorsque l'utilisateur s'est vu présenter une liste d'articles d'une certaine catégorie.
Paramètres
item_list_name
string
Non
Produits associés
Le nom de la liste dans laquelle l'article a été présenté à l'utilisateur.
user
Oui
consent_categories est la liste des consentements de l’utilisateur. Elle est remplie automatiquement depuis les sources web si vous utilisez Commanders Act CMP.
Vous devez également ajouter toutes les propriétés de l’utilisateur dans cet objet user, notamment la clé de réconciliation (id, email).
Exemple
{% tabs %} {% tab title="Javascript" %}
cact('trigger','view_item_list', {
item_list_name: 'Related products',
items: [{
id: 'SKU_12345',
quantity: 1,
price: 9.99,
variant: 'red',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12345',
name: 'Trex tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'boy',
brand: 'Lacoste',
colors: ['red'],
price: 9.99
}
}, {
id: 'SKU_12346',
quantity: 1,
price: 9.99,
variant: 'green',
coupon: 'CHRISTMAS',
discount: 1.99,
product:{
id: '12346',
name: 'Heart tshirt',
category_1: 'clothes',
category_2: 't-shirts',
category_3: 'girl',
brand: 'Jenny',
colors: ['blue','white'],
price: 9.99
}
}],
user: {
id: '12356',
email:'[email protected]',
consent_categories: [1,3]
}
});{% endtab %}
{% tab title="Kotlin (Android)" %}
val item1 = TCItem("my_product1_id", TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1)
val item2 = TCItem("my_product2_id", TCProduct("my_product_2_id", "my_product_2_name", 110f), 1)
val items = listOf<TCItem>(item1, item2)
val event = TCViewItemList(items)
event.itemListName = "your products"
serverside.execute(event){% endtab %}
{% tab title="Java (Android)" %}
TCItem item1 = new TCItem("my_product1_id", new TCProduct("my_product_1_id", "my_product_1_name", 12.5f), 1);
TCItem item2 = new TCItem("my_product2_id", new TCProduct("my_product_2_id", "my_product_2_name", 25.6f), 1);
ArrayList<TCItem> items = new ArrayList<>(Arrays.asList(item1, item2));
TCViewItemListEvent event = new TCViewItemListEvent(items);
event.itemListName = "your products";
serverside.execute(event);{% endtab %}
{% tab title="Objective-C (iOS)" %}
NSMutableArray *items = [[NSMutableArray alloc] init];
[items addObject: [[TCItem alloc] initWithItemId: @"iID1"
withProduct: [[TCProduct alloc] initWithProductId: @"pID1"
withName: @"pName1"
withPrice: @1.5f]
withQuantity: 1]];
[items addObject: [[TCItem alloc] initWithItemId: @"iID2"
withProduct: [[TCProduct alloc] initWithProductId: @"pID2"
withName: @"pName2"
withPrice: [[NSDecimalNumber alloc] initWithFloat: 2.5f]]
withQuantity: 2]];
TCViewItemListEvent *event = [[TCViewItemListEvent alloc] initWithItems: items];
event.itemListName = @"summer_collection";
[TCS execute: event];{% endtab %}
{% tab title="Swift (iOS)" %}
let item_1:TCItem = TCItem(itemId: "my_item1.id", with: TCProduct(productId: "my_product1.id", withName: "my_product1.name", withPrice: 12.5), withQuantity: 1)
let item_2:TCItem = TCItem(itemId: "my_item2.id", with: TCProduct(productId: "my_product2.id", withName: "my_product2.name", withPrice: 22.5), withQuantity: 1)
let event = TCViewItemListEvent(items: [item_1, item_2])
event?.itemListName = "summer_collection"
serverside?.execute(event){% endtab %}
{% tab title="Dart (Flutter)" %}
TCProduct tc_product = TCProduct();
tc_product.ID = "product_1_ID";
tc_product.name = "product_1_name";
tc_product.price = 150;
tc_product.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_1 = TCItem();
tc_item_1.ID = "item_1_id";
tc_item_1.product = tc_product;
tc_item_1.quantity = 1;
tc_item_1.addAdditionalProperty("key_additional_item", "val_additional_product");
TCProduct tc_product_2 = TCProduct();
tc_product_2.ID = "product_2_ID";
tc_product_2.name = "product_2_name";
tc_product_2.price = 150;
tc_product_2.addAdditionalProperty("key_additional_product", "val_additional_product");
TCItem tc_item_2 = TCItem();
tc_item_2.ID = "item_2_id";
tc_item_2.quantity = 2;
tc_item_2.product = tc_product;
tc_item_2.addAdditionalProperty("key_additional_item", "val_additional_product");
var event = TCViewItemListEvent();
event.pageName = "event_page_name";
event.pageType = "event_page_type";
event.items = [tc_item_1, tc_item_2];
event.addAdditionalPropertyWithIntValue("key_additional_1", 12);
event.addAdditionalPropertyWithListValue("key_additional_2", [12,12,12]);
event.addAdditionalPropertyWithMapValue("key_map", {'test': 12, "test2": "value"});
event.itemListName = "itemListName";
serverside.execute(event);{% endtab %}
{% tab title="json" %}
{
"event_name": "view_item_list",
"item_list_name": "Related products",
"items": [
{
"id": "SKU_12345",
"quantity": 1,
"price": 9.99,
"variant": "red",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12345",
"name": "Trex tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "boy",
"brand": "Lacoste",
"colors": [
"red"
],
"price": 9.99
}
},
{
"id": "SKU_12346",
"quantity": 1,
"price": 9.99,
"variant": "green",
"coupon": "CHRISTMAS",
"discount": 1.99,
"product": {
"id": "12346",
"name": "Heart tshirt",
"category_1": "clothes",
"category_2": "t-shirts",
"category_3": "girl",
"brand": "Jenyfion",
"colors": [
"blue",
"white"
],
"price": 9.99
}
}
],
"user": {
"id": "12345",
"email": "[email protected]",
"consent_categories": [
1,
3
]
}
}{% endtab %} {% endtabs %}
- SCHÉMAS COURANTS -
Article
Paramètres (obligatoires et recommandés)
id
string
Oui
SKU_12345
L'ID d'un article.
Si vous n'avez pas d'identifiant d'article, vous pouvez utiliser l'id produit comme valeur. Ce champ est utilisé comme clé pour les mises à jour (ex : refund)
variant
string
Non
rouge
La variante de l'article.
list_position
number
Non
1
La position de l'article dans une liste ou une collection.
discount
number
Non
2.00
Valeur monétaire de la remise pour un article courant
quantity
number
Oui
2
La quantité de l'article.
affiliation
string
Non*
TÉLÉCHARGER
Requis pour la plupart des destinations d'affiliation.
coupon
string
Non
CHRISTMAS
Le code coupon associé à un article.
value
number
Non
0
Le prix final des articles (taxes inclus). Il correspond au prix unitaire TTC * quantité des articles
cancelled_value
number
Non
0
Montant des articles annulés (taxes inclus)
cancelled_quantity
number
Non
0
Quantité d'articles annulés (taxes inclus)
original_value
number
Non
10.00
Prix original de l'article (taxes inclus)
returned_value
number
Non
0
Prix de l'article retourné (taxes inclus)
returned_quantity
number
Non
0
Quantité d'articles retournés
Produit
Paramètres (obligatoires et recommandés)
id
string
Oui*
12345
L'ID du produit (ex : dans votre base de données du catalogue produit)
Le item.id et product.id n'ont pas à être différents. S'ils sont différents, typiquement le product.id est un identifiant de base de données, comme 9714107479 et les item.id est un identifiant destiné au public comme SKU-12345.
(*) Si vous avez importé votre catalogue produit sur la plateforme, le product.id correspond à l'id produit unique dans le catalogue et peut être utilisé avec la fonctionnalité d'expansion d'id.
name
string
Oui
Trex
Nom du produit
price
number
Oui
14.99
Le prix du produit (avec remise et taxes exclues)
currency
string (ISO 4217)
Non
EUR
Devise du price, au format ISO 4217 à 3 lettres.
Si défini, le niveau d'événement currency est ignoré.
Plusieurs devises par événement ne sont pas supportées. Chaque article doit définir la même devise.
category_1
string
Non
T-Shirts
Catégorie de produit (spécifique au contexte). item_category2 jusqu'à item_category5 peut également être utilisé si le produit a de nombreuses catégories.
brand
string
Non
Lacoste
Marque du produit
colors
Array[string]
Non
[blue, white]
La/les couleur(s) du produit
size
string
Non
128
Taille de l'article
Utilisateur
Lorsque vous envoyez un événement, il doit contenir suffisamment d'informations pour identifier quel utilisateur l'a émis. Nous pouvons relier les événements entre eux en utilisant des cookies. Mais les partenaires de destination exigent des identifiants précis pour prendre des actions.
id et email sont généralement les paramètres les plus utiles. Bien que certains partenaires de destination utilisent également firstname, lastname, birthdate, city, ...
Vous n'aurez pas toujours tous ces paramètres. Mais il est recommandé de les envoyer dès que possible pendant la navigation de l'utilisateur.
Paramètres (obligatoires et recommandés)
id
string
Non*
845454
Identifiant principal de l'utilisateur (ex. id CRM)
(*) requis pour de nombreuses destinations et le traitement interne.
email
string
Oui*
Email (valeur en clair)
(*) requis pour de nombreuses destinations et le traitement interne. Non requis si email_sha256 est fourni
email_md5
string
Non*
8eb1b52... (taille 32)
Email, haché en utilisant algorithme MD5. Non requis si email est fourni (voir ci-dessous)
email_sha256
string
Non*
836f82d... (taille 64)
Email, haché en utilisant algorithme SHA-256. Non requis si email est fourni (voir ci-dessous)
phone
string
Non*
+33612345678
Numéro de téléphone, E.164 format (*) requis pour certaines destinations.
firstname
string
Non
John
Prénom
lastname
string
Non
Doe
Nom
gender
string
Non
m
Genre
fpour Femmempour Homme
birthdate
string
Non
1970-01-01
Date de naissance, YYYY-MM-DD format
city
string
Non
Boston
Ville
state
string
Non
Massachusetts
État
street
string
Non
303 Sumner St
Adresse
zipcode
string
Non
02108
Code postal
consent_categories
Array
Oui
[1,3,4]
Catégories de consentement de l'utilisateur. Cela doit contenir uniquement les catégories pour lesquelles l'utilisateur a donné son consentement. Nécessaire pour autoriser le partage de données avec les partenaires de destination. Il est automatiquement rempli à partir des sources web si vous utilisez Commanders Act CMP.
status
string
Non
Nouveau
Statut tel que rapporté dans votre CRM (Ex. "New", "Existing", "Premium")
À propos du hachage
Dans certains cas, vous ne pourrez pas envoyer un paramètre en clair valeur. Il est soit indisponible soit restreint.
Ainsi il peut être possible d'envoyer les valeurs hachées. Nous acceptons actuellement 2 algorithmes : md5 et sha256.
Chaque user.<property> peut être envoyé au format haché avec le suffixe d'algorithme : _md5 ou _sha256 (underscore suivi du nom de l'algorithme en minuscules)
Exemple :
{
user: {
email_md5: '8eb1b522f60d11fa897de1dc6351b7e8', // md5('[email protected]')
email_sha256: '836f82db99121b3481011f16b49dfa5fbc714a0d1b1b9f784a1ebbbf5b39577f', // sha256('[email protected]')
phone_md5: '60dd761f55cb17f0532c9fb1679e8ddd', // md5('+33612345678')
phone_sha256: '42d573cfc315801d4cd8eddd5416b416a0bf298b9b9e12d6b07442c91db42bd8', // sha256('+33612345678')
}
}ℹ️ nous ne supportons que l'encodage hexadécimal (base16) &#xNAN;(c.-à-d. : valeurs hachées. les valeurs sont portées par des chaînes avec des caractères [0-9a-f]) D'autres encodages ne sont pas encore pris en charge
Pas besoin d'envoyer les deux en clair et valeurs hachées. valeurs :
si vous envoyez en clair valeur, les valeurs hachées. valeurs ne sont pas nécessaires &#xNAN;Nous pouvons générer valeurs hachées. valeurs côté serveur en utilisant en clair value
si vous n'envoyez pas en clair valeur, alors vous devez remplir autant de valeurs hachées. valeurs que possible &#xNAN;Les partenaires exigent différents algorithmes de hachage et sans en clair valeur, nous ne pouvons générer aucun hachage. C'est pourquoi nous avons besoin de l'exact valeurs hachées. value
- VALEUR ÉNUMÉRÉE -
Méthodes de paiement
Valeurs énumérées pour les méthodes de paiement :
payment_method
by_invoice
payment_method
by_bank_transfer_in_advance
payment_method
card
payment_method
check_in_advance
payment_method
cod
payment_method
coupon
payment_method
direct_debit
payment_method
online_payment_system
payment_method
other
Statut d'achat
Valeurs énumérées pour le statut d'achat :
status
annulé
status
livré
status
en_cours
status
partiellement_livré
status
partiellement_retourné
status
partiellement_expedie
status
en_attente_d'expédition
status
retourné
status
expédié
status
en_attente
Mis à jour
Ce contenu vous a-t-il été utile ?