Profiles APIを次の目的で使用する場合、以下の問題が発生する可能性があります。
セグメントIDをツールに提供します。ツールはセグメントを使用して、パーソナライズされたメッセージングを提供したり、アクティビティを監視および報告したりできます。
このトピックには以下が含まれます。
- ルーティング操作が完了していることを確認する
- ツールへのセグメントIDの返却
- 返却できるセグメントIDの数の制限
- キーカラムの不一致
- Profiles APIセットアップの確認
- セグメント属性とプロファイル値に対するProfiles APIキーカラムの検証
- Profiles APIトークンとリアルタイムセグメントを設定した後に動作データを送信するようにする
- JS SDKから送信される動作データにキーカラムを含めるようにする
以下のJS SDKエンドポイントを使用する場合、リアルタイムセグメンテーションを使用するには、バックエンドからのルーティング有効化が必要です。Treasure Dataサポートに連絡して、ルーティングを有効にするaccount、database、およびtableをお知らせください。バックエンドから有効化します。この制限は将来のリリースで削除される予定です。
AP02リージョン
- ap02.records.in.treasuredata.com
東京リージョン
- ap01.records.in.treasuredata.com
米国リージョン
- us01.records.in.treasuredata.com
EU01リージョン
- eu01.records.in.treasuredata.com
API呼び出しがセグメントIDを返せない理由はいくつかあります。
APIが返すことができるセグメントIDの数には1KBの制限があります。セグメントIDはProfile APIによって配列として返されます。Profiles APIを設定する際にセグメントを選択する場合は、セグメントの数を制限してください。
Profiles APIセットアップのセグメントには、Profile APIで指定されたキーカラムと一致する値を持つプロファイルが含まれている必要があります。APIキーカラムと一致するプロファイルがない場合、API呼び出しはセグメントIDを返しません。
セグメント内のプロファイルを確認して、少なくともいくつかのプロファイルがProfiles APIキーカラムと一致する値を持っていることを確認できます。
次のプロファイルセットアップでは、キーカラムはgenderです。API呼び出しによってセグメントIDが返されるには、属性としてgenderが指定され、値(maleやfemaleなど)を持つセグメント内のレコードが存在する必要があります。

次の例は、API呼び出しがどのようになるかを示しています。
https://cdp.in.treasuredata.com/cdp/lookup/collect/segments?version=2&token=<apiToken>&key.gender=female&callback=TreasureJSONPCallback1
key.gender=femaleに注目してください。
この例では、API呼び出しは、genderが'female'である指定されたセグメント内のプロファイルを見つけるように設定されており、プロファイルが含まれているセグメントのIDを取得するように設定されています。
genderとしてfemaleを指定する設定はセグメント内にあります。Profiles APIキーを呼び出してセグメントIDを取得する設定は、WebアプリまたはクライアントにあるJavaScript内にあります。
セグメントをチェックして、指定されたキーカラムを持つプロファイルがセグメント内に存在するかどうかを確認できます。指定された属性の値を返すプロファイルを表示できます。
次の例では、セグメント内のgender値は'Female'に設定されています。セグメントは16のプロファイルを返し、API呼び出しがこのセグメントにいくつかの値を返すことができ、呼び出された場合にこのセグメントIDを提供できることを確認します。

Profiles APIトークンとリアルタイムセグメントを登録した後、Profiles APIから動作データを取得するためのルール情報をバックエンドに保存します。
APIトークンとリアルタイムセグメントプロファイルを設定した後、JS SDKから動作データを送信してください。
Profiles API経由でデータを取得する場合は、JS SDKから送信されるデータにキーカラム(Profiles APIトークンで指定)を含めてください。
キーはSDKデータに存在する必要があります。そうでない場合、Profiles APIはセグメントを正しく取得できません。
ルックアップキーとしてtd_global_idを使用する場合、Profiles APIはAPIリクエストのクエリパラメータではなく、ブラウザクッキーからルックアップ値を取得します。ブラウザ外でのテストや検証目的(例:Postman)の場合は、別のカラムを使用して手動でルックアップ値を渡してください。