跳到主要内容

浏览器和设备兼容性

我们已在文档中新增 浏览器和设备兼容性 页面,方便您快速查看我们年龄验证流程支持的浏览器和设备。

新功能

浏览器和设备兼容性

新页面列出桌面端和移动端的最低浏览器版本,以及嵌入式浏览器(iOS 的 ASWebAuthenticationSession、Android 的 Chrome Custom Tabs)的要求。它将我们各验证提供商的兼容性要求整合为单一参考。

新文档

Account System Product

我们已发布 Account System Product(账户系统产品)。该能力允许您组织的中央账户或平台产品使用单一 API 密钥和可选请求头,代表组织内其他产品创建认证挑战和会话。

新功能

Account System Product

在 Compliance Studio 中将某产品启用为 Account System Product 后,您可以通过在请求中携带 Kid-Target-Product-Id 头(值为目标产品 ID),代表同一组织内其他(非账户系统)产品调用特定 k-ID API。您使用 Account System Product 的 API 密钥即可,无需按目标产品管理或轮换密钥。

支持的端点:

家长仅会看到目标产品的配置(通知、权限、品牌)。账户系统产品和目标产品都会收到每个事件的 Webhook,其中包含 onBehalfOfProductIdinitiatedByProductId,便于您区分跨产品流程。

Account System Product 可与多产品批准配合使用:您可以将 Account System Product 设为目标产品的必备产品,这样家长在一次流程中即可同时批准两者。

文档

附加法律链接与 Check age gate 的 options

我们已补充 附加法律链接(Developer Details)及 Check age gate API 的 options 参数说明,便于在同意流程中展示平台相关法律文档(如 Xbox、PlayStation、Steam)。

新功能

附加法律链接(Developer Details)

在 Compliance Studio 的产品 Developer Details 标签页中,可添加在同意流程中显示的可选 附加法律链接

  • 标题链接:本地化显示标题与 URL(与主法律文档相同的语言选项)。
  • 变体 ID:调用 Check age gate API 时使用的标识符(如 xbox-tosplaystation-privacy-policy)。当始终显示为关时必填。
  • 始终显示(默认)时,该链接在同意流程中始终显示。时,仅当您的游戏在 options 中传入对应变体 ID 调用年龄验证 API 时才显示。

当游戏在多个平台分发且各平台需使用不同法律文档 URL 时可使用此功能。

Check age gate API — options 参数

POST /api/v1/age-gate/check 的请求体现支持可选的 options 对象:

  • termsOfServiceDocument:服务条款变体 ID(须与已配置的附加法律链接一致)。
  • privacyPolicyDocument:隐私政策变体 ID(须与已配置的附加法律链接一致)。

当创建挑战时,同意界面将显示所请求的法律链接,而非产品默认的 Privacy Policy 与 Terms of Service。

文档

验证 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 重定向 URL 支持

我们已为 Age Gate Widget 端点添加了 redirectUrl 作为可选参数。

新功能

Age Gate Widget API 更新

/widget/generate-age-gate-url 端点现在支持在 options 对象中使用可选的 redirectUrl 参数。这允许您指定在 Age Gate Widget 完成后重定向到的 URL,类似于端到端 Widget 端点。

redirectUrl 参数支持 HTTP/HTTPS URL 或具有自定义协议方案的移动端深度链接。

更新的 API

验证文档更新

我们已更新验证文档,改进了方法字段描述并澄清了指导。

新功能

Verification Result 文档

更新了 Verification.Result Webhook 文档:

  • ageCategory 指导: 明确了 PASS 状态时 ageCategory 始终存在,应将其用于访问控制决策,而不是使用原始年龄值
  • 方法字段更新:
    • 从方法字段列表中移除了 self-confirmationemail-confirmation
    • 更新了 age-estimation-scan 的描述,表明它是返回年龄范围的面部年龄估计扫描(无 DOB)

更新的文档

Widget.ExitReview 澄清和 API 更新

我们已澄清何时关闭年龄验证和 VPC 流程的窗口小部件 UI,并在 MegaWidgetOptions 架构中添加了 redirectUrl 支持。

新功能

Widget.ExitReview 澄清

