Endpoints会话

升级会话

将玩家的会话升级为活动会话,并在所申请的权限需要监护人同意时创建挑战。 可通过 `sessionId`、`kuid` 或两者同时来标识会话;同时提供两者会将该用户关联到既有会话。两者都不提供会导致请求无效。 `options` 用于调整本次调用所创建挑战的年龄保证,`materialChange` 用于指定为取得同意而展示的法律文件。设置 `materialChange.acceptanceDeadline` 会使本次升级带有截止时间:系统会向监护人发送批准请求链接,且必须在该时间点之前完成批准。任何位于将来的 UTC 时间戳都会按所提供的值精确生效,没有最短时限也不做取整,因此几分钟后的截止时间就是几分钟后。省略该字段则展示文件且不设截止时间。 当文件发生变化需要重新取得同意时,请设置 `priorChallengeId`。新挑战会取代处于待处理或进行中的挑战,并在其文件基础上追加(仅追加),任何较早的链接都会指向最新的挑战。 返回挑战中的一次性密码会过期。请在准备展示时再调用 `/challenge/generate-otp`,并在挑战进入进行中状态之前定期重新生成。

POST
/session/upgrade
AuthorizationBearer <token>

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"    }  ]}