Установка и использование платформы

REST API: работа с лицензиями ноды

https://img.shields.io/badge/auth-required-orange.svg

Для работы с лицензиями блокчейн-платформы Waves Enterprise предусмотрена группа методов licenses:

GET /licenses

Метод возвращает информацию о всех загруженных лицензиях.

В ответе для каждой лицензии поступает набор данных license, в котором содержатся параметры, указанные в файле лицензии, полученном от Waves Enterprise.

Пример ответа для одной лицензии:

Ответ GET /licenses:
[
  {
    "license": {
      "version": 1,
      "id": "a3d0d17e-eb05-45ac-906c-da847a9d726d",
      "issued_at": "2021-01-28T15:39:59.456Z",
      "node_owner_address": "3JNFkQ2cVu7ndEHLCs9A5HT63jSi1TV3mWK",
      "valid_after": "2021-01-29",
      "valid_before": "2022-11-20",
      "features": [
        "all_inclusive"
      ]
    },
    "signer_public_key": "p9HrAcGytSBxixJnQXQ87SNXPoXTdnwRzo4FMFvvbNSPzCToqdpJrcgFP6wxmsG23wBfYzcth",
    "signature": "jNjwCXdMPxmdaibXtjYSd8WocFinXKNsrTdPkbWrPTkQstswBp9SHFe",
    "signer_id": "2WDmdaibXtjYSd8WocFinX"
  }
]

GET /licenses/status

Метод возвращает статус активации лицензии ноды.

В ответе метода поступают следующие данные:

  • status - статус активации лицензии: * TRIAL - активна пробная лицензия (максимальная высота блокчейна - 30000 блоков), по завершении пробного периода валидных лицензий нет; * TRIAL_EXPIRED - пробная лицензия истекла, валидных лицензий нет; * ACTIVE - валидная лицензия активна на момент запроса; * PENDING - на момент запроса активной лицензии нет, есть валидная лицензия, начинающаяся с более поздней даты: этот статус поступает по окончании пробного периода при наличии валидной лицензии с более поздней датой начала; * EXPIRED - валидная лицензия на момент запроса истекла, валидных лицензий с более поздней датой начала нет.

  • description - краткое описание статуса, оставшееся количество блоков или дата истечения активной лицензии.

Пример ответа:

Ответ GET /licenses/status:
{
  "status" : "TRIAL",
  "description" : "Trial period is active. Blocks before expiration: 23412"
}

POST /licenses/upload

Метод добавляет новую лицензию для ноды. Параметры, которые передаются в JSON-формате в запросе, указаны в файле, предоставляемом специалистами Waves Enterprise при оформлении лицензии.

Пример запроса:

Запрос POST /licenses/upload:
{
  "license": {
    "version": 1,
    "id": "a3d0d17e-eb05-45ac-906c-da847a9d726d",
    "issued_at": "2021-01-28T15:39:59.456Z",
    "node_owner_address": "3JNFkQ2cVu7ndEHLCs9A5HT63jSi1TV3mWK",
    "valid_after": "2021-01-29",
    "valid_before": "2022-11-20",
    "features": [
      "all_inclusive"
    ]
  },
  "signer_public_key": "p9HrAcGytSBxixJnQXQ87SNXPoXTdnwRzo4FMFvvbNSPzCToqdpJrcgFP6wxmsG23wBfYzcth",
  "signature": "jNjwCXdMPxmdaibXtjYSd8WocFinXKNsrTdPkbWrPTkQstswBp9SHFe",
  "signer_id": "2WDmdaibXtjYSd8WocFinX"
}

Пример ответа:

Ответ POST /licenses/upload:
{
    "message": "License upload successfully"
}

DELETE ​/licenses​/{license_id}

Метод удаляет загруженную лицензию по ее идентификатору {license_id}. Идентификатор лицензии указан в файле лицензии, который вы получите от специалистов Waves Enterprise, а также в ответе метода GET /lecenses.

Пример ответа:

Ответ DELETE ​/licenses​/{license_id}:
{
  "message": "License removed successfully"
}
Смотрите также