Destination SDK で作成される宛先のテンプレート仕様
宛先サーバー設定のテンプレート仕様部分を使用して、宛先に送信される HTTP リクエストの書式設定方法を設定します。
テンプレート仕様では、XDM スキーマとプラットフォームがサポートする形式の間でのプロファイル属性フィールドの変換方法を定義できます。
テンプレート仕様は、リアルタイム(ストリーミング)宛先用の宛先サーバー設定の一部です。
このコンポーネントがDestination SDKで作成される統合のどこに適合するかを把握するには、 設定オプションドキュメントの図を参照するか、Destination SDKを使用したストリーミング宛先の設定方法に関するガイドを参照してください。
/authoring/destination-servers
エンドポイントを介して宛先用のテンプレート仕様を設定できます。このページに表示されるコンポーネントを設定できる、詳細な API 呼び出しの例については、以下の API リファレンスページを参照してください。
IMPORTANT
Destination SDK でサポートされているすべてのパラメーター名および値は、大文字と小文字が区別 されます。大文字と小文字を区別することに関するエラーを避けるために、ドキュメントに示すように、パラメーター名および値を正確に使用してください。
サポートされる統合タイプ supported-integration-types
このページで説明される機能をサポートする統合のタイプについて詳しくは、以下の表を参照してください。
統合タイプ
機能のサポート
リアルタイム(ストリーミング)統合
○
ファイルベースの(バッチ)統合
×
テンプレート仕様の設定 configure-template-spec
アドビは Jinja と類似したテンプレート言語を使用して、XDM スキーマのフィールドを宛先でサポートされる形式に変換します。
変換について詳しくは、以下のリンクを参照してください。
TIP
アドビでは、メッセージ変換テンプレートの作成とテストに役立つ開発者ツールを提供しています。
以下の HTTP リクエストテンプレートの例と各パラメーターの説明を参照してください。
{
"httpTemplate":{
"httpMethod":"POST",
"requestBody":{
"templatingStrategy":"PEBBLE_V1",
"value":"{ \"attributes\": [ {% for ns in [\"external_id\", \"yourdestination_id\"] %} {% if input.profile.identityMap[ns] is not empty and first_namespace_encountered %} , {% endif %} {% set first_namespace_encountered = true %} {% for identity in input.profile.identityMap[ns]%} { \"{{ ns }}\": \"{{ identity.id }}\" {% if input.profile.segmentMembership.ups is not empty %} , \"AEPSegments\": { \"add\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"realized\" or segment.value.status == \"existing\" %} {% if added_segment_found %} , {% endif %} {% set added_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ], \"remove\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"exited\" %} {% if removed_segment_found %} , {% endif %} {% set removed_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ] } {% set removed_segment_found = false %} {% set added_segment_found = false %} {% endif %} {% if input.profile.attributes is not empty %} , {% endif %} {% for attribute in input.profile.attributes %} \"{{ attribute.key }}\": {% if attribute.value is empty %} null {% else %} \"{{ attribute.value.value }}\" {% endif %} {% if not loop.last%} , {% endif %} {% endfor %} } {% if not loop.last %} , {% endif %} {% endfor %} {% endfor %} ] }"
},
"contentType":"application/json"
}
}
パラメーター
タイプ
説明
httpMethod
文字列
必須。 サーバーへの呼び出しでアドビが使用するメソッド。サポートされるメソッド:
GET
、PUT
、POST
、DELETE
、PATCH
。templatingStrategy
文字列
必須。
PEBBLE_V1
を使用します。value
文字列
必須。 この文字列は、Platform によって送信される HTTP リクエストを宛先で想定される形式に書式設定するテンプレートの文字がエスケープされたバージョンです。
テンプレートの記述方法について詳しくは、テンプレートの使用に関する節を参照してください。
文字のエスケープについて詳しくは、RFC JSON 規格の第 7 節を参照してください。
単純な変換の例については、プロファイル属性変換を参照してください。
テンプレートの記述方法について詳しくは、テンプレートの使用に関する節を参照してください。
文字のエスケープについて詳しくは、RFC JSON 規格の第 7 節を参照してください。
単純な変換の例については、プロファイル属性変換を参照してください。
contentType
文字列
必須。 サーバーが受け入れるコンテンツタイプ。変換テンプレートが生成する出力のタイプに応じて、これは、サポートされる任意の HTTP アプリケーションコンテンツタイプになります。ほとんどの場合、この値は、
application/json
に設定する必要があります。次の手順 next-steps
この記事を読むことで、テンプレート仕様とは何か、およびどのように設定できるかについて、理解を深めることができました。
その他の宛先サーバーコンポーネントについて詳しくは、以下の記事を参照してください。
recommendation-more-help
7f4d1967-bf93-4dba-9789-bb6b505339d6