Collecte des identifications et features par lot


Collecte de l'identité des utilisateurs et des fonctionnalités utilisées par lot

# Description

Afin de transmettre un l'ensemble d'évènements lors de batch, vous pouvez appeler notre point d'entrée /bulk. Il permet l'envoi tous type d'évènement sous forme d'un simple tableau JSON.

Le code ci-dessous permet de collecter par lot des l'informations d'identification et de fonctionnalités :

curl -G --location \
--request POST "https://collect.skalin.io/hit/bulk?rec=1&client_id={{ClientId}}" \
--header "Content-Type: application/json" \
--data-raw "{
    \"identities\": [
        {
            \"eventId\": \"{{EventId}}\",
            \"identity\": {
                \"email\": \"{{UserEmail}}\",
                \"id\": \"{{UserId}}\"
            },
            \"customerId\": \"{{CustomerId}}\",
            \"visitId\": \"{{VisitId}}\",
            \"ts\": \"{{ts}}\",
            \"localtime\": \"{{LocalTime}}\",
            \"url\": \"{{Url}}\",
            \"cip\": \"{{Cip}}\"
        },
        ...
    ],
    \"features\": [
        {
            \"eventId\": \"{{EventId}}\",
            \"name\": \"{{FeatureName}}\",
            \"identity\": {
                \"email\": \"{{UserEmail}}\",
                \"id\": \"{{UserId}}\"
            },
            \"customerId\": \"{{CustomerId}}\",
            \"visitId\": \"{{VisitId}}\",
            \"ts\": \"{{ts}}\",
            \"localtime\": \"{{LocalTime}}\",
            \"url\": \"{{Url}}\",
            \"cip\": \"{{Cip}}\"
        },
        ...
    ]
}"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38

Avec NodeJS et la librairie axios (opens new window)

await axios({
  method: 'POST',
  url: 'https://collect.skalin.io/hit/bulk',
  headers: {
    'Cache-Control': 'no-cache',
    'Content-Type': 'application/json'
  },
  params: {
    rec: 1,
    client_id: '2bb91c92dr779103',
  },
  data: {
      identities: [
          {
            eventId: "sqfdpolsijrfitof",
            identity: {
                email: "dds@sdsd.com"
            },
            customerId: "customer1234",
            visitId: "9c915a48e71cdd42",
            ts: "2021-05-08T12:00:05",
            localtime: "08:00:05",
            url: "https://docs.skalin.io/en/dev/tracking/1.0.0/sst/identity/#use-of-user-email",
            cip: "127.0.0.1"
          }
      ],
      features: [
          {
            eventId: "sqfdpolsijrfitof",
            name: "feat1",
            identity: {
                email: "dds@sdsd.com"
            },
            customerId: "customer5678",
            visitId: "9c915a48e71cdd42",
            ts: "2021-05-08T12:00:05",
            localtime: "08:00:05",
            url: "https://docs.skalin.io/en/dev/tracking/1.0.0/sst/identity/#use-of-user-email",
            cip: "127.0.0.1"
          }
      ]
  }
});

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
ClientId

votre identifiant client qui vous a été fourni par Skalin ou est disponible dans la section Paramétrage > Général

CustomerId (facultatif) identifiant du client ou nom de domaine du client (le CustomerId n’est utile que si un même contact peut de connecter à plusieurs entités avec le même identifiant)
EventId (facultatif car auto-généré) identifiant unique de l'événement de 16 caractères. Permet de gérer la dé-duplication (Le dernier transmit sera conservé).
VisitId (facultatif mais recommandé. Si non défini, auto-généré et tous les events auront le même identifiant de visite pour cet appel) identifiant unique de la visite ou de la session. uid de 16 caractères (permet de calculer le nombre de visites. Si VisitId n’est pas rempli ou différent à chaque appel, chaque appel sera comptabilisé comme une nouvelle visite).
ts (facultatif) Timestamp de l'évènement au format YYYY-MM-DDTHH:mm:ss (`2021-05-08T12:00:05`). Si non défini, heure de réception de l'appel du serveur.
LocalTime (facultatif) heure:minutes:secondes dans la timezone de l’utilisateur (`08:00:05`)
UserEmail Email de l'utilisateur connecté déjà référencé dans Skalin
UserId Votre identifiant utilisateur déjà référencé dans Skalin
FeatureName Nom de la fonctionnalité utilisée
Url (facultatif) Url de la fonctionnalité sur votre plateforme
Cip (facultatif) Ip de l'utilisateur

Avertissement

Chaque type d'évènement (identies, features) ne peuvent pas contenir plus de 100 éléments

Info

CustomerId correspond à la propriété refId de l'API (champ Customer ID de l'interface d'édition du client)

# Endpoint rate limits

Le nombre de requêtes par seconde (rqps) acceptées à partir d'une IP donnée sur le point d'entrée collect.skalin.io est :

  • Limite nominale : 100 rqps
  • Seuil de tolérance exceptionnel : 500 rqps
Contributeurs: Julien