更新

描述

object hostprototype.update(object/array hostPrototypes)

该方法运行更新存在的主机原型

该方法适用于管理员超级管理员用户类型。可以在用户角色设置中撤销调用该方法的权限。有关详细信息,参阅用户角色

参数

(object/array) 要更新的主机原型属性。

必须为每个主机原型定义hostid属性,所有其他属性都是可选的。只有选中的属性将被更新,所有其他的属性将保持不变。 除标准主机原型属性外, 该方法还接受以下参数。

参数类型描述
groupLinks队列替换当前主机原型上的组链接的组链接
groupPrototypes数组替换主机原型上存在的组原型的组原型
macros对象/数组替换当前用户宏的用户宏

所有未在请求列表中宏将被删除。
tags对象/数组替换当前标签的主机原型标签

所有未在请求列表中的标签将被删除。
interfaces对象/数组替换当前接口的主机原型自定义接口

自定义接口对象包含所有参数。
所有未在请求列表中的接口将被删除
templates对象/数组替换当前连接模板中的模板

模板中的templateid属性必须被定义。

返回值

(object)hostids属性中返回包含已更新主机原型ID的对象。

示例

禁用主机原型

禁用主机原型可以设置其状态为1。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "hostprototype.update",
  4. "params": {
  5. "hostid": "10092",
  6. "status": 1
  7. },
  8. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  9. "id": 1
  10. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "hostids": [
  5. "10092"
  6. ]
  7. },
  8. "id": 1
  9. }

更新主机原型标签

替换新的主机原型标签

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "hostprototype.update",
  4. "params": {
  5. "hostid": "10092",
  6. "tags": [
  7. {
  8. "tag": "Datacenter",
  9. "value": "{#DATACENTER.NAME}"
  10. },
  11. {
  12. "tag": "Instance type",
  13. "value": "{#INSTANCE_TYPE}"
  14. }
  15. ]
  16. },
  17. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  18. "id": 1
  19. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "hostids": [
  5. "10092"
  6. ]
  7. },
  8. "id": 1
  9. }

更新主机原型自定义接口

用主机原型自定义接口替换继承的接口。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "hostprototype.update",
  4. "params": {
  5. "hostid": "10092",
  6. "custom_interfaces": "1",
  7. "interfaces": [
  8. {
  9. "main": "1",
  10. "type": "2",
  11. "useip": "1",
  12. "ip": "127.0.0.1",
  13. "dns": "",
  14. "port": "161",
  15. "details": {
  16. "version": "2",
  17. "bulk": "1",
  18. "community": "{$SNMP_COMMUNITY}"
  19. }
  20. }
  21. ]
  22. },
  23. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  24. "id": 1
  25. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "hostids": [
  5. "10092"
  6. ]
  7. },
  8. "id": 1
  9. }

参考

来源

CHostPrototype::update() in ui/include/classes/api/services/CHostPrototype.php.