升级会话
将玩家的会话升级为活动会话,并在所申请的权限需要监护人同意时创建挑战。 可通过 `sessionId`、`kuid` 或两者同时来标识会话;同时提供两者会将该用户关联到既有会话。两者都不提供会导致请求无效。 `options` 用于调整本次调用所创建挑战的年龄保证,`materialChange` 用于指定为取得同意而展示的法律文件。设置 `materialChange.acceptanceDeadline` 会使本次升级带有截止时间:系统会向监护人发送批准请求链接,且必须在该时间点之前完成批准。任何位于将来的 UTC 时间戳都会按所提供的值精确生效,没有最短时限也不做取整,因此几分钟后的截止时间就是几分钟后。省略该字段则展示文件且不设截止时间。 当文件发生变化需要重新取得同意时,请设置 `priorChallengeId`。新挑战会取代处于待处理或进行中的挑战,并在其文件基础上追加(仅追加),任何较早的链接都会指向最新的挑战。 返回挑战中的一次性密码会过期。请在准备展示时再调用 `/challenge/generate-otp`,并在挑战进入进行中状态之前定期重新生成。
Authorization
api-key In: header
Request Body
application/json
升级会话请求
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://example.com/session/upgrade" \ -H "Content-Type: application/json" \ -d '{ "requestedPermissions": [ { "name": "public-profile" }, { "name": "voice-chat" }, { "name": "online-status" } ] }'{ "sessionId": "b1a6482d-5242-4b4a-aa88-3fa52595a672", "kuid": "12b9fa0e-6d6d-4903-a1fc-f2233027b71d", "ageStatus": "LEGAL_ADULT", "ageCategory": "adult", "etag": "e889efb9e8a985308e82bed78c5aef7f37f50cf36b7337bf654980d0bab7a574", "status": "ACTIVE", "dateOfBirth": "2005-04-15", "jurisdiction": "US-CA", "managedBy": "PLAYER", "permissions": [ { "name": "text-chat-public", "enabled": false, "managedBy": "GUARDIAN" }, { "name": "text-chat-private", "enabled": true, "managedBy": "PLAYER" }, { "name": "forums", "enabled": false, "managedBy": "PROHIBITED" } ], "allowances": [ { "name": "3516-7b2e", "numericalValue": 5, "type": "numerical" }, { "name": "63d3-90ac", "selectionValue": "733c-ca11", "type": "selection" } ]}{ "error": "NOT_FOUND", "errorMessage": "Session not found"}