我们已更新文档,明确 Widget.ExitReview 是应确定何时关闭年龄验证和 VPC 流程 UI 的信号。

更新的文档:

  • 年龄验证指南 - 添加了有关监听 Widget.ExitReview 以关闭验证 UI 的指导
  • VPC 指南 - 添加了有关监听 Widget.ExitReview 以关闭 VPC 窗口小部件 UI 的指导
  • CDK 嵌入式流程 - 添加了有关监听 Widget.ExitReview 以关闭窗口小部件 UI 的指导

所有语言版本(英语、日语、简体中文和韩语)均已更新此澄清。

API 更新

MegaWidgetOptions 中的 redirectUrl

MegaWidgetOptions 架构现在包含 redirectUrl 支持,与年龄验证请求架构一致。这允许您在使用端到端窗口小部件时指定重定向 URL。

更新的架构:

  • MegaWidgetOptions 现在包含对 #/components/schemas/RedirectUrl 的引用的 redirectUrl 字段

此更改在所有 OpenAPI 规范文件(英语、日语、简体中文和韩语)中可用。

文档改进

产品图片规格

为 Compliance Studio 的产品图片添加了推荐的宽高比和分辨率:

  • Logo: 1:1(正方形),512×512px
  • Banner: 3:1(横向),2430×810px

FAIL状态Webhook事件现在包含ageCategory

我们已更新Verification.Result Webhook事件,当年龄数据可用时,在FAIL状态事件中包含ageCategory字段。

新功能

FAIL状态事件中的ageCategory

ageCategory字段现在包含在Verification.Result Webhook事件的FAIL状态中,当满足以下条件时:

  • failureReasonage-criteria-not-met
  • 年龄数据可用(age.lowage.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 持久性:玩家每个产品只有一个会话。会话 ID 在权限更改期间保持不变,但如果会话被撤销并再次完成同意流程,则会创建新的会话 ID。
  • 会话删除行为:已删除的会话返回 HTTP 400,错误代码为 NOT_FOUND(不是 404)。这是有意的—已删除的会话应被视为从未存在过。
  • 年龄升级更改:年龄升级事件不会触发 Webhook 通知。您必须使用会话比较来检测这些更改。

权限文档

权限概念页面已增强,包含:

  • managedBy 字段更改:明确说明 managedBy 可能随时间变化(例如,当玩家年龄增长时从 GUARDIAN 变为 PLAYER)。
  • 玩家管理的权限:当玩家通过 /session/upgrade API 请求启用 PLAYER 管理的权限时,它会自动启用而不会创建挑战。
  • 权限升级内容:权限升级文档已合并到权限页面,以便更好地发现。

更改内容

合并的文档

  • 权限升级概念页面已合并到权限页面。所有引用已更新为指向新位置。

后续步骤

  • 查看新的管理会话和权限指南
  • 确保您的集成正确处理会话删除(HTTP 400,错误代码为 NOT_FOUND

如果您对这些更新有任何疑问或需要集成方面的帮助,请随时联系我们的支持团队。

Developer 角色和产品访问控制

我们在 Compliance Studio 中引入了新的Developer角色,具有产品级访问控制功能,使组织能够在不同产品和团队之间保持清晰的界限。

新功能

Developer 角色

Compliance Studio 现在提供新的Developer角色。具有 Developer 角色的用户可以管理产品和产品开发者设置,但仅限于已明确分配给他们的产品。

主要功能:

  • 产品级访问控制:Developer 可以限制为仅访问组织内的特定产品
  • 细粒度权限:每个 Developer 角色成员可以分配给各自的产品,从而实现产品级访问控制并维护组织边界
  • 产品管理:Developer 只能管理分配给他们的产品的产品和产品开发者设置

成员访问管理

组织设置中新增了Member Access菜单,允许 Owner 和 Admin 为具有 Developer 角色的成员分配产品访问权限。

工作原理:

  • 访问分配:Owner 和 Admin 可以使用 Member Access 菜单将特定产品分配给 Developer 角色成员
  • 多产品分配:您可以将多个产品分配给单个 Developer
  • 立即生效:产品访问分配立即生效

更新的文档