Moments APIとCloudStreamの統合ガイド
Moments APIを構成して、CloudStreamセグメントからリアルタイムの訪問データを取得します。
動作原理
Moments APIはCloudStreamとの直接統合をサポートしており、SnowflakeやDatabricksなどのクラウドデータソースからCloudStreamセグメントに基づいて訪問データをリアルタイムで取得し、リアルタイムのパーソナライゼーションを作成できます。
この統合は、データクラウドとリアルタイムAPIレスポンスの間に橋をかけ、データウェアハウスのスケールとMoments APIの低遅延パフォーマンスを組み合わせたパーソナライゼーションシナリオを実現します。
統合には、CloudStreamプロファイルとMoments APIの両方での構成が必要です。
前提条件
- 少なくとも1つのクラウドデータソースが構成されたCloudStreamプロファイル
- クラウド属性を使用して作成されたCloudStreamセグメント
- アカウントでMoments APIが有効になっていること
ステップ1: クラウドデータソースの構成
CloudStreamプロファイルで、Moments APIと連携する各クラウドデータソースを構成します:
- CloudStreamプロファイルでSources > Data Sourcesに移動します。
- 新しいクラウドデータソースを作成するか、既存のものを編集します。
- データソース構成でMoments API Integrationセクションに移動します。
- Moments API Integrationを有効にします。
- 各レコードに対して一意の識別子を含むクラウドデータソースの列を選択します。
- この識別子は訪問やエンティティごとに一意である必要があります(例:訪問ID、顧客ID、またはメールアドレス)。
- 文字列または数値データ型の列のみがサポートされています。
- この列の値はMoments APIエンドポイントの
momentsApiIdパラメーターに使用されます。
- データソース構成を完了して変更を保存します。
クラウドデータソースは、Moments APIエンジンのソースとして利用可能になりました。
ステップ2: CloudStreamセグメントの作成
Moments APIを通じて利用可能にしたいオーディエンスを定義するCloudStreamセグメントを作成します:
- CloudStreamプロファイルでAudienceに移動します。
- データソースのクラウド属性を使用してセグメントを作成します。
- Moments APIで使用するセグメントを保存して有効にします。
これらのセグメントは、Moments APIエンジンを構成する際に選択できます。
ステップ3: Moments APIエンジンの構成
Moments API構成で、APIレスポンスに含めたいCloudStreamデータソースとセグメントを追加します:
- CloudStreamプロファイルでCloudStream > Moments APIに移動します。
- 新しいエンジンを作成するか、既存のものを編集します。
- Details画面で、エンジン名、有効状態、ドメイン許可リストを構成します。
- Nextをクリックします。
- Cloud Data Source画面で:
- Add Data Sourceをクリックしてクラウドデータソースを追加します。
- 追加する各クラウドデータソースについて、エンジン構成で使用するCloudStreamセグメントを選択します。
- 選択したすべてのセグメントのレコードがエンジン構成に事前に構成されます。
- Nextをクリックします。
- Response画面で、CloudStreamセグメントがExample Responseのオーディエンスとして表示されていることを確認します。
- 必要に応じて追加のCloudStream属性を選択できます。サポートされているデータタイプ:数値、文字列、ブール値、日付。
- レスポンスペイロードの属性でIDまたは名前を使用するか選択します。
- Example Responseパネルを確認して構成を確認します。
- Nextをクリックし、エンジンの概要を確認します。
- Doneをクリックしてエンジンを保存します。
ステップ4: Moments APIエンドポイントの呼び出し
Moments API IDパラメータを使用して、CloudStreamセグメントから訪問データを取得します。
Moments APIエンドポイント
GET https://personalization-api.{REGION}.prod.tealiumapis.com/personalization/accounts/{ACCOUNT}/profiles/{PROFILE}/engines/{ENGINE_ID}/visitors/{momentsApiId}?suppressNotFound={SUPPRESS_NOT_FOUND}
パラメータ
| パラメータ | タイプ | 説明 |
|---|---|---|
momentsApiId |
String Path parameter |
ステップ1で選択した列のクラウド属性の値です。特殊文字はエンコードする必要があります。 |
suppressNotFound |
Boolean Query parameter |
訪問が見つからない場合のレスポンスタイプを決定します。デフォルトはfalseです。true - HTTP 200で空のレスポンスボディを返します。false - HTTP 404を返します。 |
例のリクエスト
GET https://personalization-api.us-west.prod.tealiumapis.com/personalization/accounts/example-account/profiles/cloudstream-profile/engines/abc123/visitors/user%40example.com?suppressNotFound=true
この例では:
user%40example.comはクラウドデータソース構成でマッピングされたクラウド属性の値です。
レスポンス形式
レスポンスは標準のMoments APIレスポンス形式に従い、CloudStreamセグメントのオーディエンスが含まれます:
{
"audiences": [
"30 Days Since Last Login"
],
"metrics": {
"Total direct visits": 1
},
"properties": {
"Company Name": "<attr_value>"
},
"flags": {
"Returning visitor": false
},
"dates": {
"First visit": 1491233145706
}
}
ベストプラクティス
- 安定した識別子を選択する:セッション間で持続する安定した、一意の識別子を含む列を選択します(例:顧客IDまたはメールハッシュ)。
- suppressNotFoundでテストする:テスト中は
suppressNotFound=trueを使用して、データソースに訪問が見つからない場合のHTTP 404レスポンスを避けます。 - セグメントメンバーシップを監視する:Moments APIレスポンスで期待する訪問集団を捉えるようにCloudStreamセグメントが構成されていることを確認します。
- 更新を調整する:クラウドデータソースの構成変更がMoments APIレスポンスに影響を与える可能性があるため、両システム間で更新を調整します。
関連ドキュメント
最終更新日 :: 2026年April月16日