File Application Get Upgrade Strategy
API Description: Get corresponding upgrade strategy based on client version number
📮 Request Information
Request URL
POST https://api.upgrade.toolsetlink.com/v1/file/upgrade
Request Headers
| Parameter Name | Required | Type | Example Value | Description |
|---|---|---|---|---|
| X-Timestamp | Yes | string | 2025-02-17T10:34:55+08:00 | Request time in RFC3339 format |
| X-Nonce | Yes | string | fc812cc0b9b51e8c | Unique random string (at least 16 characters) |
| X-AccessKey | Yes | string | mui2W50H1j-OC4xD6PgQag | Access Key |
| X-Signature | Yes | string | 3603437250c2df51fc46426ac79d8995 | Request signature Signature Rules |
| Content-Type | Yes | string | application/json |
🔐 Replay Attack Prevention Mechanism
- Server validates timestamp difference with server time within ±5 minutes
- Server checks if Nonce value already exists (prevents duplicate requests)
Request Body
json
{
"fileKey": "LOYlLXNy7wV3ySuh0XgtSg",
"versionCode": 1,
"appointVersionCode": 0,
"devModelKey": "stv1",
"devKey": "LOYlLXNy7w"
}Request Body Parameters
| Parameter Name | Required | Type | Example Value | Description |
|---|---|---|---|---|
| fileKey | Yes | string | LOYlLXNy7wV3ySuh0XgtSg | File application unique identifier |
| versionCode | Yes | int | 1 | Version number recorded in the system |
| appointVersionCode | No | int | 0 | Expected upgrade version number, pass 0 or omit to request latest version |
| devModelKey | No | string | stv1 | Device model unique identifier |
| devKey | No | string | LOYlLXNy7w | Device unique identifier (can use MAC as unique identifier) |
📮 Response Information
Success Response Body
json
{
"code": 200,
"msg": "New version obtained",
"data": {
"fileKey": "LOYlLXNy7wV3ySuh0XgtSg",
"versionName": "v2",
"versionCode": 2,
"urlPath": "http://file.com/2.exe",
"upgradeType": 1,
"promptUpgradeContent": "Prompt content"
}
}Response Body Parameters
| Parameter Name | Type | Example Value | Description |
|---|---|---|---|
| fileKey | string | LOYlLXNy7wV3ySuh0XgtSg | File application unique identifier |
| versionName | string | v1 | Version name |
| versionCode | int | 1 | Version number |
| urlPath | string | http://file.com/2.exe | File download address |
| upgradeType | int | 1 | Upgrade method: 1: Prompt upgrade; 2: Silent upgrade; 3: Force upgrade |
| promptUpgradeContent | string | Prompt content | Prompt upgrade description content |
Typical Error Response Body
json
{
"code": 404001,
"msg": "No available version found",
"docs": "No corresponding application version found, please confirm if it has been correctly created in the system. Please refer to documentation: http://upgrade.toolsetlink.com/upgrade/recommend/file/app-version.html",
"data": null
}📊 Status Codes
| HTTP Status | Code | Scenario Description | Solution |
|---|---|---|---|
| 200 | 0 | Request successful, already latest version | |
| 200 | 200 | Request successful, obtained version upgrade strategy | |
| 400 | 400001 | Illegal request | |
| 400 | 400002 | Missing parameters | |
| 400 | 400003 | Invalid parameters | |
| 400 | 400004 | Invalid headers | |
| 400 | 400005 | Invalid body | |
| 401 | 401001 | Authentication failed | |
| 401 | 401002 | Signature verification failed | |
| 404 | 404001 | Resource not found | |
| 404 | 404002 | Record not found | |
| 404 | 404003 | Processing method not found | |
| 404 | 404004 | Request not found | |
| 429 | 429001 | Application task strategy request rate limit | Current upgrade task configuration request rate limit policy has been reached, please try again later. |
| 500 | 500001 | Server internal error | Contact us Contact Us |
| 500 | 500002 | Server internal data validation failed | Contact us Contact Us |