콘텐츠로 이동

커스텀 인증키 발급

앱에서 커스텀 IdP(Identity Provider)를 연동할 때 필요한 인증 키를 발급받습니다.

'커스텀 인증키 발급' API는 앱 서버에서 Hive 인증 서버로 직접 호출하는 Server-to-Server 통신 방식으로 동작하며, 호출 성공 시 응답의 data.custom_auth_key 필드에 커스텀 인증 키가 반환됩니다. 이 키를 사용하여 IdP 신규 연동 또는 Player ID에 IdP를 연동할 수 있습니다.


Request URL

상용 URL https://auth.qpyou.cn/v2/game/customauth/get-key
Sandbox URL https://sandbox-auth.qpyou.cn/v2/game/customauth/get-key
HTTP Method POST
Content-Type application/json
Data Format JSON


Request header

필드명 설명 타입 필수여부
X-Access-Token 게임 서버 인증을 위한 OAuth 2.0 Access Token
(OAuth Token 발급하기 참고)
String Y
ISCRYPT 데이터 암호화 여부 (0= 암호화 안 함) (무조건 0으로 전달) Integer Y


Request body

필드명 설명 타입 필수여부
appid App ID String Y
idp_id idp의 string 값 String Y
idp_user_id idp에서 주는 사용자 ID 값 String Y
auth_type 커스텀 인증 키 용도
SIGNINIDP: IdP 신규 연동 및 인증
CONNECT: Player ID에 IdP 연동
String Y
player_id 사용자 Player ID BigInteger N (auth_typeCONNECT로 설정하여 API 호출 시에는 필수로 입력해야 함)
Note

필드 중 idp_id 값은 아래 예제와 같이 지정된 string 형식으로 작성해야 합니다.

  • CUSTOM_FIREBASE
  • CUSTOM_FACEBOOK
  • CUSTOM_GOOGLE
  • CUSTOM_SIGNIN_APPLE
  • CUSTOM_TWITTER
  • CUSTOM_NAVER
  • CUSTOM_GAME


Response body

필드명 설명 타입
result_code 응답 코드 자세히 Integer
result_msg 응답 메시지 String
token_validation JWT 검증 결과 (JWT 검증 에러) Object
token_validation.result_code JWT 검증 결과 코드 Integer
token_validation.result_msg JWT 검증 결과 메시지 String
data 응답 데이터 Object
data.custom_auth_key 커스텀 인증 키 String

응답 코드

코드값 설명
0 성공
1005 미지원 auth_type
2499 JWT 검증 실패 (token_validation 참고)
4200 미지원 IdP


Request example

{
    "appid": "com.com2us.hivesdk.normal.freefull.apple.global.ios.universal",
    "idp_id": "CUSTOM_TWITTER",
    "idp_user_id": "1204273895139753984",
    "auth_type": "SIGNINIDP",
    "player_id": 10012038880
}


Response example

성공

{
    "result_code": 0,
    "result_msg": "SUCCESS",
    "token_validation": {
        "result_code": 0,
        "result_msg": "success"
    },
    "data": {
        "custom_auth_key": "f28ac8415716f438b9c972e3706c0dab"
    }
}

JWT 검증 실패

{
    "result_code": 2499,
    "result_msg": "JWT validation failed. See token_validation for details.",
    "token_validation": {
        "result_code": 2408,
        "result_msg": "The access token is expired. Please refresh your token."
    }
}
Note

JWT 검증 실패 시, token_validation 필드를 통해 상세한 에러 정보를 확인할 수 있습니다. 자세한 내용은 JWT 검증 에러 코드를 참고하세요.