Configurer les attributs utilisateur
Adresse d'invocation
POST /v1/user/property
Vérification de l'invocation
L'API REST EngageLab utilise l'authentification HTTP Basic comme méthode de vérification. Ajoutez Authorization dans l'en-tête HTTP :
Authorization: Basic ${base64_auth_string}
Le base64_auth_string est généré selon l'algorithme suivant : base64(api_key:api_secret).
- Le nom de l'en-tête est "Authorization", et la valeur est la paire "nom d'utilisateur:mot de passe" encodée en base64 (séparée par deux-points).
- Pour l'API MA, le nom d'utilisateur correspond à l'APIKey, et le mot de passe correspond à l'APISecret. Veuillez configurer une source de données de type API pour obtenir l'APIKey et l'APISecret.
Exemple de requête
En-tête de la requête
> POST /v1/user/property
> Content-Type: application/json
> Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==
Corps de la requête
{
"euid": 10362473,
"type": "set",
"properties": {
"user_number_once": 46.2,
"user_string_once": "refef",
"user_datetime_once": "2023-12-12 00:56:23"
}
}
Paramètres de la requête
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
| euid | Long | Oui | L'identifiant utilisateur unique de EngageLab MA |
| type | String | Oui | Le type d'opération pour la mise à jour des propriétés |
| properties | JSON | Oui | La liste des propriétés utilisateur, où la clé est le nom de la propriété et la valeur est la valeur de la propriété |
Types d’opération
Toutes les propriétés d’une requête utilisent le même type. Les valeurs prises en charge sont set, increase, add, remove, delete, setOnce et update.
| Opération | Types de propriété applicables | Description |
|---|---|---|
set |
Tous les types | Met à jour la valeur ; pour object_array, la valeur doit être un tableau d’objets et remplace le tableau existant. |
increase |
Nombre | Ajoute le nombre fourni à la valeur existante ; une propriété absente commence à 0. |
add |
Liste, tableau d’objets | Ajoute des éléments de liste sans doublons ou ajoute un objet au tableau. |
remove |
Liste, tableau d’objets | Supprime des éléments de liste ou un élément du tableau par identifiant. |
delete |
Tous les types | Supprime toutes les valeurs de la propriété. |
setOnce |
Tous les types | Écrit uniquement si la propriété n’a pas encore été définie. |
update |
Tableau d’objets | Met partiellement à jour un élément du tableau par identifiant. |
Opérations sur les tableaux d’objets
Pour object_array, la valeur de add est un objet JSON unique et celle de set est un tableau d’objets JSON. remove et update localisent un élément avec $identifier_key et $identifier_value ; le champ identifiant doit être un sous-champ string ou number défini.
La valeur de remove ne peut contenir que ces deux champs identifiants :
{
"euid": 10362473,
"type": "remove",
"properties": {
"devices": {
"$identifier_key": "device_id",
"$identifier_value": "ios-001"
}
}
}
update doit également inclure un $new_object non vide. Il ne peut pas contenir le champ identifiant ; les champs dont la valeur est null sont supprimés de l’élément trouvé. L’identifiant doit correspondre à exactement un élément du tableau.
{
"euid": 10362473,
"type": "update",
"properties": {
"devices": {
"$identifier_key": "device_id",
"$identifier_value": "ios-001",
"$new_object": {
"model": "iPhone 16",
"legacy_field": null
}
}
}
}
Paramètres de retour
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
| code | Int | Oui | Indique si l'appel de l'interface est réussi. 0 signifie succès ou succès partiel, et d'autres valeurs représentent un échec |
| message | String | Oui | Description du résultat de l'appel de l'API, expliquant le code de retour |
Tout réussi
{
"code": 0,
"message": "success"
}
Tout échoué
{
"code": 55102,
"message": "Invalid user attributes exist"
}
Codes d'erreur
| Code | Description | Explication détaillée |
|---|---|---|
| 40050 | Échec de l'authentification de l'interface. | Vérifiez si l'ID du projet et la clé secrète du projet sont corrects. |
| 40007 | EUID est vide. | Veuillez vérifier la valeur de l'EUID. |
| 50031 | ID du projet invalide. | Veuillez vérifier si l'APIKey et l'APISecret sont corrects. |
| 50034 | L'ID du projet n'existe pas. | Veuillez vérifier si l'APIKey et l'APISecret sont corrects, et si le projet a été supprimé. |
| 50074 | Source de données API inexistante. | Veuillez vérifier si l'APIKey et l'APISecret sont corrects, et si la source de données API a été supprimée. |
| 55004 | Paramètres métier invalides. | Veuillez vérifier si les champs des paramètres de la requête sont corrects. |
| 55101 | Le nombre d'identifiants utilisateur dépasse la limite. | Vérifiez si le nombre de valeurs de l'identification utilisateur dépasse 100. |
| 55102 | Il existe des noms d'attributs utilisateur invalides. | Vérifiez si le nom de l'attribut respecte les exigences de nommage, et s'il est vide/utilise des caractères réservés/dépasse la limite de longueur. |
| 55103 | Les valeurs des attributs utilisateur ne peuvent pas être vides. | Vérifiez si la valeur de l'attribut utilisateur dans le corps de la requête est vide. |
| 55105 | La valeur de l'identifiant utilisateur ne peut pas dépasser 256 caractères. | Vérifiez si la valeur de l'identification utilisateur dépasse 256 caractères. |
| 55106 | Le nom de l'identifiant utilisateur n'est pas dans la plage prise en charge. | Vérifiez si le nom de l'identifiant utilisateur est user_id, anonymous_id ou registration_id. |
| 55107 | La valeur de l'identifiant utilisateur est vide. | Vérifiez si la valeur de l'identification utilisateur dans le corps de la requête est vide. |
| 55108 | EUID invalide. | Veuillez vérifier la valeur de l'EUID. |
| -1 | Erreur interne du serveur. | Veuillez contacter le support technique EngageLab. |










