Unterstützt die Target Recommendations-API Felder mit mehreren Werten?
Beschreibung description
Umgebung
- Target
Probleme/Symptome
Unterstützt die Target Recommendations-API Felder mit mehreren Werten wie mbox- oder Launch-Meta-Tags? Mit einer Mbox können Sie beispielsweise Folgendes tun:
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);
}
});
Dieser wird im Zielkatalog als Array gespeichert, das in einer Aktivität verwendet werden soll. Wenn Sie jedoch eine Zeichenfolge [ „X“, „Y“, „Z“ ] das Backend der API übergeben, wird eine Zeichenfolge gespeichert, kein Array. Die Übergabe eines JSON-Arrays führt zu einem 400-Fehler. Gibt es eine Syntax oder Dokumentation, die in dieser Frage befolgt werden sollte?
Auflösung resolution
Das sollte funktionieren. Es wurde mit der GET-Entität getestet, um eine andere Entität zu sehen, der ein Mehrwert-Attribut übergeben wurde. Dann wird dasselbe Format in einem POST-Entitätsaufruf (Speichern) verwendet. Es hat in der Vergangenheit gut funktioniert.
Sie sollte als stringifiedJSON-Array übergeben werden, indem Sie die doppelten Anführungszeichen im Array mit Escape-Zeichen versehen. Hier ist die Syntax für den obigen Test:
{
"entities":[
{
"attributes": {
"message": "test tool yo",
"multiVal1": "[ \"X\",\"Y\",\"Z\"] "
},
"categories": [
"test"
] ,
"environment": "183214",
"id": "prod12",
"name": "multi-val-via-RecsEntityAPI"
}
]
}