Поля элементов памяти:
- 'aliasid' — идентификатор элемента памяти, используемый для передачи в функции Licensing API;
- 'name' — имя элемента памяти;
- 'description' — описание элемента памяти;
- 'accesstype' — тип доступа к памяти (0 — read and write, 1 — read only, 2 — write only);
- 'readpassword' — пароль для чтения элемента памяти;
- 'writepassword' — пароль для записи в элемент памяти;
- 'maxaccesserrors' — максимальное количество неправильных попыток доступа к элементу памяти по паролю до ее блокировки (по умолчанию — 5 попыток);
- 'draft' — признак, который определяет можно ли редактировать элемент. Если элемент памяти добавлен хотя бы в один продукт, то свойство автоматически становится true;
- 'size' — объем элемента памяти в байтах (может быть равен 0, тогда итоговый объем памяти складывается из объемов памяти отдельных параметров; если задан не равным 0, то суммарный объем памяти отдельных параметров не может превышать заданное значение);
- 'action' — действие, которое необходимо выполнить при размещении элемента памяти в лицензию, в которую уже ранее добавлялся элемент памяти с тем же самым 'aliasid'. Доступные значения: 0 — set, 1 — overwrite, 2 — delete.
Поля параметров элементов памяти:
- 'name' — имя параметра;
- 'description' — описание параметра;
- 'offset' — смещение параметра в элементе памяти;
- 'size' — объем памяти параметра в байтах;
- 'data' — двоичные данные параметра размера 'size', представленные в виде base64-строки;
- 'dataType' — тип данных параметра, определяет способ интерпретации поля data. Возможные значения: 0 - двоичный (требуется hex-редактор), 1 - числовой (4 байта), 2 - строковый (UTF-8);
- 'editeallowed' — определяет возможность редактирования двоичных данных параметра в заказе.
Создание элемента памяти
Авторизация требуется. Входные параметры RAW JSON:
{
"aliasId": 37,
"name": "mylicense",
"description": "mylicense",
"accessType": 1,
"readPassword": 123,
"wirtePassword": 456,
"maxaccesserrors": 5
"size": 100,
"action": 1
"crmId": "",
"refId": ""
}
POST /v1.0/memoryitems
Возвращает memoryitem:
{
"memoryitem": {
"_id": 1,
"accesstype": 1,
"action": 1,
"aliasid": 37,
"crmid": "",
"description": "mylicense",
"name": "mylicense",
"readpassword": 123,
"refid": "",
"size": 100,
"writepassword": 0,
"maxaccesserrors": 5,
"draft": false,
}
}
Создание элемента памяти с параметрами
Авторизация требуется. Входные параметры RAW JSON:
{
"aliasId": 26,
"name": "item_with_params",
"description": "item_with_params",
"accessType": 0,
"readPassword": 123,
"writePassword": 456,
"size": 50,
"action": 0,
"crmId": "",
"refId": "",
"params":[
{
"name": "param1",
"description": "param1",
"offset": 0,
"size": 8,
"editAllowed": true,
"data": "111XWFlgYWI=",
"dataType": 0
},
{
"name": "param2",
"description": "param2",
"offset": 8,
"size": 8,
"editAllowed": true,
"data": "111XWFlgYWI=",
"dataType": 0
}
]
}
POST /v1.0/memoryitems/params
Возвращает memoryitem:
{
"memoryitem": {
"_id": 10180,
"accesstype": 0,
"action": 0,
"aliasid": 26,
"archivationdate": 0,
"archived": false,
"crmid": "",
"description": "item_with_params",
"draft": true,
"maxaccesserrors": 5,
"name": "item_with_params",
"params": [
{
"_id": 10225,
"data": "111XWFlgYWI=",
"datatype": 0,
"description": "param1",
"editallowed": true,
"name": "param1",
"offset": 0,
"size": 8
},
{
"_id": 10226,
"data": "111XWFlgYWI=",
"datatype": 0,
"description": "param2",
"editallowed": true,
"name": "param2",
"offset": 8,
"size": 8
}
],
"readpassword": 123,
"refid": "",
"size": 50,
"totalparams_size": 16,
"writepassword": 456
}
}
Получения списка элементов памяти (и их параметров)
Авторизация требуется. Входные параметры отсутствуют.
GET /v1.0/memoryitems
Для запроса доступна сортировка по aliasid, name (по умолчанию) и пагинация.
Возвращает массив memoryitems:
{
"memoryitems": [
{
"_id": 3,
"accesstype": 1,
"action": 1,
"aliasid": 37,
"crmid": "",
"description": "mylicense",
"name": "mylicense",
"params": [
{
"_id": 2,
"data": "VVZXWFlgYWJj",
"datatype": 0,
"description": "param_first",
"editallowed": true,
"name": "param_first",
"offset": 0,
"size": 9
}
],
"readpassword": 123,
"refid": "",
"size": 100,
"totalparams_size": 9,
"writepassword": 0,
"maxaccesserrors": 5,
"draft": false,
}
]
}
Получения элемента памяти (и его параметров) по ID
Авторизация требуется. Входные параметры отсутствуют.
GET /v1.0/memoryitems/{id}
Возвращает элемент memoryitem:
{
"memoryitem":
{
"_id": 3,
"accesstype": 1,
"action": 1,
"aliasid": 37,
"crmid": "",
"description": "mylicense",
"name": "mylicense",
"params": [
{
"_id": 2,
"data": "VVZXWFlgYWJj",
"datatype": 0,
"description": "param_first",
"editallowed": true,
"name": "param_first",
"offset": 0,
"size": 9
}
],
"readpassword": 123,
"refid": "",
"size": 100,
"totalparams_size": 9,
"writepassword": 0,
"maxaccesserrors": 5,
"draft": false,
}
}
Получения продуктов, в которые включен элемент памяти
Авторизация требуется. Входные параметры отсутствуют.
GET /v1.0/memoryitems/{id}/products
Возвращает элемент memoryitem:
{
"memoryitem": {
"_id": 4,
"accesstype": 0,
"action": 1,
"aliasid": 100,
"archivationdate": 0,
"archived": false,
"crmid": "",
"description": "mi100",
"maxaccesserrors": 5,
"draft": false,
"name": "mi100",
"params": [
{
"_id": 4,
"data": "VVZXWFlgYWI=",
"datatype": 0,
"description": "param1",
"editallowed": true,
"name": "param1",
"offset": 0,
"size": 8
},
{
"_id": 5,
"data": "OOOXWFlgYWI=",
"datatype": 0,
"description": "param2",
"editallowed": true,
"name": "param2",
"offset": 8,
"size": 8
},
{
"_id": 6,
"data": "bbbXWFlgYWI=",
"datatype": 0,
"description": "param3",
"editallowed": true,
"name": "param3",
"offset": 16,
"size": 8
}
],
"products": [
{
"_id": 10302,
"accesscode_id": 18,
"archivationdate": 0,
"archived": false,
"binding": {
"CAN_REPLACE_CPU": false,
"CAN_REPLACE_DVD": false,
"CAN_REPLACE_HDD": false,
"CAN_REPLACE_MAC": false,
"CAN_REPLACE_MOTHERBOARD": false,
"CAN_REPLACE_OS": false,
"CPU": true,
"DVD": false,
"HDD": true,
"MAC": true,
"MOTHERBOARD": true,
"OS": false
},
"binding_maxhardwarechangenumber": 0,
"binding_scheme": 0,
"crmid": "",
"description": "",
"flags": 0,
"hardwarebindingscheme": 0,
"licensetype": 0,
"memoryitems": [
{
"_id": 4,
"accesstype": 0,
"action": 1,
"aliasid": 100,
"archivationdate": 0,
"archived": false,
"crmid": "",
"description": "mi100",
"maxaccesserrors": 5,
"draft": false,
"name": "mi100",
"params": [
{
"_id": 4,
"data": "VVZXWFlgYWI=",
"datatype": 0,
"description": "param1",
"editallowed": true,
"name": "param1",
"offset": 0,
"size": 8
},
{
"_id": 5,
"data": "OOOXWFlgYWI=",
"datatype": 0,
"description": "param2",
"editallowed": true,
"name": "param2",
"offset": 8,
"size": 8
},
{
"_id": 6,
"data": "bbbXWFlgYWI=",
"datatype": 0,
"description": "param3",
"editallowed": true,
"name": "param3",
"offset": 16,
"size": 8
}
],
"readpassword": 123,
"refid": "",
"size": 100,
"totalparams_size": 24,
"writepassword": 0
}
],
"modification": 0,
"name": "with_memory",
"productnumber": 12362,
"refid": "",
"status": 1
}
],
"readpassword": 123,
"refid": "",
"size": 100,
"totalparams_size": 24,
"writepassword": 0
}
}
Перемещение элемента памяти в архив и обратно
Авторизация требуется. Входные параметры RAW JSON:
1 |
|
PUT /v1.0/memoryitems/{id}/changearchivestatus
Возвращает элемент memoryitem:
{
"memoryitem": {
"_id": 4,
"accesstype": 0,
"action": 1,
"aliasid": 100,
"archivationdate": 0,
"archived": false,
"crmid": "",
"description": "mi100",
"maxaccesserrors": 5,
"draft": false,
"name": "mi100",
"params": [
{
"_id": 4,
"data": "VVZXWFlgYWI=",
"datatype": 0,
"description": "param1",
"editallowed": true,
"name": "param1",
"offset": 0,
"size": 8
},
{
"_id": 5,
"data": "OOOXWFlgYWI=",
"datatype": 0,
"description": "param2",
"editallowed": true,
"name": "param2",
"offset": 8,
"size": 8
},
{
"_id": 6,
"data": "bbbXWFlgYWI=",
"datatype": 0,
"description": "param3",
"editallowed": true,
"name": "param3",
"offset": 16,
"size": 8
}
],
"readpassword": 123,
"refid": "",
"size": 100,
"totalparams_size": 24,
"writepassword": 0
}
}
Обновление полей элемента памяти
Авторизация требуется. Входные параметры RAW JSON:
{
"aliasid": 37,
"description": "mylicense1",
"accessType": 0,
"readPassword": 43,
"writePassword": 11,
"maxaccesserrors": 10
"size": 150,
"action": 0,
"crmId": "",
"refId": ""
}
PUT /v1.0/memoryitems/{id}
Возвращает memoryitem:
{
"memoryitem": {
"_id": 1,
"accesstype": 0,
"action": 0,
"aliasid": 37,
"crmid": "",
"description": "mylicense1",
"name": "mylicense",
"readpassword": 43,
"refid": "",
"size": 150,
"writepassword": 11,
"maxaccesserrors": 10,
"draft": false
}
}
Удаление элемента памяти
Авторизация требуется. Входные параметры отсутствуют.
DELETE /v1.0/memoryitems/{id}
Получение следующего идентификатора (aliasid) элемента памяти
Авторизация требуется. Входные параметры отсутствуют.
GET /v1.0/nextmemoryitemid
{
"nextmemoryitemid": 38
}
Добавление параметра элемента памяти
Авторизация требуется. Входные параметры RAW JSON:
{
"name": "param1",
"description": "param1",
"offset": 0,
"size": 10,
"editAllowed": true,
"data": "VVZXWFlgYWJjZA==",
"dataType": 0
}
POST /v1.0/memoryitems/{id}/params
Возвращает param:
{
"param": {
"_id": 1,
"data": "VVZXWFlgYWJjZA==",
"datatype": 0,
"description": "param1",
"editallowed": true,
"name": "param1",
"offset": 0,
"size": 10
}
}
Обновление параметра элемента памяти
Авторизация требуется. Входные параметры RAW JSON:
{
"name": "param_first",
"description": "param_first",
"offset": 0,
"size": 9,
"editAllowed": true,
"data": "VVZXWFlgYWJj==",
"dataType": 0,
}
PUT /v1.0/memoryitems/{id}/params/{paramid}
Возвращает param:
{
"param": {
"_id": 1,
"data": "VVZXWFlgYWJj",
"datatype": 0,
"description": "param_first",
"editallowed": true,
"name": "param_first",
"offset": 0,
"size": 9
}
}
Удаление параметра элемента памяти
Авторизация требуется. Входные параметры отсутствуют.
DELETE /v1.0/memoryitems/{id}/params/{paramid}