En bref : Utilisez l'API d'événements Web Server-to-Server (Web-S2S) pour signaler à PBA les événements et les conversions qui ne sont pas signalés par le SDK Web.
API d'événements de serveur à serveur Web pour PBA
L'API Web-S2S pour l'attribution basée sur les personnes complète le SDK Web en permettant aux spécialistes du marketing de signaler les événements qui se produisent sur leurs sites web mais qui ne sont pas couverts par le SDK Web. Par exemple, un visiteur du site web (un internaute) déclenche un paiement en ligne, traité par des systèmes en arrière-plan. Après traitement, l’arrière-plan signale l'événement à AppsFlyer via l'API S2S.
Événements envoyés par l'API S2S :
- sont enregistrés de la même manière que les événements signalés par le SDK Web
- sont inclus dans les tableaux de bord PBA s'ils sont définis comme des événements de conversion
- alimenter les données brutes PBA avec le champ event_source réglé sur web S2S
Instructions d'utilisation de l'API
Créez votre appel API à l'aide des sections suivantes.
Non. | Élément | Remarques |
---|---|---|
1 | ID unique de l'utilisateur |
|
2 | Horodatage |
|
3 | Revenus et devises | Vous devez renseigner eventRevenueCurrency et eventRevenue même s'ils sont contenus dans eventValue. Nous les utilisons dans nos tableaux de bord. |
Principes de base de l'API
La mise en œuvre de l'API nécessite les informations d'identification suivantes, disponibles dans le tableau de bord :
- ID de bundle (ou ID du bundle de marques)
- Clé dev web
Pour obtenir les informations d'identification :
- Dans AppsFlyer, dans le menu supérieur, sélectionnez Mes applications > Voir les bundles de marques.
La liste des bundles s'affiche. - Copiez et enregistrez les données appropriées :
- ID de bundle de marques
- Clé dev web
Principes de base de l'API Web S2S
Chemin |
|
Méthode HTTP | POST |
Type de contenu accepté |
application/json |
Limitation de charge utile JSON |
Taille de la charge utile JSON : maximum 1 Ko |
Limitation de taux |
Volume de limitation POST : 60 000 POST par minute. Pour augmenter la limite, contactez votre MSC. |
Protocole TLS |
|
Méthode setCuId
Nom de la méthode |
setCuId |
Cas d'utilisation |
Pour l'association d'un CUID à un visiteur de votre site web. Par exemple, chaque fois que vous faites correspondre le site web |
Chemin de la méthode |
|
Charge utile |
La charge utile JSON se compose des paramètres énumérés ici. Tous les paramètres sont obligatoires. |
Exemple Curl setCuId
curl --location --request POST 'https://webs2s.appsflyer.com/v1/bundleId/setcuid' \
--header 'Accept-Encoding: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"customerUserId": "1234567890abcdef",
"afUserId":"9999999-f848-4963-a091-568f0bf9a361",
"webDevKey" : "99999999-9999-9999-9999-999999999999"}
Méthode d'événement
Nom de la méthode |
événement |
Cas d'utilisation | Envoyer |
Chemin de la méthode |
|
Informations détaillées | La section Détails de la méthode d'événement de cet article contient des détails sur la charge utile, un exemple Curl, un exemple Python et des suggestions de test. |
Détails de la méthode d'événement
Paramètres de charge utile
Les paramètres de la charge utile sont divisés en identifiants d'utilisateurs et en paramètres d'événements.
- ID utilisateur : Vous devez envoyer au moins un paramètre d'identification de l'utilisateur.
- Événement : Envoyer les paramètres obligatoires et les paramètres optionnels si nécessaire.
Paramètres d'identification de l'utilisateur (envoyer au moins un paramètre)
Paramètre de l'ID utilisateur | Description |
---|---|
customerUserId |
L'ID d'utilisateur client (CUID) est un identifiant unique que vous définissez.
|
afUserId |
L'ID utilisateur unique attribué par le SDK Web à chaque utilisateur qui visite votre site web. Vous devrez transmettre la valeur du cookie à vos serveurs d’arrière-plan.
|
Paramètres d'événement
Nom du paramètre | Obligatoire | Description |
---|---|---|
webDevKey |
Oui |
Remplir à l'aide de la clé web dev disponible sur le tableau de bord.
|
eventType | Oui |
Identifiant d'attribut d'événement à usage interne d'AppsFlyer. Toujours réglé sur EVENT.
|
eventName | Oui |
|
Horodatage | Non |
Heure à laquelle l'événement s'est produit, en millisecondes. Envoyer sous la forme d'un horodatage Unix de 13 chiffres.
|
Valeur de l'événement | Non |
Carte des paramètres de l’événement décrivant l’événement. Utilisez ce paramètre pour envoyer des évènements rich in-app, tels que la référence SKU du produit et le prix de l’article.
|
eventRevenueCurrency | Non |
Code devise d'un fait générateur de recettes, à savoir un code devise ISO 4217 à trois caractères.
|
eventRevenue | Non |
Revenus (valeur monétaire) affectés à un événement. Important ! Si les recettes sont déclarées dans eventValue, elles sont également déclarées dans eventRevenue et remplissent eventRevenueCurrency.
|
Non | Ce paramètre est obsolète et sera supprimé du système à une date ultérieure. Utilisez plutôt eventValue. | |
Non |
Ce paramètre est obsolète et sera supprimé du système à une date ultérieure. Utilisez plutôt eventValue. |
|
Référent | Non |
Référent HTTP
|
userAgent | Non |
Requête de l'agent utilisateur envoyée par le navigateur au serveur.
|
ip | Non |
Adresse IP de l'utilisateur
|
Exemple Curl
curl --location --request POST 'https://webs2s.appsflyer.com/v1/bundleId/event' \
--header 'Accept-Encoding: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"customerUserId": "1234567890abcdef",
"afUserId":"9999999-f848-4963-a091-568f0bf9a361",
"webDevKey" : "99999999-9999-9999-9999-999999999999",
"ip" : "192.0.2.1",
"eventType":"EVENT",
"timestamp" : 1234567890123,
"eventName":"my_web_event",
"eventRevenueCurrency" : "EUR",
"eventRevenue" : 1234.56,
"eventValue": {
"purchase":{
"shoes": "color",
"quantity" : "3",
"Revenue" : "1234.56",
"Currency" : "ZAR"
}
}
}'
Exemple Python
''' using the requests python package, install using pip install requests '''
import requests
url = "https://webs2s.appsflyer.com/v1/bundleId/event"
payload = {
"customerUserId": "1234567890abcdef",
"afUserId": "9999999-f848-4963-a091-568f0bf9a361",
"webDevKey": "99999999-9999-9999-9999-999999999999",
"ip": "192.0.2.1",
"eventType": "EVENT",
"timestamp": 1234567890123,
"eventName": "my_web_event",
"eventRevenenuCurrency": "EUR",
"eventRevenue": 1234.56,
"eventValue":
{
"purchase":
{
"shoes": "color",
"quantity": "3",
"Revenue": "1234.56",
"Currency": "ZAR"
}
}
}
headers = {
'Accept-Encoding': 'application/json',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.text.encode('utf8'))
Test
À des fins de test, envoyez plusieurs événements comme suit :
- Envoyer un événement.
- Assurez-vous que vous obtenez un code de retour 200 OK. Si ce n'est pas le cas, prenez des mesures correctives à l'aide des codes de retour et des messages d'erreur.
- Attendez plusieurs heures après minuit UTC pour voir l'événement reporté dans les données brutes du PBA. Vous devez attendre, car les données PBA sont traitées une fois par jour.
Informations supplémentaires
Obtenir la clé Web Dev
Extraction de afUserID du SDK Web
- Le
afUserId
est un identifiant unique, défini par le SDK Web lorsqu'un utilisateur visite votre site pour la première fois. - Si vous avez besoin de
afUserId
, utilisez l'une des méthodes suivantes.
Obtenir afUserId à partir de l'en-tête du cookie HTTP
afUserId
est envoyé par le navigateur des visiteurs lorsqu'ils visitent votre site.- L'extraire de l'en-tête du cookie HTTP si nécessaire.
Affichage de afUserId dans le navigateur du visiteur
- Afficher
afUserId
dans le navigateur du visiteur, à des fins de dépannage et de débogage. - Pour qu'il soit disponible, le visiteur doit d'abord avoir consulté au moins une fois une page contenant le SDK Web.
- Le cookie contenant
afUserId
est un cookie first party lié à votre domaine. - La procédure qui suit a été préparée à l'aide de Chrome 81. Il peut y avoir des différences entre les navigateurs et les systèmes d'exploitation.
Pour obtenir l'afUserId du navigateur du visiteur :
- Dans votre navigateur, allez sur votre site web.
-
Cliquez avec le bouton droit de la souris et sélectionnez Inspecter
La fenêtre d'inspection des éléments du navigateur s'ouvre. - Aller à la (A) Application (A).
- Dans le menu latéral, (B) développez Cookies.
- Sélectionnez votre site web. S’il ne s'affiche pas, actualisez le navigateur.
- Dans le filtre (C) entrez
afUserId
La valeur de afUserID s'affiche.
Codes de réponse
Code de réponse | Message | Gestion |
---|---|---|
200 | OK | |
404 | Pas de résultat |
|
400 | Demande incorrecte |
|
Dépannage
- Symptôme : les codes de retour HTTP ne sont pas renvoyés
Solution : liste des serveurs autorisés AppsFlyer
Notes de mise à jour
Date | Version du point de terminaison* | Remarques |
---|---|---|
2020-05-12 | 1 | Version initiale |
2020-05-24 | 1 | |
* Le numéro de version correspond au numéro de version du point de terminaison. https://webs2s.appsflyer.com/v1/method
|