Target Recommendations API是否支援多值欄位?

說明 description

環境

  • Target

問題/症狀

Target Recommendations API是否支援mbox或Launch中繼標籤之類的多值欄位? 例如,使用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的目錄中,作為用於活動中的陣列。 但是,透過API後端傳遞[ "X"、"Y"、"Z"]的字串會儲存字串,而非陣列,並傳入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