外部 API アクティビティのサポート
この記事では、Adobe Campaign Standardがサードパーティの REST API エンドポイントで受け入れられない JSON 形式を変更する問題について説明します。
説明 description
環境
Adobe Campaign Standard(ACS)
問題/症状
サードパーティの REST API エンドポイントは、次の JSON 形式を受け入れてデータを渡します。
実際のペイロード :
{"destination":"https://www.google.com/work/insights/123","domain":"google.com"}
ただし、ACS は JSON 形式を変更しますが、これはサードパーティの REST API エンドポイントでは受け入れられません。
変更されたペイロード :
{“data”:[ {"destination":"https://www.google.com/work/insights/123","domain":"google.com"}] }
解決策 resolution
形式を使用する決定に影響を与えた要因は 2 つあります。
- data 部分は、以前のアクティビティによって生成されたインバウンド temp table があり、その temp table からの行が JSON 配列にシリアル化される場合にのみ追加されます。 したがって、data という名前の JSON プロパティと、シリアル化されたデータが
]を使用して配列として送信[れる必要があります。 - アクティビティを使用すると、カスタムパラメーターを API にも送信でき、params プロパティを使用してペイロードに追加できます。 これらは固定されています(オーサリング時にアクティビティに 1 回設定されます)。
この正規化された形式を使用すると、UI をサポートせずに固定形式を使用し、サードパーティの API 仕様に従って形式を設定する方法をカスタマイズできます。 これは、AdobeI/O ランタイムやAWS Lambda などの翻訳レイヤーを使用して、必要に応じてリクエストや応答をオンザフライで翻訳することを目的としたものです。
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f