L’API Recommendations de Target prend-elle en charge les champs à plusieurs valeurs ?
Description description
Environnement
- Target
Problèmes/Symptômes
L’API Recommendations de Target prend-elle en charge les champs à plusieurs valeurs comme les balises de métadonnées mbox ou Launch ? Par exemple, avec une mbox, vous pouvez effectuer les opérations suivantes :
adobe.target.getOffer({
"mbox": "DemoMBoxCanBeDeleted",
"params":{
'entity.id': '123',
'entity.MultiValueAttribute': '[ "X", "Y", "Z"] '
},
"success": function(offer) {
console.log("Result: "+JSON.stringify(offer));
},
"error": function(status, error) {
console.log('Error', status, error);
}
});
qui sera stocké dans le catalogue de Target sous forme de tableau à utiliser dans une activité. Cependant, la transmission d’une chaîne de [
"X", "Y", "Z"]
via le serveur principal de l’API stocke une chaîne, et non un tableau, et la transmission d’un tableau JSON entraîne une erreur 400. Existe-t-il une syntaxe ou une documentation à suivre à ce sujet ?
Résolution resolution
Ça devrait marcher. Elle a été testée à l’aide de l’entité GET
pour voir une autre entité qui a été transmise à un attribut à plusieurs valeurs. Ensuite, utilisez le même format dans un appel d’entité de POST (enregistrement). Ça a bien fonctionné dans le passé.
Il doit être transmis en tant que tableau stringifiedJSON
en échappant les guillemets doubles dans le tableau. Voici la syntaxe utilisée pour le test ci-dessus :
{
"entities":[
{
"attributes": {
"message": "test tool yo",
"multiVal1": "[ \"X\",\"Y\",\"Z\"] "
},
"categories": [
"test"
] ,
"environment": "183214",
"id": "prod12",
"name": "multi-val-via-RecsEntityAPI"
}
]
}