ID サービストラブルシューティングガイド
このドキュメントでは、Adobe Experience Platform Identity Service に関するよくある質問への回答のほか、一般的なエラーのトラブルシューティングガイドを示します。Platform API 全般に関する質問とトラブルシューティングについては、Adobe Experience Platform API トラブルシューティングガイドを参照してください。
単一の顧客を識別するデータは、多くの場合、その顧客がブランドに関与するために使用する様々なデバイスやシステムにわたって断片化されています。Identity Service では、断片化されたこれらの ID をひとまとめにして、顧客の行動の完全な把握を促進するので、インパクトの強いデジタルエクスペリエンスをリアルタイムで提供できるようになります。詳しくは、「ID サービスの概要」を参照してください。
FAQ
Identity Service に関するよくある質問への回答のリストを以下に示します。
ID データとは
ID データは、個人を識別するために使用できる任意のデータです。組織内でのデータの使用方法のコンテキストに応じて、ID データには、ユーザー名、電子メールアドレス、CRM システムの ID が含まれる場合があります。匿名ユーザーはデバイスや cookie ID で識別できるので、ID データは Web サイトやサービスの登録ユーザーに限定されません。
データフィールドを ID としてラベル付けする利点は何ですか。
特定のデータフィールドをレコードおよび時系列データの ID としてラベル付けすると、データの自然構造内で ID の関係をマッピングし、重複データをチャネル間で紐付けできます。詳しくは、「ID サービスの概要」を参照してください。
既知 ID と匿名 ID とは
既知の ID とは、個人の識別、個人への連絡または個人の所在の特定を行うために単独でまたは他の情報と共に使用できる ID 値を指します。既知の ID の例としては、メールアドレス、電話番号、CRMID などがあります。
匿名 ID とは、個人の識別、個人への連絡または個人の所在の特定を行うために単独でまたは他の情報と共に使用することができない ID 値を指します(Cookie ID など)。
プライベート ID グラフとは
プライベート ID グラフは、組織にのみ表示される、結合済み ID とリンクされた ID の間の関係を示すプライベートマップです。
ストリーミングエンドポイントから取り込まれたデータや Identity Service で使用できるようになっているデータセットに送信されたデータに複数の ID が含まれている場合、それらの ID はプライベート ID グラフにリンクされます。Identity Service では、このグラフを活用して特定の消費者またはエンティティの ID を収集するので、ID スティッチングとプロファイル結合が可能になります。
XDM スキーマ内に複数の ID フィールドを作成する方法を教えてください。
エクスペリエンスデータモデル(XDM)スキーマは、複数の ID フィールドをサポートします。XDM Individual Profile または XDM ExperienceEvent クラスを実装するスキーマ内の任意の string
型のデータフィールドは、ID フィールドとしてラベル付けできます。ラベルが付けられると、これらのフィールドに含まれるすべてのデータがプロファイルの ID マップに追加されます。
ユーザーインターフェイスを使用して XDM フィールドに ID フィールドのラベルを付ける手順については、『スキーマエディタのチュートリアル』の「ID」節を参照してください。API を使用している場合は、『スキーマレジストリ API のチュートリアル』の「ID 記述子」の節を参照してください。
一部のフィールドを ID としてラベル付けしないようにする必要はありますか。
「ID」フィールドは、個々のユーザーに固有の値のために予約する必要があります。例えば、顧客のロイヤリティープログラムのデータセットを考えてみましょう。「ロイヤリティーレベル」フィールド(ゴールド、シルバー、ブロンズ)は有用な ID フィールドではありませんが、一意の値であるロイヤリティー ID は有用な ID フィールドです。
郵便番号や IP アドレスなどのフィールドは、値が複数の個人に適用される場合があるので、個人の ID としてラベル付けできません。これらのタイプのフィールドは、世帯レベルのマーケティング戦略の ID としてのみラベル付けする必要があります。
ID フィールドが期待どおりにリンクされないのはなぜですか。
ID サービス API の/cluster/members
エンドポイントを使用して、1 つ以上の ID フィールドに関連付けられた ID を表示できます。応答が期待するリンクされた ID を返さない場合は、XDM データに適切な ID 情報を提供していることを確認します。詳しくは、「ID サービスの概要」の「XDM データの ID サービスへの提供」の節を参照してください。
ID 名前空間とは
ID 名前空間は、ID フィールドと顧客の ID との関係を示すコンテキストを提供します。例えば、「Email」名前空間の下の ID フィールドは標準的なメールフォーマット(name@emailprovider.com)に準拠し、「Phone」名前空間を使用するフィールドは標準電話番号(北米では 987-555-1234 など)に準拠する必要があります。
名前空間は、異なる CRM システム間で類似した ID 値を区別します。例えば、企業の報酬プログラムに関連付けられた数値のロイヤリティー ID を含むプロファイルを考えてみます。「Loyalty」名前空間では、同じプロファイルにも表示される e コマースシステムの類似した数値 ID からこの値が分離されます。
詳しくは、「ID 名前空間の概要」を参照してください。
ID を ID 名前空間に関連付ける方法を教えてください。
ID フィールドは、作成時に既存の ID 名前空間に関連付ける必要があります。新しい名前空間は、API を使用して作成してから、ID フィールドに関連付ける必要があります。
API を使用して ID 記述子を作成する際に名前空間を定義する手順については、『スキーマレジストリ開発者ガイド』の「記述子の作成」の節を参照してください。UI でスキーマフィールドを ID としてマークする場合は、『スキーマエディタのチュートリアル』の手順に従います。
Experience Platform が提供する標準 ID 名前空間は何ですか。 standard-namespaces
標準 ID 名前空間は、すべての組織で使用できる名前空間です。使用可能な標準名前空間の完全なリストについては、ID 名前空間の概要を参照してください。
組織で使用できる ID 名前空間のリストはどこで見つけられますか?
ID サービス API を使用して、/idnamespace/identities
エンドポイントに GET リクエストをおこなうことで、組織で使用可能なすべての ID 名前空間をリストできます。詳しくは、「ID サービス API の概要」で使用可能な名前空間のリストを参照してください。
組織のカスタム名前空間を作成する方法を教えてください。
ID サービス API を使用して /idnamespace/identities
エンドポイントに POST リクエストをおこなうことで、組織のカスタム ID 名前空間を作成できます。詳しくは、「ID サービス API の概要」のカスタム名前空間の作成に関する節を参照してください。
複合 ID と XID とは何ですか。
ID は、API 呼び出しで複合 ID または XID によって参照されます。複合 ID は、ID 値と名前空間を含んだ ID を表します。XID は、複合 ID(ID および名前空間)と同じコンストラクトを表す単一値 ID で、ID サービスによって永続化されると、新しい ID に自動的に割り当てられます。詳しくは、「ID サービス API の概要」を参照してください。
ID サービスが個人を特定できる情報(PII)をどのように処理するのか教えてください。
ID サービスには、電話番号とメールのハッシュ化された ID 値の取り込みをサポートする標準名前空間があります。ただし、値のハッシュ化はユーザーが行う必要があります。Platform に取り込まれるデータのハッシュ化について詳しくは、Data Prep マッピング関数ガイドを参照してください。
PII ベースの ID をハッシュする際に考慮すべき点はありますか。
ハッシュ化された PII 値を ID サービスに送信する場合は、データセット全体で同じ暗号化方式を使用する必要があります。これにより、データセット間で同じ ID 値が同じハッシュ値を生成し、ID グラフで適切に一致およびリンクできるようになります。
ID グラフページや API にアクセスできないのはなぜですか?
ID グラフデータを表示するには、Platform 管理者から view-identity-graph
権限をプロビジョニングしてもらう必要があります。この権限がないと、ID グラフビューアページと、Platform API の呼び出し時に、権限が拒否されたというメッセージが表示されます。権限について詳しくは、アクセス制御の概要を参照してください。
トラブルシューティング
次の節では、Identity Service API の操作中に発生する可能性のある特定のエラーコードと予期しない動作に関するトラブルシューティングの推奨事項を示します。
Identity Service のエラーメッセージ
Identity Service API の使用時に表示される可能性のあるエラーメッセージのリストを以下に示します。
必要なクエリーパラメーターがありません
{
"title": "InvalidInput",
"status": 400,
"detail": "Missing required query parameter - namespace"
}
このエラーは、リクエストされたクエリーパラメータがリクエストパスに含まれていない場合に表示されます。エラーメッセージの detail
に、見つからないパラメーターの名前が表示されます。このエラーメッセージには、次のようなバリエーションがあります。
- 必要なクエリーパラメーターがありません — nsId
- 必要なクエリーパラメーターがありません — id
- 必要なクエリーパラメーターがありません — xid または(nsid,id)
- 必要なクエリーパラメーターがありません — targetNs
- 必要なクエリーパラメーターがありません — xids または compositeXids
再試行する前に、指定したパラメーターがリクエストパスに正しく含まれていることを確認してください。
タイムスタンプは過去 180 日以内にする必要があります
{
"title": "InvalidInput",
"status": 400,
"detail": "Timestamp should be within last 180 days"
}
Identity Service では、180 日より古いデータを消去します。このエラーメッセージは、これより古いデータにアクセスしようとすると表示されます。
1 回の呼び出しで使用できる XID は 1,000 個までです
{
"title": "InvalidInput",
"status": 400,
"detail": "There is a limit of 1000 XIDs in a single call"
}
このエラーメッセージは、1 回の API 呼び出しで許可される XID の最大数を超える ID 情報を取得しようとすると表示されます。この問題を解決するには、リクエストの XID の数を表示された上限を下回るように減らします。
1 回の呼び出しで使用できる compositeXids は 1,000 個までです
{
"title": "InvalidInput",
"status": 400,
"detail": "There is a limit for 1000 compositeXids in a single call"
}
このエラーメッセージは、1 回の API 呼び出しで許可される複合 ID の最大数を超える ID 情報を取得しようとすると表示されます。この問題を解決するには、リクエスト内の複合 ID の数を、表示される制限を下回るように減らします。
指定されたグラフの種類は無効です
{
"title": "InvalidInput",
"status": 400,
"detail": "The graph-type abc specified is invalid. Please provide a valid graph-type"
}
このエラーメッセージは、リクエストパスで graph-type
クエリーパラメーターに無効な値が与えられた場合に表示されます。サポートされているグラフタイプについては、Identity Service の概要の ID グラフの節を参照してください。
サービストークンに有効なスコープがありません
{
"title": "UnauthorizedAccess",
"status": 401,
"detail": "Service token does not have valid scope. Either acp.core.identity or acp.foundation is required"
}
このエラーメッセージが表示されるのは、Identity Service の適切な権限が組織にプロビジョニングされていない場合です。この問題を解決するには、システム管理者に問い合わせてください。
ゲートウェイサービストークンが無効です
{
"title": "UnauthorizedAccess",
"status": 401,
"detail": "Gateway service token is not valid"
}
このエラーが発生した場合、アクセストークンは無効です。アクセストークンは 24 時間ごとに期限切れになるので、引き続き Platform API を使用するには再生成する必要があります。新しいアクセストークンの生成手順については、認証に関するチュートリアルを参照してください。
認証サービストークンが無効です
{
"title": "UnauthorizedAccess",
"status": 401,
"detail": "Authorization service token is not valid"
}
このエラーが発生した場合、アクセストークンは無効です。アクセストークンは 24 時間ごとに期限切れになるので、引き続き Platform API を使用するには再生成する必要があります。新しいアクセストークンの生成手順については、認証に関するチュートリアルを参照してください。
ユーザートークンに有効な製品コンテキストがありません
{
"title": "UnauthorizedAccess",
"status": 401,
"detail": "User token does not have valid product context"
}
このエラーメッセージが表示されるのは、アクセストークンが Experience Platform 統合から生成されていない場合です。Experience Platform 統合用の新しいアクセストークンの生成手順については、認証に関するチュートリアルを参照してください。
ID と名前空間コードからネイティブ XID を取得する際の内部エラー
{
"title": "UnauthorizedAccess",
"status": 401,
"detail": "Invalid IMS Token/IMS Org | Internal error - when tried to get native XID from identity and namespace code"
}
Identity Service が識別情報を永続化する場合、その識別情報の ID および関連する名前空間 ID には、XID と呼ばれる一意の ID が割り当てられます。このメッセージが表示されるのは、特定の ID 値および名前空間に対応する XID を見つける過程でエラーが発生した場合です。
IMS 組織は、Identity Service を使用できるようにプロビジョニングされていません
{
"title": "AccountNotProvisioned",
"status": 403,
"detail": "The IMS Org. {IMS_ORG_NAME} is not provisioned for Identity Service usage"
}
このエラーメッセージが表示されるのは、Identity Service の適切な権限が組織にプロビジョニングされていない場合です。この問題を解決するには、システム管理者に問い合わせてください。
内部サーバーエラー
{
"title": "InternalError",
"status": 500,
"detail": "Internal Server Error. There was a problem processing your request"
}
このエラーが表示されるのは、Platform サービス呼び出しの実行で予期しない例外が発生した場合です。ベストプラクティスは、自動呼び出しをプログラムして、このエラーを受け取ったときに一定の時間間隔でリクエストを数回再試行することです。問題が解決しない場合は、システム管理者に問い合わせてください。
バッチ取得エラーコード
Identity Service では、バッチ取り込みを使用して Platform にアップロードされたレコードデータや時系列データから ID データを取り込みます。バッチ取得は非同期的なプロセスなので、エラーを表示するには、バッチの詳細を表示する必要があります。バッチが完了するまで、バッチの進行に合わせてエラーが蓄積されます。
以下は、バッチ取り込み API の使用時に発生する可能性のある Identity Service 関連のエラーメッセージのリストです。
不明な XDM スキーマ
{
"title": "InvalidInput",
"status": 400,
"detail": "Unknown XDM schema"
}
Identity Service は、それぞれ Profile クラスまたは ExperienceEvent クラスに準拠するレコードまたは時系列データの ID のみを使用します。どちらのクラスにも準拠していない Identity Service のデータを取得しようとすると、このエラーが発生します。
処理されたバッチの最初の 100 行に 0 個の有効な ID がありました
{
"title": "InvalidInput",
"status": 400,
"detail": "There were 0 valid identities in the first 100 rows of the processed batch"
}
このエラーは、バッチの最初の 100 行に ID が見つからなかった場合に表示されます。ただし、このエラーは、後続のレコードで ID が見つからなかったことを最終的に示すものではありません。
XDM レコード 1 つにつき ID が 1 つしかないので、レコードをスキップしました
{
"title": "InvalidInput",
"status": 400,
"detail": "Skipped {NUMBER_OF_RECORDS} records as they had only 1 identity per XDM record"
}
Identity Service は、1 つのレコードに複数の ID 値が存在する場合にのみ ID をリンクします。このエラーメッセージは、取得されたバッチごとに 1 回ずつ発生し、1 つの ID しか見つからずに ID グラフに変更が生じなかったレコードの数を表示します。
名前空間コードがこの IMS 組織に登録されていません
{
"title": "InvalidInput",
"status": 400,
"detail": "Namespace Code {ERRONEOUS_CODE} is not registered for this IMS Org"
}
このエラーが表示されるのは、取り込んだレコードの ID に関連付けられた名前空間が存在しないか組織からアクセスできない場合です。
IMS 組織はプライベート ID グラフ用にプロビジョニングされていないため、バッチ取り込みをスキップします
{
"title": "AccountNotProvisioned",
"status": 403,
"detail": "Skipping batch ingestion as IMS Org is not provisioned for Private Identity Graph"
}
組織が Identity Service に対する適切な権限をプロビジョニングされていない場合にバッチデータを取り込むと、このエラーメッセージが表示されます。この問題を解決するには、システム管理者に問い合わせてください。
内部エラー
{
"title": "InternalError",
"status": 500,
"detail": "Internal Error. There was a problem during the ingestion"
}
このエラーは、バッチ取得中に予期しない例外が発生した場合に表示されます。ベストプラクティスは、自動呼び出しをプログラムして、このエラーを受け取ったときに一定の時間間隔でリクエストを数回再試行することです。問題が解決しない場合は、システム管理者に問い合わせてください。