Crossplay Launcher Remote Launch API
Overview¶
The cross-play launcher remote execution API provides the ability to query the list of running PCs and remotely execute on a specific PC in case the game unintentionally closes while running the game with the cross-play launcher.
It consists of the PC List Retrieval API and the PC Remote Execution API.
Prerequisites¶
- Windows version of Hive SDK v4.24.4.0 or higher
- Crossplay Launcher 1.0.16.0 or higher
Basic operation flow¶
-
Set the remote execution usage for each game
Note
Currently, only the manual remote execution usage setting function is supported, and the automatic setting function will be provided later.
- Launch games on Windows PC through the crossplay launcher
- Call the PC list query API in the game to retrieve the list of PCs running the crossplay launcher
- In the query results, call the PC remote execution API with the information of the selected PC from the PC list
(The external auto-login token is passed to the selected PC.) - Reconnect to the game and proceed with auto-login through the crossplay launcher using the external auto-login token
PC list retrieval API¶
This is an API to retrieve the list of PCs that are currently running through the crossplay launcher and are capable of remote execution.
Note
- You can verify through the Token Verification API, and only valid requests can retrieve the PC list.
Request URL and conditions¶
Division | URL and Conditions |
---|---|
Commercial URL | https://api-launcherplay.withhive.com/api/pc/list |
SANDBOX URL | https://sandbox-api-launcherplay.withhive.com/api/pc/list |
HTTP Method | POST |
Data Format | JSON |
Request header¶
Field Name | Description | Type | Required |
---|---|---|---|
Content-Type | application/json | String | Y |
Authorization | Bearer token key (Token key returned after successful login) | String | Y |
Request header sample¶
Request body¶
Field Name | Description | Type | Required |
---|---|---|---|
appId | AppID of the logged-in game | String | Y |
playerId | V4 authenticated PlayerID returned after successful login | String | Y |
did | DID returned after successful login | String | Y |
Request body sample¶
{
"appId" : "com.com2us.hivesdk.normal.freefull.google.global.android.common",
"playerId" : "20000023036",
"did" : "304166094"
}
Response body¶
Field Name | Description | Type | |
---|---|---|---|
code | Response result code | Integer | |
msg | Response result message | String | |
data | List of available PCs | Array | |
ㄴ | pc_name | PC Name | String |
ㄴ | did | Device Information | String |
ㄴ | date | Last login date and time (UTC, YYYYmmddHHiiss) | String |
Response body sample¶
{
"code": 100,
"msg": "success",
"data": [
{
"pc_name" : "pc1",
"did" : "304162817",
"date": "20250210144909"
},
{
"pc_name" : "pc2",
"did" : "304166094",
"date": "20250210144923"
},
...
]
}
Response code specification¶
code | msg | description |
---|---|---|
100 | success | success |
101 | success(not exist) | success └ However, since there is currently no list available for remote execution, data will not be returned |
400 | fail(Authorization parameter error) | Invalid header parameter └ Authorization |
401 | fail(method error) | Request with invalid HTTP METHOD |
402 | fail(request parameter error) | Request parameter does not exist |
403 | fail(appId parameter error) | Invalid parameter └ appId |
404 | fail(playerId parameter error) | Invalid parameter └ playerId |
405 | fail(did parameter error) | Invalid parameter └ did |
500 | fail(hiveCertificationKey error) | Failed to retrieve game information (Hive certification key) |
501 | fail(####) | Other certification server verification in progress, error #### Occurred |
502 | fail(####) | Other PC list retrieval in progress, error #### Occurred |
503 | fail(####) | Error #### Occurred while accessing redis for PC list retrieval |
900 | fail(curl error - ####) | Curl error occurred during API call while verifying certification server (error #### Occurred) |
901 | fail(api error - ####) | Certification server verification failed (error #### Occurred) |
PC remote execution API¶
This is an API that delivers token information to remotely execute on the selected PC from the retrieved PC list after requesting the PC list query API.
Note
- This API delivers the external auto-login token to the selected PC, and the actual remote execution (game access and auto-login) operates through the crossplay launcher.
- It can only be used if verified through the Token Verification API and deemed a valid request.
Request URL and conditions¶
Division | URL and Conditions |
---|---|
Commercial URL | https://api-launcherplay.withhive.com/api/pc/remoteplay |
SANDBOX URL | https://sandbox-api-launcherplay.withhive.com/api/pc/remoteplay |
HTTP Method | POST |
Data Format | JSON |
Request header¶
Field Name | Description | Type | Required |
---|---|---|---|
Content-Type | application/json | String | Y |
Authorization | Bearer token key (Token key returned after successful login) | String | Y |
Request header sample¶
Request body¶
Field Name | Description | Type | Required |
---|---|---|---|
appId | The AppID of the logged-in game | String | Y |
playerId | The V4 authentication PlayerID returned after successful login | String | Y |
did | The DID returned after successful login | String | Y |
idpUserId | The member ID provided by the IDP after successful login | String | Y |
idpIndex | IDP INDEX information 1: HIVE 2: Facebook 3: GOOGLE 9: APPLE | Integer | Y |
selected_did | The did of the selected PC from the /api/pc/list query result | String | Y |
selected_pcName | The pc_name of the selected PC from the /api/pc/list query result | String | Y |
Request body sample¶
{
"appId" : "com.com2us.hivesdk.normal.freefull.google.global.android.common",
"playerId" : "20000023036",
"did" : "304166094",
"idpUserId" : "68261324",
"idpIndex" : 1,
"selected_did" : "304162817",
"selected_pcName" : "pc1"
}
Response body¶
Field Name | Description | Type |
---|---|---|
code | Response result code | Integer |
msg | Response result message | String |
Response body sample¶
Response code specification¶
code | msg | description |
---|---|---|
100 | success | success |
400 | fail(Authorization parameter error) | Invalid header parameter └ Authorization |
401 | fail(request parameter error) | Request parameter does not exist |
402 | fail(appId parameter error) | Invalid parameter └ appId |
403 | fail(playerId parameter error) | Invalid parameter └ playerId |
404 | fail(did parameter error) | Invalid parameter └ did |
405 | fail(idpUserId parameter error) | Invalid parameter └ idpUserId |
406 | fail(idpIndex parameter error) | Invalid parameter └ idpIndex |
407 | fail(selected_did parameter error) | Invalid parameter └ selected_did |
408 | fail(selected_pcName parameter error) | Invalid parameter └ selected_pcName |
409 | fail(method error) | Request with invalid HTTP METHOD |
500 | fail(hiveCertificationKey error) | Failed to retrieve game information (Hive certification key) |
501 | fail(####) | An error occurred during certificate server verification, #### Error |
502 | fail(current not exist or not available) | Failed because the selected PC information is not currently connected |
503 | fail(####) | An error occurred while accessing Redis to check the selected PC information, #### Error |
504 | fail(more than 2 exist) | Failed if there are more than two connections corresponding to the selected PC information └ Note: Occurs when all three of playerId, did, and PC name are the same |
505 | fail(####) | An error occurred during the verification of the selected PC information, #### Error |
506 | fail(####) | An error occurred while obtaining external auto-login token-related information (enc_idp and web_idp_token), #### Error |
507 | fail(publish error) | Failed to deliver the external auto-login token to the selected PC ᄂ Note: Occurs when the number of PCs receiving the message is less than 1 (redis publish result) |
508 | fail(####) | An error occurred while accessing Redis to deliver the external auto-login token to the selected PC, #### Error |
509 | fail(####) | An error occurred while delivering the external auto-login token to the selected PC, #### Error |
900 | fail(curl error - ####) | An error occurred during certificate server verification, curl error occurred during API call (#### Error occurred) |
901 | fail(api error - ####) | Certificate server verification failed (#### Error occurred) |
902 | fail(curl error - ####) | An error occurred while obtaining enc_idp value for external auto-login token, curl error occurred during API call (#### Error occurred) |
903 | fail(api error - ####) | Failed to obtain enc_idp value for external auto-login token (#### Error occurred) |
904 | fail(curl error - ####) | An error occurred while obtaining external auto-login token (web_idp_token), curl error occurred during API call (#### Error occurred) |
905 | fail(api error - ####) | Failed to obtain external auto-login token (web_idp_token) (#### Error occurred) |