Компонент содержит криптографические ключи, которые необходимы для защиты и работы фрагмента программного кода, файла или всего приложения. Работу компонента можно ограничить по времени, количеству запусков в сети и т.д. Совокупность ограничений называется "лицензией". Если лицензионные ограничения не выполнены, то компонент не выдаёт секрет, а значит функция приложения, ассоциированная с компонентом, не работает.
Получение списка компонентов
Авторизация требуется. Входных параметров нет.
GET /v1.0/features
Для запроса доступна сортировка и пагинация. Доступные поля сортировки: number, name. Значения параметров сортировки и пагинации по умолчанию: sortby=number&direction=asc&offset=0&limit=100.
В запросе имеется опциональный параметр archived=false (archived=true) - для вывода не архивных записей (архивных записей). По умолчанию в запросе выводятся все записи - и архивные и не архивные.
Возвращает массив features:
"features": [{
"_id": 10029,
"description": "My test feature",
"featurenumber": 1,
"name": "Feature 1",
"pubkey":"F9 E5 EC 6B 52 54 BC 80 45 7D 49 BB F0 61 F9 F2 EC AA 9F 63 79 32 0A B6 77 44 8A E7 16 AC C1 82 8A 14 73 1E 56 B6 EF 53"
"crmid": "",
"refid": ""
},
{
"_id": 10030,
"description": "Feature2",
"featurenumber": 2,
"name": "Feature2",
"pubkey":"11 45 0A B6 77 EC AA 9F 63 79 32 C1 82 8A 14 EC 6B 52 54 BC 80 45 7D 49 BB 73 1E 56 6B 52 54 BC 80 45 7D 34 56 BB AA 99"
"crmid": "",
"refid": ""
}]
'_id' — идентификатор компонента и БД
'description' — текстового описание назначения компонента (задаётся пользователем).
'featurenumber' - целочисленное число — номер компонента (задаётся пользователем). Пространство номеров индивидуально для каждого вендора.
'name' — краткое текстовое название компонента (задаётся пользователем).
Создание нового компонента
Авторизация требуется. Входные параметры RAW JSON:
{
"featureNumber" : 5,
"featureName" : "PostMan",
"featureDescription" : "Created by postMan",
"archived": false,
"crmId": "",
"refId": ""
}
Создание компонента с существующим номером запрещено.
POST /v1.0/features
Возвращает элемент feature:
{
"feature": {
"_id": 10032,
"description": "Created by postMan",
"featurenumber": 5,
"name": "PostMan",
"pubkey":"11 45 0A B6 77 EC AA 9F 63 79 32 C1 82 8A 14 EC 6B 52 54 BC 80 45 7D 49 BB 73 1E 56 6B 52 54 BC 80 45 7D 34 56 BB AA 99"
"crmid": "",
"refid": ""
}
}
Изменение описания компонента
Авторизация требуется. Входные параметры RAW JSON:
{
"featureName" : "PostManBy",
"featureDescription" : "Created by postManBy",
"archived": false,
"crmId": "",
"refId": ""
}
PUT /v1.0/features/{id}
Возвращает элемент feature:
{
"feature": {
"_id": 10032,
"description": "Created by postManBy",
"featurenumber": 5,
"name": "PostManBy",
"pubkey":"11 45 0A B6 77 EC AA 9F 63 79 32 C1 82 8A 14 EC 6B 52 54 BC 80 45 7D 49 BB 73 1E 56 6B 52 54 BC 80 45 7D 34 56 BB AA 99"
"crmid": "",
"refid": ""
}
}
Перемещение компонента в архив и обратно
Авторизация требуется. Входные параметры RAW JSON:
1 |
|
PUT /v1.0/features/{id}/changearchivestatus
Возвращает элемент feature:
{
"feature": {
"_id": 22,
"archivationdate": 1580804346,
"archived": true,
"crmid": "",
"description": "Main module",
"featurenumber": 1,
"name": "Main module",
"pubkey": "B2 AA 8D 31 A2 07 0C B9 AB 42 48 6D F6 C0 3C EA CA AE 9E 04 FE 28 9A 72 6E 76 81 1F FA A5 67 93 3A DE 7E 0C 07 BA 88 AB",
"refid": ""
}
}
Удаление компонента
Авторизация требуется. Входных параметров нет.
DELETE /v1.0/features/{id}
Получение компонента по идентификатору
Авторизация требуется. Входных параметров нет.
GET /v1.0/features/{id}
Возвращает элемент feature:
{
"feature": {
"_id": 10032,
"description": "Created by postManBy",
"featurenumber": 5,
"name": "PostManBy",
"pubkey":"11 45 0A B6 77 EC AA 9F 63 79 32 C1 82 8A 14 EC 6B 52 54 BC 80 45 7D 49 BB 73 1E 56 6B 52 54 BC 80 45 7D 34 56 BB AA 99"
"crmid": "",
"refid": ""
}
}
Получение значения следующего номера компонента (использовать при добавлении нового компонента)
Авторизация требуется. Входных параметров нет.
GET /v1.0/getnextfeaturenumber
Возвращает:
{
"nextfeaturenumber": 346
}