세션 업그레이드
플레이어의 세션을 활성 세션으로 업그레이드하고, 요청된 권한에 보호자 동의가 필요한 경우 챌린지를 생성합니다. 세션은 `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"}관할권 업데이트 POST
기존 세션을 새 관할권으로 이동하고 해당 관할권의 규칙에 따라 다시 평가합니다. 응답은 업데이트된 세션이며, 새 관할권이 플레이어가 아직 받지 못한 보호자 승인을 요구하는 경우에는 챌린지가 반환됩니다.
보호자 초대 취소 POST
보호자가 완료하기 전에 진행 중인 보호자 초대 챌린지를 취소합니다. 보호자가 인증을 진행하는 중에 플레이어가 애플리케이션에서 대기 중인 초대를 취소한 경우에 사용합니다. 취소되면 챌린지는 `failureReason: "cancelled-by-initiator"`와 함께 FAIL로 전환되며, 호스팅 위젯을 보고 있던 보호자에게는 "초대가 취소되었습니다" 상태가 표시됩니다. 이 API로 취소할 수 있는 것은 `CHALLENGE_PARENT_INVITE` 챌린지뿐입니다.