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