Это перевод страницы документации с английского языка. Помогите нам сделать его лучше.

itemprototype.update

Описание

object itemprototype.update(объект/массив itemPrototypes)

Этот метод позволяет обновлять существующие прототипы элементов данных.

Этот метод доступен только пользователям с типом доступа Администратор и Супер-администратор. Разрешения на вызов метода можно отозвать в настройках ролей пользователя. Дополнительную информацию см. в разделе Роли пользователей.

Параметры

(объект/массив) Свойства прототипов элементов данных, которые будут обновлены.

Свойство itemid должно быть указано по каждому прототипу элементов данных, все остальные свойства опциональны. Будут обновлены только переданные свойства, все остальные останутся неизменными.

В дополнение к стандартным свойствам прототипа элементов данных, этот метод принимает следующие параметры.

Параметр Тип Описание
applications массив ID групп элементов данных, которые заменят текущие группы элементов данных.
applicationPrototypes массив Имена прототипов групп элементов данных, которые заменят текущие прототипы групп элементов данных.
preprocessing массив Опции предобработки прототипа элементов данных, которые заменят текущие опции предварительной обработки.

Возвращаемые значения

(объект) Возвращает объект, который содержит ID обновленных прототипов элементов данных, указанных в свойстве itemids.

Примеры

Изменение интерфейса прототипа элемента данных

Изменить интерфейс узла сети, который будет использоваться обнаруженными элементами данных.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "itemprototype.update",
           "params": {
               "itemid": "27428",
               "interfaceid": "132"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "27428"
               ]
           },
           "id": 1
       }

Обновление прототип зависимого элемента данных

Обновить прототип зависимого элемента данных новым ID основного прототипа элемента данных. Разрешены зависимости только от одного и того же узла сети (шаблона /правила обнаружения), поэтому главный и зависимый элементы данных должны иметь одинаковые hostid и ruleid.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "itemprototype.update",
           "params": {
               "master_itemid": "25570",
               "itemid": "189030"
           },
           "auth": "700ca65537074ec963db7efabda78259",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "189030"
               ]
           },
           "id": 1
       }

Обновление прототипа элементов данных HTTP агента

Изменение полей запроса и удаление всех пользовательских заголовков.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "itemprototype.update",
           "params": {
               "itemid":"28305",
               "query_fields": [
                   {
                       "random": "qwertyuiopasdfghjklzxcvbnm"
                   }
               ],
               "headers": []
           }
           "auth": "700ca65537074ec963db7efabda78259",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "28305"
               ]
           },
           "id": 1
       }

Обновление параметров предварительной обработки элемента данных

Обновить прототип элемента данных с помощью правила предварительной обработки элемента данных “Custom multiplier”.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "itemprototype.update",
           "params": {
               "itemid": "44211",
               "preprocessing": [
                   {
                       "type": 1,
                       "params": "4",
                       "error_handler": 2,
                       "error_handler_params": "5"
                   }
               ]
           },
           "auth": "700ca65537074ec963db7efabda78259",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "44211"
               ]
           },
           "id": 1
       }

Updating a script item prototype

Update a script item prototype with a different script and remove unnecessary parameters that were used by previous script.

Request:

{
           "jsonrpc": "2.0",
           "method": "itemprototype.update",
           "params": {
               "itemid": "23865",
               "parameters": [],
               "script": "Zabbix.Log(3, 'Log test');\nreturn 1;"
           },
           "auth": "700ca65537074ec963db7efabda78259",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "23865"
               ]
           },
           "id": 1
       }

Источник

CItemPrototype::update() в ui/include/classes/api/services/CItemPrototype.php.