Target Recommendations API是否支持多值字段?

描述 description

环境

  • Target

问题/症状

Target Recommendations API是否支持mbox或Launch Meta标记之类的多值字段? 例如,使用mbox,您可以执行以下操作:

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);
 }
});

该目录将作为要在活动中使用的数组存储在Target的目录中。 但是,传入字符串 [ “X”、“Y”、“Z”] 通过API的后端存储字符串(而不是数组),并在JSON数组中传递会导致400错误。 是否有应遵循的语法或文档?

解决方法 resolution

这应该有效。 已使用 GET 实体来查看已传递多值属性的其他实体。 然后在POST(保存)实体调用中使用相同的格式。 它过去很管用。

它应作为 stringifiedJSON 数组。 以下是上述测试所使用的语法:

{
    "entities":`[`
        {
            "attributes": {
                "message": "test tool yo",
                "multiVal1": "`[` \"X\",\"Y\",\"Z\"`]` "
            },
            "categories": `[`
                "test"
            `]` ,
            "environment": "183214",
            "id": "prod12",
            "name": "multi-val-via-RecsEntityAPI"
        }
    `]`
}
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f