批量更新

描述

object host.massupdate(对象参数)

该方法可以在多台主机上同时替换或移除相关对象和更新属性。

这个方法仅允许 管理员超级管理员 用户类型。可以在用户角色中撤销调用方法的权限设置。详情参考 用户角色

参数

(对象) 参数包含要更新的主机id和应该更新的属性。

除了标准主机属性以外,此方法可以接受如下参数:

参数描述
hosts
(必填)
对象/数组待更新的主机

主机必须定义了 hostid 属性。
groups对象/数组更换主机所属的主机

主机组必须定义了 groupid 属性。
interfaces对象/数组主机接口 用于替换给定主机上的当前主机接口。
inventory对象主机清单属性。

主机清单模式不能使用 inventory 参数更新, 事情 inventory_mode 代替。
macros对象/数组用户宏 替换给定主机上的当前用户宏。
templates对象/数组模板替换给定主机上当前链接的模板。

模板必须定义了 templateid 属性。
templates_clear对象/数组模板 断开和清除给定主机的链接。

模板必须定义了 templateid 属性。

返回值

(对象) 返回一个对象,该对象包含 hostids 属性下更新的主机的id。

示例

启用多个主机

启用两个主机,将status设置为0

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "host.massupdate",
  4. "params": {
  5. "hosts": [
  6. {
  7. "hostid": "69665"
  8. },
  9. {
  10. "hostid": "69666"
  11. }
  12. ],
  13. "status": 0
  14. },
  15. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  16. "id": 1
  17. }

响应:

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

另请参阅

源代码

CHost::massUpdate() in ui/include/classes/api/services/CHost.php.