Skip to content

Delete account

Requests deletion of the Player ID linked to a specific user account.

The Account Deletion API operates through Server-to-Server communication, where the app server calls the Hive authentication server directly. When the request succeeds, the token for the Player ID and all linked IdP (Identity Provider) information are deleted. After deletion, automatic login and IdP login can no longer be performed with that account.

The APIs provided by the Account Deletion feature are as follows.

API endpoint Description
POST /v2/game/player/delete Delete account (while logged in)
POST /v2/game/player/delete-project Delete account (without login)


Delete account (while logged in)

Use this API when a user deletes their own account while logged in to the app.

Request URL

Production URL https://auth.qpyou.cn/v2/game/player/delete
Sandbox URL https://sandbox-auth.qpyou.cn/v2/game/player/delete
HTTP Method POST
Content-Type application/json
Data Format JSON

Request header

Field name Description Type Required
Authorization User token returned after a successful app client login (PlayerInfo.token) String Y
X-Access-Token User token issued after an app client login
OAuth 2.0 access token for player identity verification
String Y
ISCRYPT Whether data is encrypted (0 = not encrypted; always pass 0) Integer Y

Request body

Field name Description Type Required
appid App ID String Y
did Device ID Integer Y
player_id Player ID BigInteger Y

Response body

Field name Description Type
result_code Response code Details Integer
result_msg Result message String
token_validation JWT validation result (JWT validation error) Object
token_validation.result_code JWT validation result code Integer
token_validation.result_msg JWT validation result message String

Response code

Code value Description
0 Success
2499 JWT validation failed (see token_validation)
5000 Internal server error
7000 Invalid token
7001 No token value in the header

Request example

{
    "appid": "com.com2us.hivesdk.normal.freefull.apple.global.ios.universal",
    "did": 225697886,
    "player_id": 10000000445
}

Response example

Success

{
    "result_code": 0,
    "result_msg": "SUCCESS",
    "token_validation": {
        "result_code": 0,
        "result_msg": "success"
    }
}

JWT validation failure

{
    "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."
    }
}


Delete account (without login)

Use this API when a user deletes their account while not logged in. Authentication uses an OAuth 2.0 access token (Project JWT) and a session token.

Request URL

Production URL https://auth.qpyou.cn/v2/game/player/delete-project
Sandbox URL https://sandbox-auth.qpyou.cn/v2/game/player/delete-project
HTTP Method POST
Content-Type application/json
Data Format JSON

Request header

Field name Description Type Required
Authorization User token returned after a successful app client login (PlayerInfo.token) String Y
X-Access-Token OAuth 2.0 access token for app server authentication
See issue OAuth token.
String Y
ISCRYPT Whether data is encrypted (0 = not encrypted; always pass 0) Integer Y

Request body

Field name Description Type Required
appid App ID String Y
player_id Player ID BigInteger Y
did Device ID Integer Y

Response body

Field name Description Type
result_code Response code Details Integer
result_msg Result message String
token_validation JWT validation result (JWT validation error) Object
token_validation.result_code JWT validation result code Integer
token_validation.result_msg JWT validation result message String

Response code

Code value Description
0 Success
2499 JWT validation failed (see token_validation)
5000 Internal server error
7000 Invalid token
7001 No token value in the header

Request example

{
    "appid": "com.com2us.hivesdk.normal.freefull.apple.global.ios.universal",
    "player_id": 100000001,
    "did": 225697886
}

Response example

Success

{
    "result_code": 0,
    "result_msg": "SUCCESS",
    "token_validation": {
        "result_code": 0,
        "result_msg": "success"
    }
}

JWT validation failure

{
    "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

When JWT validation fails, you can check detailed error information through the token_validation field. For details, see JWT validation error codes.