Skip to content

Конфигурация - Получение стратегии обновления

Описание API: Получение соответствующей стратегии обновления на основе номера версии клиента

📮 Информация о запросе

URL запроса

POST https://api.upgrade.toolsetlink.com/v1/configuration/upgrade

Заголовки запроса

Название параметраОбязательныйТипПример значенияОписание
X-TimestampДаstring2025-02-17T10:34:55+08:00Время запроса в формате RFC3339
X-NonceДаstringfc812cc0b9b51e8cУникальная случайная строка (минимум 16 символов)
X-AccessKeyДаstringmui2W50H1j-OC4xD6PgQagСекретный ключ AccessKey
X-SignatureДаstring3603437250c2df51fc46426ac79d8995Подпись запроса Правила подписи
Content-TypeДаstringapplication/json

🔐 Механизм защиты от повторных атак

  1. Сервер проверяет, что разница между временными метками и временем сервера не превышает ±5 минут
  2. Сервер проверяет, существует ли уже значение Nonce (чтобы предотвратить повторные запросы)

Тело запроса

json
{
  "configurationKey": "q1hfB1VUQaK9VksTZGPU1Q",
  "versionCode": 1,
  "appointVersionCode": 0,
  "devModelKey": "stv1",
  "devKey": "LOYlLXNy7w"
}

Параметры тела запроса

Название параметраОбязательныйТипПример значенияОписание
configurationKeyДаstringq1hfB1VUQaK9VksTZGPU1QУникальный идентификатор конфигурации
versionCodeДаint1Код версии, зарегистрированный в системе
appointVersionCodeНетint2Ожидаемый код версии обновления, передайте 0 или опустите для запроса последней версии
devModelKeyНетstringstv1Уникальный идентификатор модели устройства
devKeyНетstring89c8b3d5f2a74e1bУникальный идентификатор устройства (можно использовать MAC-адрес как уникальный идентификатор)

📮 Информация о ответе

Тело успешного ответа

json
{
  "code": 200,
  "msg": "Получена новая версия",
  "data": {
    "configurationKey": "q1hfB1VUQaK9VksTZGPU1Q",
    "versionName": "v2",
    "versionCode": 2,
    "upgradeType": 1,
    "promptUpgradeContent": "Содержимое подсказки",
    "content": {
      "test": 1
    }
  }
}

Параметры тела ответа

Название параметраТипПример значенияОписание
configurationKeystringq1hfB1VUQaK9VksTZGPU1QУникальный идентификатор конфигурации
versionNamestringv1Название версии
versionCodeint1Код версии
upgradeTypeint1Метод обновления: 1: Обновление с подтверждением; 2: Тихое обновление; 3: Принудительное обновление
promptUpgradeContentstringОптимизированный кодСодержимое описания обновления с подтверждением
contentstringСодержимое - это JSON, настроенный в системе

Типичное тело ответа об ошибке

json
{
  "code": 404001,
  "msg": "Доступная версия не получена",
  "docs": "Соответствующая версия приложения не найдена, пожалуйста, подтвердите, была ли она правильно создана в системе. Пожалуйста, обратитесь к документации: https://upgrade.toolsetlink.com/ru/upgrade/recommend/url/app-version.html",
  "data": null
}

📊 Коды состояния

HTTP-код состоянияcodeОписание сценарияРешение
2000Запрос успешен, в настоящее время установлена последняя версия
200200Запрос успешен, получена стратегия обновления версии
400400001Недопустимый запрос
400400002Отсутствующий параметр
400400003Недопустимый параметр
400400004Недопустимый заголовок
400400005Недопустимое тело
401401001Неудачная аутентификация
401401002Неудачная проверка подписи
404404001Ресурс не найден
404404002Запись не найдена
404404003Метод обработки не найден
404404004Запрос не найден
500500001Внутренняя ошибка сервераПожалуйста, свяжитесь с нами Связаться с нами
500500002Ошибка валидации данных сервераПожалуйста, свяжитесь с нами Связаться с нами

toolsetlink@163.com