메인 콘텐츠로 이동

API 시도해보기

k-ID API를 호출하는 코드를 작성하기 전에 API 키와 API 문서를 사용하여 직접 테스트할 수 있습니다. 개발자 포털에서 테스트 API 키를 가져와서 /products/[productId]/developer 경로의 선택된 제품의 개발자 설정 페이지로 이동하세요.

Publisher Dashboard

테스트 모드 vs 라이브 모드

테스트 모드

테스트 모드 Test Mode는 개발자가 실제 데이터나 프로덕션 시스템에 영향을 주지 않고 통합을 테스트할 수 있게 해줍니다. 테스트 모드 API 키를 사용할 때, 요청은 https://game-api.test.k-id.com의 테스트 환경으로 전송됩니다. 이 환경은 라이브 시스템을 시뮬레이션하도록 설계되었지만 모의 또는 샌드박스 데이터로 작동합니다.

라이브 모드

라이브 모드 Live Mode는 프로덕션에 사용됩니다. 라이브 모드 API 키를 사용할 때, 요청은 https://game-api.k-id.com의 프로덕션 환경으로 전송됩니다. 이 환경은 실제 데이터를 처리하고 라이브 시스템과 상호작용합니다.

참고: 프로덕션 데이터에 의도하지 않은 영향을 피하기 위해 항상 의도한 모드에 대해 올바른 API 키와 엔드포인트를 사용하고 있는지 확인하세요.

API 설정

API 문서 페이지에서 테스트 서버가 선택되었는지 확인하세요.

Select Server

Authorize 버튼을 찾아 클릭하여 개발자 대시보드의 k-ID 제품에서 API 키를 입력하세요.

Dialog

이제 /age-gate/check API 섹션을 열고 Try it out 버튼을 클릭하세요

Try It Out

이제 Execute 버튼을 클릭하세요

Try It Out

아래 섹션에서 다음을 사용한 /age-gate/check 호출의 성공적인 결과를 볼 수 있습니다

{
"jurisdiction": "US-CA",
"dateOfBirth": "2005-04-15"
}

를 POST 본문으로 사용합니다.

Try It Out Result

이제 k-ID에 대한 성공적인 호출을 했습니다!

가족 포털 시도해보기

가족 포털에서 부모 경험을 보려면 동의 도전을 생성해야 합니다. 이를 위해 Execute 버튼을 사용하여 /age-gate/check에 다시 호출을 하되, 이번에는 US 관할권에서 디지털 동의 나이 미만의 아이 나이를 사용하세요.

다음을 사용하세요

{
"jurisdiction": "US-CA",
"dateOfBirth": "2015-04-15"
}

이는 다음과 같은 응답을 생성합니다:

{
"challenge": {
"challengeId": "<guid>",
"childLiteAccessEnabled": false,
"oneTimePassword": "<one time password>",
"type": "CHALLENGE_PARENTAL_CONSENT",
"url": "https://family.k-id.com/authorize?otp=<one time password>"
},
"status": "CHALLENGE"
}

그런 다음 브라우저에서 url 필드의 URL로 이동할 수 있습니다. 이메일 주소를 요청받게 되고, 게임 플레이에 대한 동의를 부여할 수 있는 가족 포털로의 링크가 포함된 이메일을 받게 됩니다. 브라우저에서 동의 플로우를 완료한 후, 위의 challengeId 필드와 함께 challenge/get-status API를 호출할 수 있습니다. 다음과 같은 응답을 받게 됩니다:

{
"approverEmail": "email@example.com",
"sessionId": "<guid>",
"status": "PASS"
}

이제 k-ID 세션을 성공적으로 생성했습니다! /session/get에 대한 매개변수로 sessionId 필드를 제공하여 볼 수 있습니다.

{
"ageStatus": "DIGITAL_MINOR",
"dateOfBirth": "2015-04-15",
"etag": "<guid>",
"jurisdiction": "US",
"permissions": [],
"sessionId": "<guid>",
"kuid": "<guid>",
"status": "ACTIVE"
}