Account System Product
Account System Product をリリースしました。組織の中央アカウントまたはプラットフォームプロダクトが、1 つの API キーとオプションのヘッダーを使用して、組織内の他のプロダクトに代わって認証チャレンジとセッションを作成できる機能です。
新機能
Account System Product
Compliance Studio でプロダクトを Account System Product として有効にすると、Kid-Target-Product-Id ヘッダーにターゲットプロダクトの ID を付けて、同じ組織内の他の(Account System Product 以外の)プロダクトに代わって特定の k-ID API を呼び出せます。Account System Product の API キーを使用するため、ターゲットごとのキー管理やローテーションは不要です。
対応エンドポイント:
保護者はターゲットプロダクトの設定(通知、権限、ブランディング)のみを確認します。Account System Product とターゲットプロダクトの両方に、各イベントの Webhook が送信され、onBehalfOfProductId と initiatedByProductId でクロスプロダクトのフローを識別できます。
Account System Product は マルチプロダクト承認 と連携します。Account System Product をターゲットの必須プロダクトに設定すると、保護者が 1 回のフローで両方を承認できます。
ドキュメント
- Account System Product – 実装ガイド、設定手順、Webhook ペイロード、セキュリティ
追加の法的リンクと Check age gate の options
追加の法的リンク(Developer Details)と Check age gate API の options パラメータについてドキュメントを追加しました。同意フローでプラットフォーム別の法的文書(Xbox、PlayStation、Steam など)を表示できるようになります。
新機能
追加の法的リンク(Developer Details)
Compliance Studio のプロダクト 開発者の詳細 タブで、同意フローに表示される任意の 追加の法的リンク を追加できます。
- タイトルとリンク: ローカライズされた表示タイトルと URL(メインの法的文書と同じ言語オプション)。
- バリアント ID: Check age gate API 呼び出し時に使用する識別子(例:
xbox-tos、playstation-privacy-policy)。常に表示がオフの場合は必須です。 - 常に表示: オン(デフォルト)の場合、同意フローで常にリンクが表示されます。オフの場合、ゲームが
optionsで一致するバリアント ID を指定して年齢ゲート API を呼び出したときのみ表示されます。
ゲームが複数プラットフォームで配信され、プラットフォームごとに異なる法的文書 URL が必要な場合にご利用ください。
Check age gate API — options パラメータ
POST /api/v1/age-gate/check のリクエストボディで、任意の options オブジェクトを指定できます。
- termsOfServiceDocument: 利用規約のバリアント ID(設定した追加の法的リンクと一致すること)。
- privacyPolicyDocument: プライバシーポリシーのバリアント ID(設定した追加の法的リンクと一致すること)。
チャレンジが作成されると、同意画面ではプロダクトのデフォルトのプライバシーポリシー・利用規約ではなく、リクエストされた法的リンクが表示されます。
ドキュメント
- 開発者の詳細 — 基本情報(追加の法的リンクを含む)
- Check age gate(リクエストボディと CheckAgeGateRequestOptions)
確認URLの有効期間とget-statusのドキュメント
年齢確認のドキュメントを更新し、URLの有効期間、期限切れURLの扱い、ステータス確認について追記しました。
新機能
- URLの有効期間: 確認URLは作成から2週間有効です。有効期限はJWTの
tokenクエリパラメータに含まれます。標準のexpクレームでURLがまだ有効かどうかを判定できます。 - 期限切れURL: 保存した確認IDで
/age-verification/get-statusを呼び出してください。確認が見つからない場合は新規作成してください。 - URLなしでのステータス確認: 確認IDでget-statusを呼ぶと、いつでもステータスを確認できます(URL期限切れ後やwebhookを受信できなかった場合など)。
- 保持期間: 2週間以上
PENDINGのままの確認は削除され、get-statusでは返されません。
更新されたドキュメント
Age Gate Widget Redirect URL サポート
Age Gate WidgetエンドポイントにredirectUrlをオプションパラメータとして追加しました。
新機能
Age Gate Widget API の更新
/widget/generate-age-gate-urlエンドポイントは、optionsオブジェクト内にオプションのredirectUrlパラメータをサポートするようになりました。これにより、Age Gate Widget完了後にリダイレクトするURLを指定できます。これは、エンドツーエンドウィジェットエンドポイントと同様です。
redirectUrlパラメータは、HTTP/HTTPS URLまたはカスタムプロトコルスキームを使用したモバイルディープリンクをサポートします。
更新されたAPI
検証ドキュメントの更新
検証ドキュメントを更新し、メソッドフィールドの説明を改善し、ガイダンスを明確にしました。
新機能
Verification Result ドキュメント
Verification.Result Webhookドキュメントを更新しました:
- ageCategoryガイダンス: PASSステータスの場合、
ageCategoryは常に存在し、生の年齢値ではなくアクセス制御の決定に使用すべきであることを明確化 - メソッドフィールドの更新:
- メソッドフィールドリストから
self-confirmationとemail-confirmationを削除 age-estimation-scanの説明を更新し、年齢範囲を返す顔年齢推定スキャン(DOBなし)であることを示すようにしました
- メソッドフィールドリストから
更新されたドキュメント
Widget.ExitReviewの明確化とAPIの更新
年齢確認とVPCフローのウィジェットUIをいつ閉じるかを明確にし、MegaWidgetOptionsスキーマにredirectUrlサポートを追加しました。
新機能
Widget.ExitReviewの明確化
年齢確認とVPCフローのUIをいつ閉じるかを判断するシグナルとして、Widget.ExitReviewを使用することを明確にするためにドキュメントを更新しました。
更新されたドキュメント:
- 年齢確認ガイド - 確認UIを閉じるために
Widget.ExitReviewをリッスンするガイダンスを追加 - VPCガイド - VPCウィジェットUIを閉じるために
Widget.ExitReviewをリッスンするガイダンスを追加 - CDK埋め込みフロー - ウィジェットUIを閉じるために
Widget.ExitReviewをリッスンするガイダンスを追加
すべての言語バージョン(英語、日本語、簡体字中国語、韓国語)がこの明確化で更新されました。
APIの更新
MegaWidgetOptionsでのredirectUrl
MegaWidgetOptionsスキーマに、年齢確認リクエストスキーマと一貫性のあるredirectUrlサポートが含まれるようになりました。これにより、エンドツーエンドウィジェットを使用する際にリダイレクトURLを指定できます。
更新されたスキーマ:
MegaWidgetOptionsに#/components/schemas/RedirectUrlへの参照を持つredirectUrlフィールドが含まれるようになりました
この変更は、すべてのOpenAPI仕様ファイル(英語、日本語、簡体字中国語、韓国語)で利用できます。
ドキュメントの改善
プロダクト画像の仕様
Compliance Studioのプロダクト画像の推奨アスペクト比と解像度を追加しました:
- ロゴ: 1:1(正方形)、512×512px
- バナー: 3:1(横長)、2430×810px
FAILステータスのWebhookイベントにageCategoryが含まれるようになりました
年齢データが利用可能な場合、Verification.Result WebhookイベントのFAILステータスイベントにageCategoryフィールドが含まれるように更新しました。
新機能
FAILステータスイベントでのageCategory
ageCategoryフィールドは、次の条件を満たす場合、Verification.Result WebhookイベントのFAILステータスに含まれるようになりました:
failureReasonがage-criteria-not-met- 年齢データが利用可能(
age.lowとage.highの両方が存在)
これにより、年齢基準を満たさないために検証が失敗した場合でも、ユーザーの年齢カテゴリに関するより完全な情報が提供され、明確なアクセス制御の境界を維持しながら、より優れた分析とログ記録が可能になります。
ドキュメントの更新
Verification.Resultドキュメントがこの変更を反映するように更新されました:
- フィールドテーブル: FAILステータスで
ageCategoryが存在するタイミングを明確にするために説明を更新 - 主な違いテーブル: WebhookイベントとAPIエンドポイントで
ageCategoryが存在するタイミングを明確化 - FAILステータスのフィールド存在ルール: 特定の条件で
ageCategoryを「場合によって含まれる」として表示するように更新 - 完全なフィールドマトリックス: WebhookのFAILステータスで
ageCategoryを「sometimes²」として表示するように更新 - ペイロードの例: 新しい動作を示すためにFAILステータスの例に
ageCategoryを追加 - 実装チェックリスト: FAILステータスで
ageCategoryを処理するためのガイダンスを更新 - 実装ノート: PASSとFAILの両方のステータスでの
ageCategoryの動作を明確化
重要な注意事項
- アクセス制御: FAILステータスイベントで
ageCategoryが存在する場合でも、アクセス制御の決定に決して使用しないでください。アクセスを決定するには、常にstatusフィールドを使用してください。 - 一貫性: この更新はWebhookイベントとAPIエンドポイントの応答の両方に適用されます
- 言語サポート: すべての言語バージョン(英語、日本語、簡体字中国語、韓国語)が更新されました
次のステップ
- 更新されたVerification.Resultドキュメントを確認してください
- 必要に応じて、FAILステータスイベントで
ageCategoryを処理するように統合を更新してください - 覚えておいてください: ステータスがFAILの場合、フィールドが存在する場合でも、アクセス制御に
ageCategoryを使用しないでください。分析、ログ記録、または情報提供の目的でのみ使用してください。
新しいセッションと権限ガイドおよびドキュメントの更新
セッションと権限を管理するための包括的なガイドを追加し、重要な説明を追加してコアコンセプトのドキュメントを更新しました。
新機能
新しいガイド: セッションと権限の管理
新しいクイックスタートガイドを追加しました: セッションと権限の管理。このガイドでは、次の手順を説明しています:
- Webhookとセッション比較を使用した権限変更の検出
- セッション削除と取り消しの処理
- プレイヤーへの権限変更の通知
- 権限アップグレードフローの実装
- チャレンジがセッションとどのように関連するかの理解
このガイドは、親が設定を変更したり、プレイヤーが年齢アップしたりするなど、時間の経過とともに権限の変更に対応する必要がある統合に不可欠です。
ドキュメントの更新
セッションドキュメント
セッションコンセプトページに重要な説明を追加しました:
- セッションIDの永続性: プレイヤーはプロダクトごとに正確に1つのセッションを持ちます。セッションIDは権限変更を通じて永続しますが、セッションが取り消され、同意フローが再度完了した場合は新しいセッションIDが作成されます。
- セッション削除の動作: 削除されたセッションは、エラーコード
NOT_FOUNDでHTTP 400を返します(404ではありません)。これは意図的なものです—削除されたセッションは、存在しなかったかのように扱う必要があります。 - 年齢アップの変更: 年齢アップイベントはWebhook通知をトリガーしません。これらの変更を検出するには、セッション比較を使用する必要があります。
権限ドキュメント
権限コンセプトページを次の内容で強化しました:
managedByフィールドの変更:managedByは時間の経過とともに変更される可能性があることを明確にしました(たとえば、プレイヤーが年齢アップしたときにGUARDIANからPLAYERに)。- プレイヤー管理の権限: プレイヤーが
/session/upgradeAPIを介してPLAYER管理の権限を有効にすることをリクエストすると、Challengeを作成せずに自動的に有効になります。 - 権限アップグレードのコンテンツ: 権限アップグレードのドキュメントを、より見つけやすくするために権限ページに統合しました。
変更内容
ドキュメントの統合
- 権限アップグレードコンセプトページを権限ページに統合しました。すべての参照を新しい場所に更新しました。
次のステップ
- 新しいセッションと権限の管理ガイドを確認してください
- 統合がセッション削除を正しく処理していることを確認してください(
NOT_FOUNDでHTTP 400)
これらの更新についてご質問がある場合や、統合に関するサポートが必要な場合は、サポートチームまでお気軽にお問い合わせください。
Developerロールとプロダクトアクセス制御
Compliance Studioにプロダクトレベルのアクセス制御を備えた新しいDeveloperロールを導入し、組織が異なるプロダクトとチーム間の明確な境界を維持できるようにしました。
新機能
Developerロール
Compliance Studioで新しいDeveloperロールが利用可能になりました。Developerロールを持つユーザーは、プロダクトとプロダクト開発者設定を管理できますが、明示的に割り当てられたプロダクトのみです。
主な機能:
- プロダクトレベルのアクセス制御: Developerは、組織内の特定のプロダクトにのみアクセスを制限できます
- きめ細かい権限: 各Developerロールメンバーをそれぞれのプロダクトに割り当てることができ、プロダクトレベルのアクセス制御を可能にし、組織の境界を維持します
- プロダクト管理: Developerは、割り当てられたプロダクトのプロダクトとプロダクト開発者設定のみを管理できます
メンバーアクセス管理
組織設定に新しいMember Accessメニューが追加され、OwnerとAdminがDeveloperロールを持つメンバーにプロダクトアクセスを割り当てることができるようになりました。
仕組み:
- アクセス割り当て: OwnerとAdminは、Member Accessメニューを使用して、Developerロールメンバーに特定のプロダクトを割り当てることができます
- 複数プロダクトの割り当て: 1人のDeveloperに複数のプロダクトを割り当てることができます
- 即座に有効: プロダクトアクセスの割り当ては即座に有効になります