Intégration de la mise à jour de l’API de l’utilisateur final
Aperçu général
La mise à jour de l'API de l'utilisateur final est une intégration qui vous permet d'appeler une API orientée vers le client pour mettre à jour les attributs des utilisateurs finaux d'un utilisateur final spécifique. Elle peut être utilisée pour envoyer des appels de mise à jour du serveur à partir de n'importe quel service SaaS qui peut envoyer des rappels à des points de terminaison (c'est-à-dire l'URL).
Cela vous permet de recevoir des mises à jour en temps réel de l'objet de l'utilisateur final de WalkMe, l'installation d'intégration vous permet d'identifier les champs que vous souhaitez importer à partir de n'importe quelle charge utile (liste blanche) qui sera stockée dans l'objet d'utilisateur final de WalkMe et qui sera plus tard disponible pour le filtrage dans Insights, les rapports et la segmentation.
Cas d'utilisation
- Mise à jour de l'objet d'utilisateur final de WalkMe en temps réel lorsqu'un nouvel utilisateur final est inscrit..
- Mise à jour de l'objet d'utilisateur final de WalkMe en temps réel lorsqu'un utilisateur final passe d'un forfait gratuit à un forfait payant et mise à disposition de ces données pour l'évaluation de la segmentation du contenu.
- Mise à jour de l'objet d'utilisateur final de WalkMe en temps réel lorsqu'un client évolue.
- Configuration d'un webhook dans votre CRM pour mettre à jour l'objet d'utilisateur final de WalkMe lorsqu'un client atteint plus de 1 million de RCF et peut être considéré comme un « client premium ».
Création de l'intégration de la mise à jour de l'API de l'utilisateur final
Étape nº1 : Créez une nouvelle intégration de la mise à jour de l'API de l'utilisateur final.
- Allez sur Insights.
- Allez sur l'onglet Intégrations (en bas à gauche dans le menu).
- Cliquez sur API à WalkMe. Cela ouvrira l'assistant d'intégration ssvs.
Étape nº2 : Définissez l'intégration.
- Donnez un nom à l'intégration. Notez que c'est le nom qui sera affiché dans le moteur de règles du Centre de segmentation de l'Éditeur et dans Insights, utilisez donc un nom significatif.
- Fournissez la propriété de l'User Identifier (identificateur d'utilisateur) : saisissez le champ qui contiendra l'identificateur de l'utilisateur final comme identifié dans WalkMe ; par exemple, si votre méthode d'identificateur d'utilisateur final est une variable contenant l'e-mail de l'utilisateur final, le champ entré doit être le champ dans la charge utile JSON qui retiendra l'e-mail de l'utilisateur final. Si votre charge utile est dans un format d'objet JSON, utilisez des noms séparés par point (<object name>.<field name>).
- Saisissez les propriétés à importer : saisissez les champs et leur type à partir de la charge utile JSON que vous souhaitez importer dans WalkMe. Ce sont les champs qui seront disponibles pour la Segmentation, le Filtrage dans Insights et les Rapports. <Si votre charge utile est dans un format d'objet JSON, utilisez des noms séparés par point (object name>.<field name>). Les types pris en charge sont : chaîne, numéro, date (dans le format AAAA-MM-JJ)
- Cliquez sur Continue.
Étape nº3 : Obtenez un point de terminaison d'intégration et effectuer un test.
- L'intégration affiche désormais le point de terminaison pour envoyer votre demande API.
--header
'Content-Type: application/json'
--header
'Authorization: Bearer <access-token>'
--data-raw '{
"token"
:
"c865ab9ec9ffd1fbbe18a452951329bdd3e814484086bc0068da807208062c40"
,
"data"
: [
{
"properties.ID"
:
"name@company.com"
,
"field1"
:
"value"
,
"field2"
:
123
,
"nested"
: {
"field"
:
456
}
}
]
}'
- Copiez ce point de terminaison dans le service que vous utilisez pour envoyer les demandes WalkMe.
Étape nº4 : Envoyez des demandes de mise à jour de la mise à jour de l'API
L'API de mise à jour de l'utilisateur final est accessible via l'API publique de WalkMe. Pour l'utiliser, vous devez effectuer deux appels.
- Un appel pour obtenir un jeton d'autorisation (Consultez : https://developer.walkme.com/reference#getting-started-with-your-api-1)
- À l'aide de l'extraction de l'autorisation de jeton, envoyez une demande de PUBLICATION au point de terminaison reçu dans l'étape nº3. La charge utile de votre demande doit correspondre à la configuration d'intégration (voir les exemples ci-dessous).
- Le corps de demande doit être un objet Json valide avec des propriétés "token" et "data".
- La propriété "token" (jeton) doit contenir la valeur reçue lorsque le point de terminaison a été créé dans le centre d'intégration. Ne la confondez pas avec l'"acess-token".
- La propriété "data" est un tableau d'objets Json avec un champ d'identificateur d'utilisateur et au moins un autre champ avec une valeur ("null" n'est pas une valeur valide). Les noms de champs doivent s'aligner avec le schéma d'intégration comme défini lors de la configuration du point d'intégration.
Utilisation de l'API de mise à jour de l'utilisateur final pour la Segmentation
- Une fois que l'intégration est configurée, effectuez un publication vide pour pouvoir effectuer une segmentation en fonction des champs importés dans votre Éditeur.
- Dans l'Éditeur WalkMe, allez sur le menu Manage Segments (gérer les segments).
- Créez un nouveau segment ou modifiez un segment existant.
- Dans le moteur de, sélectionnez le groupe "user attributes" → sélectionnez votre nom d'intégration (donné dans l'étape nº2 : Définissez votre intégration) → sélectionnez le champ dans la liste que vous souhaitez segmenter.
- Définissez votre condition (notez que les opérateurs affichés sont définies par le type de champ que vous avez inséré dans l'étape nº2 : Définissez votre intégration).
- Cliquez sur Done
Utilisation de l'API de mise à jour de l'utilisateur final pour filtrer les données dans Insights.
- Dans Insights, créez un nouveau filtre ou mettez à jour un filtre existant.
- Sélectionnez USER → Cliquez sur le champ que vous avez importé dans l'étape nº2 : Définissez votre intégration. Remarquez le texte descriptif à côté de chaque champ dans la liste car vous pouvez avoir plusieurs champs avec le même nom provenant de plusieurs intégrations.
- Définissez votre condition (notez que les opérateurs affichés sont définies par le type de champ que vous avez inséré dans l'étape nº2 : Définissez votre intégration).
- Cliquez sur Save Filter (enregistrer le Filtre)
Les meilleures pratiques
- Lorsque vous modifiez une intégration, les modifications seront immédiatement mises à jour.
- Une fois que l'API de mise à jour de l'utilisateur final est appelée, l'objet utilisateur final sera immédiatement mis à jour. Gardez à l'esprit que les conditions sont évaluées à chaque charge WM. Si l'utilisateur final a cliqué sur un bouton qui est connecté à webhook qui envoie cet appel (par exemple, un bouton pour mettre à jour le compte), la condition ne sera réévaluée que dans la prochaine charge WM (page suivante ou rafraîchissement).
- Moins vous avez d'attributs, mieux c'est. Faites attention au nombre total d'attributs que vous intégrez dans WalkMe. Nous autorisons un total de 100 attributs dans toutes les intégrations entrantes.
- Il est important de souligner que contrairement aux autres intégrations entrantes, l'API de mise à jour de l'utilisateur final ne sera mise à jour que lorsque l'API est appelée, et uniquement pour l'utilisateur final spécifique avec lequel l'API a été appelée.
- Si vous souhaitez définir les attributs pour tous leurs utilisateurs finaux à l'avance, ils peuvent utiliser l'intégration entrante : CVS Upload.
Dans ce cas, veuillez noter que les 2 intégrations définissent 2 attributs différents, donc- la limite de 100 attributs est valable pour toutes les intégrations, à la fois l'API et l'intégration de lots entrants, donc s'ils ont tous les champs dans les deux, cela réduira la limite réelle à 15.
- En termes de définition de règles pour la segmentation, ils devront la construire avec deux règles et utiliser une relation "OR" entre les deux. Par exemple :
Incoming Integration customer type = 'paying' OR API integration customer type = 'paying'.
Exemple de processus
Vous trouverez ci-dessous un exemple de mise à jour réel du statut du client et des attributs de type dans un système WalkMe avec un identificateur qui est au format de l'e-mail de l'utilisateur final :
Étape nº1 : Créez une nouvelle intégration de la mise à jour de l'API de l'utilisateur final.
- Allez sur Insights.
- Allez sur l'onglet Intégrations (en bas à gauche dans le menu).
- Cliquez sur API à WalkMe. Cela ouvrira l'assistant d'intégration.
Étape nº2 : Définissez l'intégration.
- Donnez un nom à l'intégration : « Mise à jour des attributs de client »
- Fournissez la propriété de l'User Identifier (identificateur d'utilisateur). La méthode d'identificateur WalkMe est une variable qui renvoie l'e-mail de l'utilisateur final et votre charge utile aura l'e-mail de l'utilisateur final sous la propriété « Email » donc vous choisirez « Email ».
- Saisissez les propriétés à importer. Votre charge utile contient 2 propriétés que vous souhaitez importer : "Type" et "Status". Vous voulez renommer ces dernières et les appeler "Customer_Type" et "Customer_Status" car ce sont les noms d'attribut affichés dans le Moteur de règles de segmentation et dans Insights :
Ces deux propriétés contiendront des valeurs de type chaîne, c'est pourquoi vous avez sélectionné "Property Type" = String. - Cliquez sur Continue.
Étape nº3 : Obtenez un point de terminaison d'intégration.
- L'intégration affiche désormais le point de terminaison pour envoyer votre demande API.
- Cliquez sur l'icône Copy et copiez ce point de terminaison au service que vous utilisez pour envoyer les demandes WalkMe.
Étape nº4 : Envoyez les demandes de mise à jour au point de terminaison de l'API mise à jour en effectuant deux appels.
- Obtenez un jeton d'autorisation (voir : Premiers pas avec votre API dans le Centre de développeurs). Envoyez un appel de PUBLICATION à :https://api.walkme.com/accounts/connect/tokenAuthorization Type = Basic Auth ( Le nom d'utilisateur et le mot de passe doivent être le nom d'utilisateur et le mot de passe reçu pour le compte (voir Prérequis) )Token = <access token received in Step 4.1>Corps :
"{["grant_type" : "client_credentials"]}"
An access token will be received in the response:"access_token": "eyJhbGciOiJSUzI1NiIsImtpZNURDNTY1NkU4RDc4NEUiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJhYzRpVXJXLUNZSDNHUjY3LVYzRlpXNk5lRTQifQ.eyJuYmYiOjE1Nzc2Mjk1MzYsImV4cCI6MTU3NzcxNTkzNiwiaXNzIjoiaHR0cHM6Ly9hcGkud2Fsa21lcWEuY29tL2FjY291bnRzIiwiYXVkIjpbImh0dHBzOi8vYXBpLndhbGttZXFhLmNvbS9hY2NvdW50cy9yZXNvdXJjZXMiLCJXYWxrTWUgcHVibGljIl0sImNsaWVudF9pZCI6IjdkNjhiYTUwMGQwYTExZTk4MWI4MDJlZGRhNjMiLCJqdGkiOiI4NmQyZmE1Mi00YjkxLTQyZjUtOTgxMS0wZDUxOWM4YTI1ZGMiLCJqd2siOiIzYzM4eVVwbGVrSFJHWEFoVTVKajl3Z0JBYXBBdFoyQSIsInNjb3BlIjpbImxhbmd1YWdlczpyZWFkIiwibGFuZ3VhZ2VzOndyaXRlIiwicm9sZXM6cmVhZCIsInVzZXJzOnJlYWQiLCJ1c2Vyczp3cml0ZSJdfQ.Ufmo0cR6L9LfAfFl8tE-ZwQmFS5db0IRmXeRtDw2RZ88n1yV7wJ-bHKkZcIObv90achf2-3MhSdELZPH_YJQLz858Y79szfyUi5kraX2dHfA3U7UujjuL3qEUZMK0NR5JC37RIm-tvApOrbzl0Vc4aFKSF5Ae8pBOd2zfdsTvMkczI928AFJ-ieO9-U8Pl3vrYLNjaG-WzRE111ckQzzWMf1F2svdx9VRxxLOfm8TtVatuvcAS4uQFW1XKVVAn7VLMyGJDoM6Q03UXhUsyWwtQ78wilqY2xNEM0iQS9iuDfwp5dZEzw8nrIepKBoskBGXTac8z6QQXlHfpI3Gu64YyIQc2rDyyoFFZvPNOYbV5REI6rIKpYMWvTmDXyvnON84_Ojiq0HW-ikQmMSyvHWQpS0mXDiw4x3vkwOxUIaYwQJpCILGcqgomLr7XfoqRtPz25kG2ezneCuP0WpEGsT0K2I29m0pI4HwChXOY4UeRvbTpmCWBXnfYeE8RKNClnpFGv6Vl13hvVIu42IVTXy6w8dbngf9p0L9XzwaDRXnb6apDNow49gzVidjdSw1pe2A_INGbyyNeE-mxm-rIOTeqqY5q8MK62wOeF14W3KjztHhD0q7sMhaTrXHyk3pucK6LtDsdVSFWIpGKwI6L1yBNaujDOqxuhMzkblfDB7eXUCI6IjY5Q0UyMjUyQjVCRTA5ODFGNzE5MUVCQkY5", "expires_in": 86400, "token_type": "Bearer", "scope": "languages:read languages:write roles:read users:read users:write"} - À l'aide de l'extraction de l'autorisation de jeton, envoyez une demande de point terminal d'integration reçu dans l'étape nº3.
Envoyez un appel de PUBLICATION à :
https://api.walkme.com/public/v1/user/data
Type d'autorisation : le jeton de porteur
Token = "eyJhbGciOiJSUzI1NiIsImtpZNURDNTY1NkU4RDc4NEUiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJhYzRpVXJXLUNZSDNHUjY3LVYzRlpXNk5lRTQifQ.eyJuYmYiOjE1Nzc2Mjk1MzYsImV4cCI6MTU3NzcxNTkzNiwiaXNzIjoiaHR0cHM6Ly9hcGkud2Fsa21lcWEuY29tL2FjY291bnRzIiwiYXVkIjpbImh0dHBzOi8vYXBpLndhbGttZXFhLmNvbS9hY2NvdW50cy9yZXNvdXJjZXMiLCJXYWxrTWUgcHVibGljIl0sImNsaWVudF9pZCI6IjdkNjhiYTUwMGQwYTExZTk4MWI4MDJlZGRhNjMiLCJqdGkiOiI4NmQyZmE1Mi00YjkxLTQyZjUtOTgxMS0wZDUxOWM4YTI1ZGMiLCJqd2siOiIzYzM4eVVwbGVrSFJHWEFoVTVKajl3Z0JBYXBBdFoyQSIsInNjb3BlIjpbImxhbmd1YWdlczpyZWFkIiwibGFuZ3VhZ2VzOndyaXRlIiwicm9sZXM6cmVhZCIsInVzZXJzOnJlYWQiLCJ1c2Vyczp3cml0ZSJdfQ.Ufmo0cR6L9LfAfFl8tE-ZwQmFS5db0IRmXeRtDw2RZ88n1yV7wJ-bHKkZcIObv90achf2-3MhSdELZPH_YJQLz858Y79szfyUi5kraX2dHfA3U7UujjuL3qEUZMK0NR5JC37RIm-tvApOrbzl0Vc4aFKSF5Ae8pBOd2zfdsTvMkczI928AFJ-ieO9-U8Pl3vrYLNjaG-WzRE111ckQzzWMf1F2svdx9VRxxLOfm8TtVatuvcAS4uQFW1XKVVAn7VLMyGJDoM6Q03UXhUsyWwtQ78wilqY2xNEM0iQS9iuDfwp5dZEzw8nrIepKBoskBGXTac8z6QQXlHfpI3Gu64YyIQc2rDyyoFFZvPNOYbV5REI6rIKpYMWvTmDXyvnON84_Ojiq0HW-ikQmMSyvHWQpS0mXDiw4x3vkwOxUIaYwQJpCILGcqgomLr7XfoqRtPz25kG2ezneCuP0WpEGsT0K2I29m0pI4HwChXOY4UeRvbTpmCWBXnfYeE8RKNClnpFGv6Vl13hvVIu42IVTXy6w8dbngf9p0L9XzwaDRXnb6apDNow49gzVidjdSw1pe2A_INGbyyNeE-mxm-rIOTeqqY5q8MK62wOeF14W3KjztHhD0q7sMhaTrXHyk3pucK6LtDsdVSFWIpGKwI6L1yBNaujDOqxuhMzkblfDB7eXUCI6IjY5Q0UyMjUyQjVCRTA5ODFGNzE5MUVCQkY5" |
Exemple de charge utile JSON pour un utilisateur :
{ "token" : "0c29ceeb01402d61b822bb4d2bf71ae8e3d94737ec60ca8f0f83503d0f69d16e" , "data" : [ { "Email" : "John@walkme.com" , "Status" : "New" , "Type" : "Internal" } ] } |
Exemple de corps pour plusieurs utilisateurs :
{ "token" : "0c29ceeb01402d61b822bb4d2bf71ae8e3d94737ec60ca8f0f83503d0f69d16e" , "data" : [ { "Email" : "John@walkme.com" , "Status" : "New" , "Type" : "Internal" }, { "Email" : "Bill@walkme.com" , "Status" : "Retired" , "Type" : "Internal" }, { "Email" : "Tom@walkme.com" , "Status" : "Veteran" , "Type" : "External" } ] } |