(V1.0)
2018.3
注:已上传word版,如需下载请前往https://download.csdn.net/download/u012469528/10500277
Zabbix系统接口文档 - 1 -
目录 - 2 -
1. 获取API版本 - 1 -
2. 关联(3.2版本开始有) - 1 -
2.1. correlation.create - 1 -
2.2. correlation.delete - 4 -
2.3. correlation.get - 5 -
2.4. correlation.update - 6 -
3. 监控项 - 8 -
3.1. item.create - 8 -
3.2. item.delete - 10 -
3.3. item.get - 10 -
3.4. item.update - 16 -
3.5. item.isreadable - 17 -
3.6. item.iswritable - 18 -
4. 主机 - 18 -
4.1. host.create - 18 -
4.2. host.delete - 20 -
4.3. host.get - 21 -
4.4. host.update - 28 -
4.5. host.massadd - 31 -
4.6. host.massremove - 32 -
4.7. host.massupdate - 33 -
4.8. host.isreadable - 34 -
4.9. host.iswritable - 34 -
5. 主机组 - 35 -
5.1. hostgroup.create - 35 -
5.2. hostgroup.delete - 36 -
5.3. hostgroup.get - 37 -
5.4. hostgroup.update - 38 -
5.5. hostgroup.massadd - 39 -
5.6. hostgroup.massremove - 40 -
5.7. hostgroup.massupdate - 41 -
5.8. hostgroup.isreadable - 42 -
5.9. hostgroup.iswritable - 42 -
6. Web场景 - 43 -
6.1. httptest.create - 43 -
6.2. httptest.delete - 44 -
6.3. httptest.get - 45 -
6.4. httptest.update - 48 -
6.5. httptest.isreadable - 49 -
6.6. httptest.iswritable - 49 -
7. 模板 - 50 -
7.1. template.create - 50 -
7.2. template.delete - 51 -
7.3. template.get - 52 -
7.4. template.update - 55 -
7.5. template.massadd - 55 -
7.6. template.massremove - 57 -
7.7. template.massupdate - 59 -
7.8. template.isreadable - 60 -
7.9. template.iswritable - 60 -
8. 发现主机 - 61 -
8.1. dhost.get - 61 -
9. 发现服务 - 64 -
9.1. dservice.get - 64 -
10. 发现检查 - 66 -
10.1. dcheck.get - 66 -
11. 发现规则 - 68 -
11.1. drule.create - 68 -
11.2. drule.delete - 69 -
11.3. drule.get - 70 -
11.4. drule.update - 72 -
11.5. drule.isreadable - 73 -
11.6. drule.iswritable - 74 -
12. 应用集 - 74 -
12.1. application.create - 74 -
12.2. application.delete - 75 -
12.3. application.get - 76 -
12.4. application.update - 77 -
12.5. application.massadd - 78 -
13. 触发器 - 79 -
13.1. trigger.create - 79 -
13.2. trigger.delete - 80 -
13.3. trigger.get - 81 -
13.4. trigger.update - 85 -
13.5. trigger.adddependencies - 85 -
13.6. trigger.deletedependencies - 86 -
13.7. trigger.isreadable - 87 -
13.8. trigger.iswritable - 88 -
14. 图像 - 89 -
14.1. image.create - 89 -
14.2. image.delete - 90 -
14.3. image.get - 91 -
14.4. image.update - 92 -
15. 聚合图形项目 - 93 -
15.1. screenitem.create - 93 -
15.2. screenitem.delete - 95 -
15.3. screenitem.get - 95 -
15.4. screenitem.update - 100 -
15.5. screenitem.updatebyposition - 100 -
15.6. screenitem.isreadable - 101 -
15.7. screenitem.iswritable - 102 -
16. 聚合图形 - 103 -
16.1. screen.create - 103 -
16.2. screen.delete - 105 -
16.3. screen.get - 106 -
16.4. screen.update - 108 -
17. 图形项 - 110 -
17.1. graphitem.get - 110 -
18. 图形 - 112 -
18.1. graph.create - 112 -
18.2. graph.delete - 113 -
18.3. graph.get - 114 -
18.4. graph.update - 117 -
19. 原型图 - 118 -
19.1. graphprototype.create - 118 -
19.2. graphprototype.delete - 119 -
19.3. graphprototype.get - 120 -
19.4. graphprototype.update - 122 -
20. 模板聚合图形项 - 122 -
20.1. templatescreenitem.get - 122 -
21. 模板聚合图形 - 125 -
21.1. templatescreen.create - 125 -
21.2. templatescreen.delete - 126 -
21.3. templatescreen.get - 127 -
21.4. templatescreen.update - 130 -
21.5. templatescreen.copy - 130 -
21.6. templatescreen.isreadable - 131 -
21.7. templatescreen.iswritable - 132 -
22. 历史数据 - 132 -
22.1. history.get - 132 -
23. 用户 - 135 -
23.1. user.create - 135 -
23.2. user.delete - 136 -
23.3. user.get - 137 -
23.4. user.update - 139 -
23.5. user.updateprofile - 140 -
23.6. user.addmedia - 140 -
23.7. user.deletemedia - 141 -
23.8. user.updatemedia - 142 -
23.9. user.login - 143 -
23.10. user.logout - 145 -
23.11. user.isreadable - 146 -
23.12. user.iswritable - 146 -
24. 用户组 - 147 -
24.1. usergroup.create - 147 -
24.2. usergroup.delete - 148 -
24.3. usergroup.get - 149 -
24.4. usergroup.update - 151 -
24.5. usergroup.massadd - 152 -
24.6. usergroup.massupdate - 153 -
24.7. usergroup.isreadable - 154 -
24.8. usergroup.iswritable - 154 -
25. 用户宏 - 155 -
25.1. usermacro.create - 155 -
25.2. usermacro.delete - 156 -
25.3. usermacro.get - 157 -
25.4. usermacro.update - 158 -
25.5. usermacro.createglobal - 159 -
25.6. usermacro.deleteglobal - 160 -
25.7. usermacro.updateglobal - 161 -
26. 主机接口 - 161 -
26.1. hostinterface.create - 161 -
26.2. hostinterface.delete - 163 -
26.3. hostinterface.get - 163 -
26.4. hostinterface.update - 165 -
26.5. hostinterface.massadd - 166 -
26.6. hostinterface.massremove - 167 -
26.7. hostinterface.replacehostinterfaces - 168 -
27. 主机原型 - 169 -
27.1. hostprototype.create - 169 -
27.2. hostprototype.delete - 170 -
27.3. hostprototype.get - 171 -
27.4. hostprototype.update - 173 -
27.5. hostprototype.isreadable - 173 -
27.6. hostprototype.iswritable - 174 -
28. LLD规则(待写。。。) - 175 -
28.1. discoveryrule.copy - 175 -
28.2. discoveryrule.create - 176 -
28.3. discoveryrule.delete - 176 -
28.4. discoveryrule.get - 176 -
28.5. discoveryrule.update - 176 -
28.6. discoveryrule.isreadable - 176 -
28.7. discoveryrule.iswritable - 176 -
29. 应用集(待写。。。) - 176 -
29.1. application.create - 176 -
29.2. application.delete - 176 -
29.3. application.get - 176 -
29.4. application.update - 176 -
29.5. application.massadd - 176 -
Description |
该方法用于获取 Zabbix API 版本 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
{ "jsonrpc": "2.0", //这是标准的JSON RPC参数以标示协议版本。所有的请求都会保持不变 "method": "apiinfo.version", //这个参数定义了真实执行的操作。例如:host.create、item.update等等 "params": [], //请求的参数列表,采用键值对形式 "id": 1 //用于绑定JSON请求和响应.响应会跟请求有相同的"id"。在一次性发送多个请求时很有用,这些也不需要唯一或者连续 }
|
返回值 |
返回 Zabbix API 的版本 |
Response |
{ "jsonrpc": "2.0", "result": "3.0.14", "id": 1 }
|
Description |
该方法允许创建新的关联 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一: 创建一个新的事件标签关联 { "jsonrpc": "2.0", "method": "correlation.create", "params": { //这里通过传递JSON对象来作为特定方法的参数。如果你希望创建监控项,"name"和"key_"参数是需要的,每个方法需要的参数在Zabbix API文档中都有描述。 "name": "new event tag correlation",//关联的名称(required) "filter": { //关联的关联过滤对象(required) "evaltype": 0, //过滤条件评估方法。(required) //0 - and/or;1 - and;2 - or;3 - custom expression. "conditions": [ //用于过滤结果的一组过滤条件(required) { "type": 1,//条件类型.可能的值:(required) //0 - 旧事件标签 "tag": "ok" } ] }, "operations": [ //创建关联的关联操作(required) { "type": 0 //操作类型.可能的值是:(required) } ] }, "auth": "343baad4f88b4106b9b5961e77437688", //这是一个认证令牌【authentication token】用以鉴别用户、访问API。这也是使用API进行相关操作的前提-获取认证ID "id": 1 //这个字段用于绑定JSON请求和响应。响应会跟请求有相同的"id"。在一次性发送多个请求时很有用,这些也不需要唯一或者连续 }
实例二: 创建一个使用自定义过滤条件的关联。公式ID“A”或“B”已被任意选择。条件类型将为“主机组”与操作员 { "jsonrpc": "2.0", "method": "correlation.create", "params": { "name": "new host group correlation", //(required) "description": "a custom description",//关联的说明 "status": 0,//关联是否被启用. //可能的值是:0 - 默认启用 ;1 - 禁用 "filter": { //(required) "evaltype": 3, //(required) "formula": "A or B", //用于自定义表达式用于评估过滤条件的用户定义表达式。表达式必须包含通过其''公式'引用特定过滤条件的ID。表达式中使用的ID必须与过滤条件中定义的ID完全匹配:无条件可以保留未使用或省略。 "conditions": [ //(required) { "type": 2, //(required) "operator": 1,//条件运算符.条件类型为2,4,5时需要 "formulaid": "A" }, { "type": 2, "operator": 1, "formulaid": "B" //用于从自定义表达式引用条件的任意唯一ID。只能包含大写字母。修改过滤条件时,用户必须定义ID,但是以后请求时会重新生成。 } ] }, "operations": [ //(required) { "type": 1 //(required) } ] }, "auth": "343baad4f88b4106b9b5961e77437688", "id": 1 }
|
返回值
|
返回一个对象,该对象包含“相关性”属性下创建的关联的ID。返回的ID的顺序与通过的相关性的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "correlationids": [ "1" ] }, "id": 1 }
对应实例二: { "jsonrpc": "2.0", "result": { "correlationids": [ "2" ] }, "id": 1 }
|
Description |
该方法允许删除关联 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一: 删除多个关联 { "jsonrpc": "2.0", "method": "correlation.delete", "params": [ "1", //要删除的关联的ID "2" ], "auth": "343baad4f88b4106b9b5961e77437688", "id": 1 }
|
|
|
返回值 |
返回一个对象,该对象包含“相关性”属性下删除的关联的ID |
Response |
对应示例一: { "jsonrpc": "2.0", "result": { "correlaionids": [ "1", "2" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数获取关联 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一: 获取所有配置的关联以及关联条件和操作。过滤器使用“和/或”评估类型,因此formula属性为空,“eval_formula”是自动生成的。 { "jsonrpc": "2.0", "method": "correlation.get", "params": { "output": "extend", //要返回的对象属性.默认为extend. "selectOperations": "extend",//返回“操作”属性中的关联操作 "selectFilter": "extend" 返回“filter”属性中的关联过滤器 }, "auth": "343baad4f88b4106b9b5961e77437688", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数 |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "correlationid": "1", //仅返回给定ID的关联 "name": "Correlation 1", "description": "", "status": "0", "filter": { "evaltype": "0", "formula": "", "conditions": [ { "type": "3", "oldtag": "error",//旧事件标签.条件类型为3时需要。 "newtag": "ok",//旧事件标签 条件类型为3时需要。 "formulaid": "A" } ], "eval_formula": "A" //生成的表达式将用于评估过滤条件。该表达式包含通过其“公式”引用特定过滤条件的ID。“eval_formula”的值等于具有自定义表达式的过滤器的“公式”值. }, "operations": [ { "type": "0" } ] } ], "id": 1 }
|
Description |
该方法允许更新现有的相关性。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一: 禁用关联 { "jsonrpc": "2.0", "method": "correlation.update", "params": { "correlationid": "1",//关联的ID "status": "1" }, "auth": "343baad4f88b4106b9b5961e77437688", "id": 1 }
示例二: 替换条件,但保持评估方法 { "jsonrpc": "2.0", "method": "correlation.update", "params": { "correlationid": "1", "filter": { //替换当前过滤器的关联过滤对象。 "conditions": [ // { "type": 3, "oldtag": "error", "newtag": "ok" } ] } }, "auth": "343baad4f88b4106b9b5961e77437688", "id": 1 }
|
返回值 |
返回一个对象,该对象包含“相关性”属性下更新的相关性的ID |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "correlationids": [ "1" ] }, "id": 1 }
对应示例二: { "jsonrpc": "2.0", "result": { "correlationids": [ "1" ] }, "id": 1 }
|
Description |
此方法允许创建新的项 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一: 创建一个数字Zabbix代理项,以监控ID为“30074”的主机上的可用磁盘空间,并将其添加到两个应用程序中。 { "jsonrpc": "2.0", "method": "item.create", "params": { "name": "Free disk space on $1", //(required) "key_": "vfs.fs.size[/home/joe/,free]", //(required) "hostid": "30074", //(required) "type": 0, //(required) "value_type": 3, //(required) "interfaceid": "30084", //(required) "applications": [ //要添加项的应用程序的ID "609", "610" ], "delay": 30 //以秒为单位更新该项目的时间间隔。(required) }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
实例二: 创建一个项目来填充Zabbix代理主机的“操作系统”库存 { "jsonrpc": "2.0", "method": "item.create", "params": { "name": "uname", //(required) "key_": "system.uname", //(required) "hostid": "30021", //(required) "type": 0, //(required) "interfaceid": "30007", //(required) "value_type": 1, //(required) "delay": 10, //(required) "inventory_link": 5 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含“itemids”属性下创建项的ID的对象。 返回的ID的顺序与传递的项的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "itemids": [ "24758" ] }, "id": 1 }
对应实例二: { "jsonrpc": "2.0", "result": { "itemids": [ "24759" ] }, "id": 1 }
|
Description |
此方法允许删除项目 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一: 删除多个items { "jsonrpc": "2.0", "method": "item.delete", "params": [ "22982", //要删除的项的ID "22986" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含“itemids”属性下的已删除项的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "itemids": [ "22982", "22986" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数检索监控项。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:通过 Key 查询 Items 从key中具有“system”一词的ID为“10084”的主机检索所有项,并按名称进行排序。 { "jsonrpc": "2.0", "method": "item.get", "params": { "output": "extend", "hostids": "10084", //该项所属的主机 ID "search": { "key_": "system" //Item key }, "sortfield": "name" //按给定属性排序结果.可能值:itemid, name, key_, delay, history, trends, type and status. }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数 |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "itemid": "23298", //监控项ID "type": "0", //item的类别.可能的值: "snmp_community": "", //SNMP社区。 仅由SNMPv和SNMPv2项使用。 "snmp_oid": "", "hostid": "10084", //该项所属的主机 ID "name": "Context switches per second", //item的名称 "key_": "system.cpu.switches", //Item key "delay": "60", //以秒为单位更新该项目的时间间隔。 "history": "7", //保留项目历史数据的天数。Default: 90. "trends": "365",//保留项目趋势数据的天数。 Default: 365. "lastvalue": "2552", //item的最后一个值。此属性将仅返回ZBX_HISTORY_PERIOD中配置的时间段的值 "lastclock": "1351090998",//item上次更新时间。此属性将仅返回ZBX_HISTORY_PERIOD中配置的时间段的值 "prevvalue": "2641",//item的上一个值。此属性将仅返回ZBX_HISTORY_PERIOD中配置的时间段的值 "state": "0",//item声明.可能的值: "status": "0", //item状态.可能的值: "value_type": "3",//item的信息类型。可能的值: "trapper_hosts": "", //允许的主机。 仅由trapper items使用。 "units": "sps", //Value units "multiplier": "0", //是否使用自定义乘数 "delta": "1",//将被存储的值.可能的值: "snmpv3_securityname": "",//SNMPv3安全名称。 仅用于SNMPv3项 "snmpv3_securitylevel": "0",SNMPv3安全级别。 仅用于SNMPv3项.可能的值: 0 - noAuthNoPriv; 1 - authNoPriv; 2 - authPriv. "snmpv3_authpassphrase": "",//SNMPv3身份验证密码。仅用于SNMPv3项目 "snmpv3_privpassphrase": "",//SNMPv3 priv密码。 仅用于SNMPv3项 "snmpv3_authprotocol": "0",//SNMPv3认证协议 仅用于SNMPv3项。可能的值 0 - (default) MD5; 1 - SHA. "snmpv3_privprotocol": "0",SNMPv3隐私协议。 仅用于SNMPv3项.可能的值: 0 - (default) DES; 1 - AES. "snmpv3_contextname": "",//SNMPv3上下文名称。 仅用于SNMPv3项 "formula": "1",//自定义乘数.Default: 1. "error": "",//如果更新项目时出现问题,则显示错误文本。 "lastlogsize": "0", "logtimefmt": "",//日志条目中的时间格式。仅用于日志项。 "templateid": "22680",//父模板项的ID "valuemapid": "0",//相关值图的ID "params": "", //附加参数取决于item的类型:SSH和Telnet items执行脚本;SQL查询数据库监视项;计算项公式. "ipmi_sensor": "",//IPMI传感器 仅由IPMI项使用 "data_type": "0",//item的数据类型.可能的值: "authtype": "0",//SSH认证方式。 仅用于SSH代理项.可能的值:0 - (default) password; 1 - public key. "username": "",//验证用户名。 用于简单检查,SSH,Telnet,数据库监控和JMX项.需要SSH和Telnet项目 "password": "",//认证密码。 用于简单检查,SSH,Telnet,数据库监控和JMX项 "publickey": "",//公钥文件的名称 "privatekey": "",//私钥文件的名称 "mtime": "0",//受监控日志文件上次更新的时间。 仅用于日志项。 "lastns": "564054253",//item上次更新时的纳秒.此属性将仅返回ZBX_HISTORY_PERIOD中配置的时间段的值。 "flags": "0",//item的来源.可能的值 "interfaceid": "1",//项主机接口的ID。 仅用于主机项。适用于Zabbix代理(活动),Zabbix内部,Zabbix陷阱,Zabbix聚合,数据库监控和计算项。 "port": "",//由项监视的端口。 仅由SNMP项使用。 "description": "",//item说明 "inventory_link": "0",//由item填充的主机库存字段的ID。请参阅主机清单页面以获取支持的主机清单字段及其ID的列表。Default: 0. "lifetime": "0", "evaltype": "0" }, { "itemid": "23299", "type": "0", "snmp_community": "", "snmp_oid": "", "hostid": "10084", "name": "CPU $2 time", "key_": "system.cpu.util[,idle]", "delay": "60", "history": "7", "trends": "365", "lastvalue": "86.031879", "lastclock": "1351090999", "prevvalue": "85.306944", "state": "0", "status": "0", "value_type": "0", "trapper_hosts": "", "units": "%", "multiplier": "0", "delta": "0", "snmpv3_securityname": "", "snmpv3_securitylevel": "0", "snmpv3_authpassphrase": "", "snmpv3_privpassphrase": "", "snmpv3_authprotocol": "0", "snmpv3_privprotocol": "0", "snmpv3_contextname": "", "formula": "1", "error": "", "lastlogsize": "0", "logtimefmt": "", "templateid": "17354", "valuemapid": "0", "params": "", "ipmi_sensor": "", "data_type": "0", "authtype": "0", "username": "", "password": "", "publickey": "", "privatekey": "", "mtime": "0", "lastns": "564256864", "flags": "0", "interfaceid": "1", "port": "", "description": "The time the CPU has spent doing nothing.", "inventory_link": "0", "lifetime": "0", "evaltype": "0" }, { "itemid": "23300", "type": "0", "snmp_community": "", "snmp_oid": "", "hostid": "10084", "name": "CPU $2 time", "key_": "system.cpu.util[,interrupt]", "delay": "60", "history": "7", "trends": "365", "lastvalue": "0.008389", "lastclock": "1351091000", "prevvalue": "0.000000", "state": "0", "status": "0", "value_type": "0", "trapper_hosts": "", "units": "%", "multiplier": "0", "delta": "0", "snmpv3_securityname": "", "snmpv3_securitylevel": "0", "snmpv3_authpassphrase": "", "snmpv3_privpassphrase": "", "snmpv3_authprotocol": "0", "snmpv3_privprotocol": "0", "snmpv3_contextname": "", "formula": "1", "error": "", "lastlogsize": "0", "logtimefmt": "", "templateid": "22671", "valuemapid": "0", "params": "", "ipmi_sensor": "", "data_type": "0", "authtype": "0", "username": "", "password": "", "publickey": "", "privatekey": "", "mtime": "0", "lastns": "564661387", "flags": "0", "interfaceid": "1", "port": "", "description": "The amount of time the CPU has been servicing hardware interrupts.", "inventory_link": "0", "lifetime": "0", "evaltype": "0" } ], "id": 1 }
|
Description |
此方法允许更新现有项 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:启用项 启用项,即将其状态设置为“0”。 { "jsonrpc": "2.0", "method": "item.update", "params": { "itemid": "10092", "status": 0 }, "auth": "700ca65537074ec963db7efabda78259", "id": 1 }
|
返回值 |
返回一个包含“itemids”属性下更新项的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "itemids": [ "10092" ] }, "id": 1 }
|
Description |
此方法检查给定的项目是否可以读取 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个项目 检查两个项目是否可读。 { "jsonrpc": "2.0", "method": "item.isreadable", "params": [ //项 "23298", "23323" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的项目可供阅读,则返回true |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法检查给定的项目是否可用于写入 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个项目 检查两个项目是否可读。 { "jsonrpc": "2.0", "method": "item.iswritable", "params": [ "23298", "23323" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的项目可用于写入,则返回true |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法允许创建新的主机。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个主机 创建一个具有IP接口的“Linux Server”主机,将其添加到主机组中,链接一个模板并且把MAC地址设置到主机资产清单里。 { "jsonrpc": "2.0", "method": "host.create", "params": { "host": "Linux server", //主机的正式名称(required) "interfaces": [ //为主机创建的接口。(required) { "type": 1,//接口类型.可能的值是: "main": 1, //该接口是否在主机上用作默认接口。主机上只能有一种类型的接口作为默认设置。可能的值是: "useip": 1, //是否应通过IP进行连接。:可能的值是: 0 - 连接使用主机DNS名称; "ip": "192.168.3.1",//接口使用的IP地址。如果通过DNS进行连接,可以为空。 "dns": "", //接口使用的DNS名称。如果通过IP进行连接,则可以为空。 "port": "10050" //接口使用的端口号。 可以包含用户宏。 } ], "groups": [ //将主机添加到主机组中。主机组必须已定义groupid属性。(required) { "groupid": "50" } ], "templates": [ //链接到主机的模板。模板必须已定义过templateid属性。 { "templateid": "20045" } ], "inventory_mode": 0, //主机资产清单群体模式.可能的值: "inventory": { //主机资产清单属性。 "macaddress_a": "01234",//MAC地址A。 "macaddress_b": "56768"//MAC地址B。 } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回一个对象其中包含在hostids属性下已创建主机的ID。返回ID的命令与传递主机的命令相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostids": [ "107819" ] }, "id": 1 }
|
Description |
此方法允许删除主机。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个主机 { "jsonrpc": "2.0", "method": "host.delete", "params": [ "13", "32" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象其中包含在hostids属性下已删除主机的ID。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostids": [ "13", "32" ] }, "id": 1 }
|
Description |
此方法允许根据指定的参数获取主机。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:根据名称检索数据 检索所有关于主机名为“Zabbix server”和“Linux server”的数据。 { "jsonrpc": "2.0", "method": "host.get", "params": { "filter": { "host": [ "Zabbix server", "Linux server" ] } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
示例二:检索主机组 检索主机“Zabbix server”隶属于的组名,但是不检索主机本身的详情。 { "jsonrpc": "2.0", "method": "host.get", "params": { "output": ["hostid"], "selectGroups": "extend",//返回在groups属性中主机所属的主机组。 "filter": { "host": [ "Zabbix server" ] } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 2 }
示例三:检索相关模板 检索主机“10084”相关模板的ID和名称。 { "jsonrpc": "2.0", "method": "host.get", "params": { "output": ["hostid"], "selectParentTemplates": [ //返回在parentTemplates属性中与主机关联的模板。支持count。 "templateid", "name" ], "hostids": "10084" }, "id": 1, "auth": "70785d2b494a7302309b48afcdb3a401" }
示例四:根据主机资产清单数据搜索 检索在资产清单“OS”字段中包含“Linux”的主机。 { "jsonrpc": "2.0", "method": "host.get", "params": { "output": [ "host" ], "selectInventory": [ //返回在inventory属性中主机里的主机资产清单。 "os" ], "searchInventory": { //仅返回与指定通配符搜索资产清单数据匹配的主机。这个参数被相同其他参数,比如参数search所影响。 "os": "Linux" } }, "id": 2, "auth": "7f9e00124c75e8f25facd5c093f3e9a0" }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "maintenances": [], "hostid": "10160", //(只读)主机的ID。 "proxy_hostid": "0",//用于监控主机的代理服务器 ID。 "host": "Zabbix server",//主机的正式名称。(required) "status": "0",//主机的状态和功能。可能的值为: "disable_until": "0",//(只读)对失效Zabbix agent下一次的轮询时间。 "error": "",//(只读)Zabbix agent失效的错误文本。 "available": "0",//(只读)Zabbix agent的可用性。可能的值为: "errors_from": "0",//(只读)当Zabbix agent失效时的时间。 "lastaccess": "0", //代理上次连接到服务器的时间。 "ipmi_authtype": "-1",//IPMI认证算法。可能的值为: "ipmi_privilege": "2",//IPMI特权级别。可能的值为: "ipmi_username": "",//IPMI用户名。 "ipmi_password": "",//IPMI密码。 "ipmi_disable_until": "0",//(只读)对失效IPMI agent下一次的轮询时间。 "ipmi_available": "0",//(只读)IPMI agent的可用性。可能的值为:0 - (default) unknown;(默认)未知; 2 - unavailable. 失效。 "snmp_disable_until": "0",//(只读)对失效SNMP agent下一次的轮询时间。 "snmp_available": "0",(只读)SNMP agent的可用性。可能的值为:0 - (default) unknown;(默认)未知; "maintenanceid": "0",//(只读)当前对主机起效的管理ID。 "maintenance_status": "0",//(只读)有效管理的状态。可能的值为: "maintenance_type": "0",//(只读)有效管理的类型。可能的值为: "maintenance_from": "0",//(只读)开始有效管理的时间。 "ipmi_errors_from": "0",//(只读)当IPMI agent失效时的时间。 "snmp_errors_from": "0",//(只读)当SNMP agent失效时的时间。 "ipmi_error": "",//(只读)IPMI agent失效的错误文本。 "snmp_error": "",//(只读)SNMP agent失效的错误文本。 "jmx_disable_until": "0",//(只读)对失效JMX agent下一次的轮询时间。 "jmx_available": "0",//(只读)JMX agent的可用性。可能的值为:0 - (default) unknown;(默认)未知; "jmx_errors_from": "0",//(只读)当JMX agent失效时的时间。 "jmx_error": "",//(只读)JMX失效的错误文本。 "name": "Zabbix server",//主机显示名称。 "description": "The Zabbix monitoring server.",//主机说明。 "tls_connect": "1", "tls_accept": "1", "tls_issuer": "",//证书颁布者。 "tls_subject": "",//证书标题 "tls_psk_identity": "",//PSK身份,若要启用tls_connect或tls_accept,就必须启用PSK。 "tls_psk": ""//PSK至少需要32位16进制数字构成。若要启用tls_connect或tls_accept,就必须启用PSK。 }, { "maintenances": [], "hostid": "10167", "proxy_hostid": "0", "host": "Linux server", "status": "0", "disable_until": "0", "error": "", "available": "0", "errors_from": "0", "lastaccess": "0", "ipmi_authtype": "-1", "ipmi_privilege": "2", "ipmi_username": "", "ipmi_password": "", "ipmi_disable_until": "0", "ipmi_available": "0", "snmp_disable_until": "0", "snmp_available": "0", "maintenanceid": "0", "maintenance_status": "0", "maintenance_type": "0", "maintenance_from": "0", "ipmi_errors_from": "0", "snmp_errors_from": "0", "ipmi_error": "", "snmp_error": "", "jmx_disable_until": "0", "jmx_available": "0", "jmx_errors_from": "0", "jmx_error": "", "name": "Linux server", "description": "", "tls_connect": "1", "tls_accept": "1", "tls_issuer": "", "tls_subject": "", "tls_psk_identity": "", "tls_psk": "" } ], "id": 1 }
对应示例二: { "jsonrpc": "2.0", "result": [ { "hostid": "10085", "groups": [ { "groupid": "2", "name": "Linux servers", "internal": "0", "flags": "0" //(只读)主机的来源。可能的值为: }, { "groupid": "4", "name": "Zabbix servers", "internal": "0", "flags": "0" } ] } ], "id": 2 }
对应示例三: { "jsonrpc": "2.0", "result": [ { "hostid": "10084", "parentTemplates": [ { "name": "Template OS Linux", "templateid": "10001" }, { "name": "Template App Zabbix Server", "templateid": "10047" } ] } ], "id": 1 }
对应示例四: { "jsonrpc": "2.0", "result": [ { "hostid": "10084", "host": "Zabbix server", "inventory": { "os": "Linux Ubuntu" } }, { "hostid": "10107", "host": "Linux server", "inventory": { "os": "Linux Mint" } } ], "id": 1 }
|
Description |
该方法允许更新目前的主机。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:启用一个主机 启用主机监控,例如,把主机状态设置为0。 { "jsonrpc": "2.0", "method": "host.update", "params": { "hostid": "10126", "status": 0 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
示例二:删除模板链接 从主机中删除链接并清除两个模板。 { "jsonrpc": "2.0", "method": "host.update", "params": { "hostid": "10126", "templates_clear": [ //从主机中删除模板链接并清除。模板必须已定义过templateid属性。 { "templateid": "10124" }, { "templateid": "10125" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
示例三:更新主机的宏 用两个新的宏替换主机所有的宏。 { "jsonrpc": "2.0", "method": "host.update", "params": { "hostid": "10126", "macros": [ //替换当前用户宏。 { "macro": "{$PASS}", "value": "password" }, { "macro": "{$DISC}", "value": "sda" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
示例四:更新主机资产清单 更改资产清单模式并添加地点。 { "jsonrpc": "2.0", "method": "host.update", "params": { "hostid": "10387", "inventory_mode": 0, "inventory": { "location": "Latvia, Riga" } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象其中包含在hostids属性下已更新主机的ID。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostids": [ "10126" ] }, "id": 1 }
对应示例二: { "jsonrpc": "2.0", "result": { "hostids": [ "10126" ] }, "id": 1 }
对应示例三: { "jsonrpc": "2.0", "result": { "hostids": [ "10126" ] }, "id": 1 }
对应示例四: { "jsonrpc": "2.0", "result": { "hostids": [ "10387" ] }, "id": 2 }
|
Description |
此方法允许同时添加多个相关对象到指定的主机。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:添加宏 添加两个新的宏到两个主机中。 { "jsonrpc": "2.0", "method": "host.massadd", "params": { "hosts": [ //需要更新的主机.主机必须已定义过hostid属性。(required) { "hostid": "10160" }, { "hostid": "10167" } ], "macros": [ //为指定主机创建的宏。 { "macro": "{$TEST1}", "value": "MACROTEST1" }, { "macro": "{$TEST2}", "value": "MACROTEST2" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象其中包含在hostids属性下已更新主机的ID。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostids": [ "10160", "10167" ] }, "id": 1 }
|
Description |
此方法允许从多个主机中移除相关对象。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除模板链接 从两个主机中删除一个模板链接并且删除所有模板实体。 { "jsonrpc": "2.0", "method": "host.massremove", "params": { "hostids": ["69665", "69666"], //需要更新的主机ID。(required) "templateids_clear": "325" //从指定主机中删除并清除模板链接。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象其中包含在hostids属性下已更新主机的ID。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostids": [ "69665", "69666" ] }, "id": 1 }
|
Description |
此方法允许同时替换或移除相关对象和在多个主机中更新属性。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:启用多个主机 启用两个主机的监控,例如,把这两个主机的状态设置为0。 { "jsonrpc": "2.0", "method": "host.massupdate", "params": { "hosts": [ //(required) { "hostid": "69665" }, { "hostid": "69666" } ], "status": 0 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象其中包含在hostids属性下已更新主机的ID |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostids": [ "69665", "69666" ] }, "id": 1 }
|
Description |
该方法检查给定的主机是否可用于读取。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个主机 检查两台主机是否可读。 { "jsonrpc": "2.0", "method": "host.isreadable", "params": [ "143", "943" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的主机可用于读取,则返回true |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法检查给定主机是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个主机 检查两台主机是否可写。 { "jsonrpc": "2.0", "method": "host.iswritable", "params": [ "143", //主机 "943" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定主机可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法允许创建新的主机组。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建主机组 创建一个名为“Linux servers”的主机组。 { "jsonrpc": "2.0", "method": "hostgroup.create", "params": { "name": "Linux servers" //主机组的名称(required) }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含“groupids”属性下创建的主机组的ID的对象。返回的ID的顺序与传递的主机组的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "groupids": [ "107819" //主机组的ID ] }, "id": 1 }
|
Description |
此方法允许删除主机组。 如果主机组有以下情况,则不能被删除: ①它只包含属于此组的主机; ②被标记为内部; ③被主机原型使用; ④在全局脚本中使用; ⑤在相关条件下使用。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个主机组 删除两个主机组 { "jsonrpc": "2.0", "method": "hostgroup.delete", "params": [ "107824", "107825" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含“groupids”属性下删除的主机组的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "groupids": [ "107824", "107825" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数检索主机组。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:按名称检索数据 检索所有关于主机组组名为“Zabbix server”和“Linux server”的数据。 { "jsonrpc": "2.0", "method": "hostgroup.get", "params": { "output": "extend", "filter": { "name": [ "Zabbix servers", //主机组的名称 "Linux servers" ] } }, "auth": "6f38cddc44cfbb6c1bd186f9a220b5a0", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "groupid": "2", "name": "Linux servers", "internal": "0" //该组是否由系统内部使用。无法删除内部组。(readonly).可能的额值: }, { "groupid": "4", "name": "Zabbix servers", "internal": "0" } ], "id": 1 }
|
Description |
此方法允许更新现有的主机组。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:重命名主机组 将主机组命名为“Linux hosts”。 { "jsonrpc": "2.0", "method": "hostgroup.update", "params": { "groupid": "7", "name": "Linux hosts" //(required) }, "auth": "700ca65537074ec963db7efabda78259", "id": 1 }
|
返回值 |
返回包含“groupids”属性下更新的主机组的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "groupids": [ "7" ] }, "id": 1 }
|
Description |
该方法允许同时向所有给定的主机组添加多个相关对象。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:将主机添加到主机组 将两个主机添加到ID为5和6的主机组。 { "jsonrpc": "2.0", "method": "hostgroup.massadd", "params": { "groups": [ //要更新的主机组。主机组必须定义“groupid”属性。(required) { "groupid": "5" }, { "groupid": "6" } ], "hosts": [ //添加到主机组的所有主机。 { "hostid": "30050" }, { "hostid": "30001" } ] }, "auth": "f223adf833b2bf2ff38574a67bba6372", "id": 1 }
|
返回值 |
返回包含“groupids”属性下更新的主机组的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "groupids": [ "5", "6" ] }, "id": 1 }
|
Description |
此方法允许从多个主机组中删除相关对象。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:从主机组中删除主机 从给定的主机组中删除两个主机。 { "jsonrpc": "2.0", "method": "hostgroup.massremove", "params": { "groupids": [ //要更新的主机组的ID。(required) "5", "6" ], "hostids": [ //要从所有主机组中删除的主机。 "30050", "30001" ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含“groupids”属性下更新的主机组的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "groupids": [ "5", "6" ] }, "id": 1 }
|
Description |
该方法允许同时替换或删除多个主机组的相关对象。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:更换主机组中的主机 用ID替换主机组中的所有主机。 { "jsonrpc": "2.0", "method": "hostgroup.massupdate", "params": { "groups": [ //要更新的主机组。主机组必须定义“groupid”属性。(required) { "groupid": "6" } ], "hosts": [ //主机替换给定主机组上的当前主机。主机必须定义“hostid”属性。 { "hostid": "30050" } ] }, "auth": "f223adf833b2bf2ff38574a67bba6372", "id": 1 }
|
返回值 |
返回包含“groupids”属性下更新的主机组的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "groupids": [ "6", ] }, "id": 1 }
|
Description |
该方法检查给定的主机组是否可用于读取。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个主机组 检查两个主机组是否可读。 { "jsonrpc": "2.0", "method": "hostgroup.isreadable", "params": [ "5", "7" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定主机组可用于读取,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法检查给定主机组是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个主机 检查两个主机组是否可写。 { "jsonrpc": "2.0", "method": "hostgroup.iswritable", "params": [ "5", "7" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定主机组可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法允许创建新的Web场景。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个主机创建Web场景 创建一个Web场景来监视公司主页。 该方案将有两个步骤,以检查主页和“About”页面,并确保它们返回HTTP状态代码200。 { "jsonrpc": "2.0", "method": "httptest.create", "params": { "name": "Homepage check", //Web场景的名称(required) "hostid": "10085", //Web场景所属主机的ID。(required) "steps": [ //Web方案步骤。(required) { "name": "Homepage",//场景步骤的名称。(required) "url": "http://mycompany.com", //要检查的URL。(required) "status_codes": 200,//所需HTTP状态代码的范围用逗号分隔。 "no": 1 //Web场景中步骤的序列号。(required) }, { "name": "Homepage / About", "url": "http://mycompany.com/about", "status_codes": 200, "no": 2 } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回一个包含“httptestids”属性下创建的Web场景的ID的对象。 返回的ID的顺序与传递的Web方案的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "httptestids": [ "5" //Web场景的ID ] }, "id": 1 }
|
Description |
此方法允许删除Web场景。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个Web场景 删除2个Web场景 { "jsonrpc": "2.0", "method": "httptest.delete", "params": [ "2", "3" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含“httptestids”属性下删除的Web方案的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "httptestids": [ "2", "3" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数检索Web场景。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:检索网络场景 检索有关Web场景“4”的所有数据。 { "jsonrpc": "2.0", "method": "httptest.get", "params": { "output": "extend", "selectSteps": "extend", //在steps属性中返回Web方案步骤。 "httptestids": "9" //只返回具有给定ID的Web场景。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "httptestid": "9", //Web场景的ID "name": "Homepage check", //Web场景的名称 "applicationid": "0",//Web场景所属应用程序的ID "nextcheck": "0", //下一个Web场景执行的时间。(readonly) "delay": "60",//Web方案的执行间隔(以秒为单位)。Default: 60. "status": "0", //是否启用了Web方案。 可能的值: "variables": "", //Web场景变量。 "agent": "Zabbix", //将由Web场景使用的用户代理字符串。默认: Zabbix "authentication": "0",//将由Web场景使用的身份验证方法。 可能的值: 0 - (默认) 无; 1 - 基本的HTTP认证; "http_user": "", //用于认证的用户名.对于具有基本HTTP或NTLM身份验证的Web场景,必需。 "http_password": "", //用于认证的密码。对于具有基本HTTP或NTLM身份验证的Web场景是必需的. "hostid": "10084", //Web场景所属主机的ID。 "templateid": "0", //(readonly) 父模板Web方案的ID。 "http_proxy": "", //将由Web场景使用的代理http://[username[:password]@]proxy.example.com[:port]. "retries": "1", //Web场景在失败之前尝试执行每个步骤的次数。默认: 1. "ssl_cert_file": "", //用于客户端身份验证的SSL证书文件的名称(必须为PEM格式)。 "ssl_key_file": "", //用于客户端认证的SSL私钥文件的名称(必须为PEM格式)。 "ssl_key_password": "", //SSL私钥密码。 "verify_peer": "0", //是否验证Web服务器的SSL证书。 可能的值: 0 - (默认) 跳过对等验证; 1 - 验证对等 "verify_host": "0", //验证SSL证书中指定的主机名是否与场景中使用的主机名相匹配。 可能的值: "headers": "", //执行请求时将发送的HTTP标题。 "steps": [ { "httpstepid": "36", //(readonly) 情景步骤的ID "httptestid": "9", //(readonly) 该步骤所属的Web方案的ID。 "name": "Homepage", "no": "1", "url": "http://mycompany.com", "timeout": "15", //在几秒钟内请求超时。 "posts": "", //HTTP POST变量作为字符串。 "required": "", //必须在响应中存在的文本 "status_codes": "200", //所需HTTP状态代码的范围用逗号分隔。 "variables": "", //情景步骤变量。 "follow_redirects": "1", //是否遵循HTTP重定向.可能的值: "retrieve_mode": "0", //方案步骤必须检索的HTTP响应的一部分。 可能的值: "headers": "" //执行请求时将发送的HTTP标题。方案步骤标题将覆盖为Web方案指定的标题。 }, { "httpstepid": "37", "httptestid": "9", "name": "Homepage / About", "no": "2", "url": "http://mycompany.com/about", "timeout": "15", "posts": "", "required": "", "status_codes": "200", "variables": "", "follow_redirects": "1", "retrieve_mode": "0", "headers": "" } ] } ], "id": 1 }
|
Description |
此方法允许更新现有的Web场景。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:启用Web场景 启用Web方案,即将其状态设置为“0”。 { "jsonrpc": "2.0", "method": "httptest.update", "params": { "httptestid": "5", "status": 0 }, "auth": "700ca65537074ec963db7efabda78259", "id": 1 }
|
返回值 |
返回包含httptestid属性下已更新的Web场景的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "httptestids": [ "5" ] }, "id": 1 }
|
Description |
此方法检查给定的Web场景是否可供阅读。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个网络场景 检查两个Web场景是否可读。 { "jsonrpc": "2.0", "method": "httptest.isreadable", "params": [ "3", "5" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的Web场景可供阅读,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法检查给定的Web场景是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个网络场景 检查两个Web场景是否可写。 { "jsonrpc": "2.0", "method": "httptest.iswritable", "params": [ "3", "5" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的Web场景可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法允许创建新模板. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建模板 创建一个模板并将其链接到两个主机。 { "jsonrpc": "2.0", "method": "template.create", "params": { "host": "Linux template", //模板的技术性名称.(required) "groups": { //将模板添加到主机组.主机组必须定义groupid属性。(required) "groupid": 1 }, "hosts": [ //链接模板的主机. { "hostid": "10084" }, { "hostid": "10090" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回一个对象,它包含templateids属性下创建的模板的ID,返回的ID的顺序与传递的模板的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "templateids": [ //要链接到模板的模板.模板必须定义templateid属性. "10086" ] }, "id": 1 }
|
Description |
此方法允许删除模板. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个模板 删除两个模板. { "jsonrpc": "2.0", "method": "template.delete", "params": [ "13", "32" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象,该对象包含templateids属性下删除的模板的ID. |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "templateids": [ "13", "32" ] }, "id": 1 }
|
Description |
该方法允许根据指定的参数检索模板. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:按名称检索模板 检索有关名为“Template OS Linux”和“Template OS Windows”的两个模板的所有数据. { "jsonrpc": "2.0", "method": "template.get", "params": { "output": "extend", "filter": { "host": [ "Template OS Linux", "Template OS Windows" ] } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "proxy_hostid": "0", "host": "Template OS Linux",//模板的技术性名称. "status": "3", "disable_until": "0", "error": "", "available": "0", "errors_from": "0", "lastaccess": "0", "ipmi_authtype": "0", "ipmi_privilege": "2", "ipmi_username": "", "ipmi_password": "", "ipmi_disable_until": "0", "ipmi_available": "0", "snmp_disable_until": "0", "snmp_available": "0", "maintenanceid": "0", "maintenance_status": "0", "maintenance_type": "0", "maintenance_from": "0", "ipmi_errors_from": "0", "snmp_errors_from": "0", "ipmi_error": "", "snmp_error": "", "jmx_disable_until": "0", "jmx_available": "0", "jmx_errors_from": "0", "jmx_error": "", "name": "Template OS Linux", "flags": "0", "templateid": "10001", //模板的ID。 "description": "", //模板说明. "tls_connect": "1", "tls_accept": "1", "tls_issuer": "", "tls_subject": "", "tls_psk_identity": "", "tls_psk": "" }, { "proxy_hostid": "0", "host": "Template OS Windows", "status": "3", "disable_until": "0", "error": "", "available": "0", "errors_from": "0", "lastaccess": "0", "ipmi_authtype": "0", "ipmi_privilege": "2", "ipmi_username": "", "ipmi_password": "", "ipmi_disable_until": "0", "ipmi_available": "0", "snmp_disable_until": "0", "snmp_available": "0", "maintenanceid": "0", "maintenance_status": "0", "maintenance_type": "0", "maintenance_from": "0", "ipmi_errors_from": "0", "snmp_errors_from": "0", "ipmi_error": "", "snmp_error": "", "jmx_disable_until": "0", "jmx_available": "0", "jmx_errors_from": "0", "jmx_error": "", "name": "Template OS Windows", "flags": "0", "templateid": "10081", "description": "", "tls_connect": "1", "tls_accept": "1", "tls_issuer": "", "tls_subject": "", "tls_psk_identity": "", "tls_psk": "" } ], "id": 1 }
|
Description |
此方法允许更新现有模板. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:重命名模板 将模板重命名为“Template OS Linux”. { "jsonrpc": "2.0", "method": "template.update", "params": { "templateid": "10086", //(readonly) 模板的ID. "name": "Template OS Linux" //主机的可见名称.Default: host }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象,它包含templateids属性下更新的模板的ID. |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "templateids": [ "10086" ] }, "id": 1 }
|
Description |
该方法允许同时向给定的模板添加多个相关对象。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:将模板添加到组 将两个模板添加到主机组“2”。 { "jsonrpc": "2.0", "method": "template.massadd", "params": { "templates": [ //要更新的模板.模板必须定义templateid属性.(required) { "templateid": "10085" }, { "templateid": "10086" } ], "groups": [ //主机组添加指定的模板.主机组必须定义groupid属性. { "groupid": "2" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
示例二:将模板链接到主机 链接模板“10073”到两个主机。 { "jsonrpc": "2.0", "method": "template.massadd", "params": { "templates": [ //要更新的模板.模板必须定义templateid属性.(required) { "templateid": "10073" } ], "hosts": [ //将给定模板链接到的主机和模板.主机必须定义hostid属性.(required)
{ "hostid": "10106" }, { "hostid": "10104" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象,它包含templateids属性下更新的模板的ID |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "templateids": [ "10085", "10086" ] }, "id": 1 }
对应示例二: { "jsonrpc": "2.0", "result": { "templateids": [ "10073" ] }, "id": 1 }
|
Description |
该方法允许从多个模板中删除相关对象. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:从组中删除模板 从组“2”中删除两个模板. { "jsonrpc": "2.0", "method": "template.massremove", "params": { "templateids": [ //要更新的模板的ID.(required) "10085", "10086" ], "groupids": "2" //删除给定的模板操作的主机组. }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
示例二:从主机取消链接模板 从两个主机取消链接模板“10085”. { "jsonrpc": "2.0", "method": "template.massremove", "params": { "templateids": "10085", 要更新的模板的ID.(required) "hostids": [ //取消给定链接模板操作的主机. "10106", "10104" ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象,它包含templateids属性下更新的模板的ID. |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "templateids": [ "10085", "10086" ] }, "id": 1 }
对应示例二: { "jsonrpc": "2.0", "result": { "templateids": [ "10085" ] }, "id": 1 }
|
Description |
此方法允许同时替换或删除相关对象并更新多个模板上的属性. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:更换主机组 从给定的模板中取消链接并清除模板“10091”. { "jsonrpc": "2.0", "method": "template.massupdate", "params": { "templates": [ //要更新的模板.模板必须定义templateid属性.(required) { "templateid": "10085" }, { "templateid": "10086" } ], "templates_clear": [ //从指定模板中取消链接和清除的模板.模板必须定义templateid属性 { "templateid": "10091" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象,它包含templateids属性下更新的模板的ID. |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "templateids": [ "10085", "10086" ] }, "id": 1 }
|
Description |
该方法检查给定模板是否可用于读取。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个模板 检查两个模板是否可读。 { "jsonrpc": "2.0", "method": "template.isreadable", "params": [ "10001", "10081" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定模板可用于读取,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法检查给定模板是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个模板 检查两个模板是否可写。 { "jsonrpc": "2.0", "method": "template.iswritable", "params": [ "10001", "10081" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定模板可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法允许根据给定的参数检索已发现的主机 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:获取通过发现规则发现的主机 检索发现规则“4”检测到的所有主机及其正在运行的已发现服务。 { "jsonrpc": "2.0", "method": "dhost.get", "params": { "output": "extend", "selectDServices": "extend", //在dservices属性中返回在主机上运行的发现服务。支持 count. "druleids": "4" //只返回给定发现规则(ID)创建的已发现主机. }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": [ { "dservices": [ //已发现服务 { "dserviceid": "1", //已发现服务的ID. "dhostid": "1", //运行服务的被发现主机的ID. "type": "4", //发现的服务类型。服务类型与用于检测服务的发现检查的类型相匹配。 "key_": "", //Zabbix代理发现检查用于查找服务的密钥。 "value": "", //当使用Zabbix Agent, SNMPv1,SNMPv2,SNMPv3做发现检查时,服务的返回值. "port": "80", //服务的端口号. "status": "0", //服务状态. 可能的值: "lastup": "1337697227", //已发现服务最近一次存活的时间. "lastdown": "0", //已发现服务最近一次down掉的时间. "dcheckid": "5", //用于探测服务的发现检查项ID. "ip": "192.168.1.1", //运行服务主机的IP. "dns": "station.company.lan" //运行服务主机的DNS. } ], "dhostid": "1", //已发现主机的ID. "druleid": "4", //探测到主机的发现规则的ID. "status": "0", //已发现主机是否宕机的状态. 如果至少有一个存活的服务发现,则主机是存活的. 可能的值: "lastup": "1337697227", //已发现主机最近一次恢复的时间. "lastdown": "0" //已发现主机最近一次宕机的时间. }, { "dservices": [ { "dserviceid": "2", "dhostid": "2", "type": "4", "key_": "", "value": "", "port": "80", "status": "0", "lastup": "1337697234", "lastdown": "0", "dcheckid": "5", "ip": "192.168.1.4", "dns": "john.company.lan" } ], "dhostid": "2", "druleid": "4", "status": "0", "lastup": "1337697234", "lastdown": "0" }, { "dservices": [ { "dserviceid": "3", "dhostid": "3", "type": "4", "key_": "", "value": "", "port": "80", "status": "0", "lastup": "1337697234", "lastdown": "0", "dcheckid": "5", "ip": "192.168.1.26", "dns": "printer.company.lan" } ], "dhostid": "3", "druleid": "4", "status": "0", "lastup": "1337697234", "lastdown": "0" }, { "dservices": [ { "dserviceid": "4", "dhostid": "4", "type": "4", "key_": "", "value": "", "port": "80", "status": "0", "lastup": "1337697234", "lastdown": "0", "dcheckid": "5", "ip": "192.168.1.7", "dns": "mail.company.lan" } ], "dhostid": "4", "druleid": "4", "status": "0", "lastup": "1337697234", "lastdown": "0" } ], "id": 1 }
|
Description |
该方法允许根据给定的参数检索已发现的服务 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检索一台主机上已发现的服务 获取在已发现主机11上探测到发现的服务 { "jsonrpc": "2.0", "method": "dservice.get", "params": { "output": "extend", "dhostids": "11" //只返回指定已发现主机的发现服务 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": [ { "dserviceid": "12", "dhostid": "11", "type": "4", "key_": "", "value": "", "port": "80", "status": "1", "lastup": "0", "lastdown": "1348650607", "dcheckid": "5", "ip": "192.168.1.134", "dns": "john.local" }, { "dserviceid": "13", "dhostid": "11", "type": "3", "key_": "", "value": "", "port": "21", "status": "1", "lastup": "0", "lastdown": "1348650610", "dcheckid": "6", "ip": "192.168.1.134", "dns": "john.local" } ], "id": 1 }
|
Description |
该方法可以根据给定的参数检索发现检查 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:获取发现规则的发现检查 获取被发现规则“6”使用的发现检查. { "jsonrpc": "2.0", "method": "dcheck.get", "params": { "output": "extend", "dcheckids": "6" //返回给定ID的发现检查 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": [ { "dcheckid": "6", //发现检查的ID. "druleid": "4", //发现检查所属的发现规则的ID. "type": "3", //检查类型。可能的值: 0 - (默认)SSH; 1 - LDAP; 2 - SMTP; 3 - FTP; 4 - HTTP; 5 - POP; 6 - NNTP; 7 - IMAP; 8 - TCP; 9 - Zabbix agent; 10 - SNMPv1 agent; 11 - SNMPv2 agent; 12 - ICMP ping; 13 - SNMPv3 agent; 14 - HTTPS; 15 - Telnet。 "key_": "", //这个属性值会根据不同的检查类型而不同: - 需要查询Zabbix代理检查的关键; - 需要SNMPv1,SNMPv2和SNMPv3检查的SNMP OID。 "snmp_community": "", //SNMP社区。SNMPv1和SNMPv2代理程序检查必需。 "ports": "21", //一个或多个端口范围以逗号分隔。用于除ICMP之外的所有检查。Default: 0. "snmpv3_securityname": "", //用于SNMPv3代理检查的安全名称。 "snmpv3_securitylevel": "0", //用于SNMPv3代理检查的安全级别。可能的值: 0 - noAuthNoPriv; 1 - authNoPriv; 2 - authPriv。 "snmpv3_authpassphrase": "", //用于SNMPv3代理的身份验证密码将安全级别设置为authNoPriv或authPriv。 "snmpv3_privpassphrase": "", //用于SNMPv3代理的Priv密码短语将安全级别设置为authPriv。 "uniq": "0", //是否将此检查用作设备唯一性标准。只能为发现规则配置一个唯一的检查。用于Zabbix代理,SNMPv1,SNMPv2和SNMPv3代理检查。可能的值: 0 - (默认)不使用此检查作为唯一性标准; 1 - 使用此检查作为唯一性标准。 "snmpv3_authprotocol": "0", //用于SNMPv3代理的身份验证协议检查安全级别设置为authNoPriv或authPriv.Possible值:0 - (默认)MD5; 1 - SHA。 "snmpv3_privprotocol": "0" //用于SNMPv3代理的隐私协议检查,安全级别设置为authPriv.Possible值:0 - (默认)DES; 1 - AES。 } ], "id": 1 }
|
Description |
该方法允许创建新的发现规则 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建发现规则 创建一个发现规则,用于发现在本地网络中运行Zabbix Agent的主机. 规则必须用一个运行在10050端口上的Zabbix代理检查 { "jsonrpc": "2.0", "method": "drule.create", "params": { "name": "Zabbix agent discovery", //发现规则名称(required) "iprange": "192.168.1.1-255", //一个或多个要检查的IP范围,逗号分隔(required) "dchecks": [ //用来创建发现规则的发现检查。(required) { "type": "9", "key_": "system.uname", "ports": "10050", "uniq": "0" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含druleids属性下创建的发现规则ID的对象。返回的ID的顺序与传递的违规规则的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "druleids": [ "6" ] }, "id": 1 }
|
Description |
该方法允许删除发现规则. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个发现规则 删除两个发现规则. { "jsonrpc": "2.0", "method": "drule.delete", "params": [ "4", "6" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含druleids属性下已删除发现规则的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "druleids": [ "4", "6" ] }, "id": 1 }
|
Description |
该方法允许根据指定的参数检索模板. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:检索所有的发现规则 获取已经配置的发现规则及它们所使用的发现检查. { "jsonrpc": "2.0", "method": "drule.get", "params": { "output": "extend", "selectDChecks": "extend" //返回dchecks属性中发现规则使用的发现检查。支持 count。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "druleid": "2", //(只读)发现规则的ID "proxy_hostid": "0", //用于发现的代理的ID。 "name": "Local network", //发现规则名称 "iprange": "192.168.3.1-255", //一个或多个要检查的IP范围,逗号分隔 "delay": "5", //发现规则的执行时间间隔,以秒为单位。默认:3600。 "nextcheck": "1348754327", //(只读) 发现规则下一次执行的时间 "status": "0", //发现规则是否启用 可能的值: "dchecks": [ //发现检查 { "dcheckid": "7", "druleid": "2", "type": "3", "key_": "", "snmp_community": "", "ports": "21", "snmpv3_securityname": "", "snmpv3_securitylevel": "0", "snmpv3_authpassphrase": "", "snmpv3_privpassphrase": "", "uniq": "0", "snmpv3_authprotocol": "0", "snmpv3_privprotocol": "0" }, { "dcheckid": "8", "druleid": "2", "type": "4", "key_": "", "snmp_community": "", "ports": "80", "snmpv3_securityname": "", "snmpv3_securitylevel": "0", "snmpv3_authpassphrase": "", "snmpv3_privpassphrase": "", "uniq": "0", "snmpv3_authprotocol": "0", "snmpv3_privprotocol": "0" } ] }, { "druleid": "6", "proxy_hostid": "0", "name": "Zabbix agent discovery", "iprange": "192.168.1.1-255", "delay": "3600", "nextcheck": "0", "status": "0", "dchecks": [ { "dcheckid": "10", "druleid": "6", "type": "9", "key_": "system.uname", "snmp_community": "", "ports": "10050", "snmpv3_securityname": "", "snmpv3_securitylevel": "0", "snmpv3_authpassphrase": "", "snmpv3_privpassphrase": "", "uniq": "0", "snmpv3_authprotocol": "0", "snmpv3_privprotocol": "0" } ] } ], "id": 1 }
|
Description |
该方法允许更新已存在的发现规则. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:改变发现规则的IP范围 将发现规则的IP范围更改为192.168.2.1-255. { "jsonrpc": "2.0", "method": "drule.update", "params": { "druleid": "6", //(只读) 发现规则的ID "iprange": "192.168.2.1-255" //一个或多个要检查的IP范围,逗号分隔 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含druleids属性下更新的发现规则的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "druleids": [ "6" ] }, "id": 1 }
|
Description |
此方法检查给定的发现规则是否可用于读取。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个发现规则 检查两个发现规则是否可读。 { "jsonrpc": "2.0", "method": "drule.isreadable", "params": [ "5", "8" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的发现规则可用于读取,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法检查给定的发现规则是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个发现规则 检查两个发现规则是否可写。 { "jsonrpc": "2.0", "method": "drule.iswritable", "params": [ "5", "8" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的发现规则可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法允许创建新的应用集。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个应用集 创建一个应用集来存储 SNMP 监控项。 { "jsonrpc": "2.0", "method": "application.create", "params": { "name": "SNMP Items", //应用集名称。(required) "hostid": "10050" //应用集所属主机的 ID。 不能进行更新。(required) }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含applicationids属性下创建的应用集ID的对象。返回的ID的顺序与传递的应用集的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "applicationids": [ "356" ] }, "id": 1 }
|
Description |
此方法用于删除应用集。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个应用集 删除两个应用集 { "jsonrpc": "2.0", "method": "application.delete", "params": [ "356", "358" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含applicationids属性下已删除应用集的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "applicationids": [ "356", "358" ] }, "id": 1 }
|
Description |
该方法用于根据规定的参数获取应用集。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:从主机中检索应用集 从主机中根据名称排序检索所有的应用集。 { "jsonrpc": "2.0", "method": "application.get", "params": { "output": "extend", "hostids": "10001", //只返回指定主机所属的应用集。 "sortfield": "name" //使用规定的属性将结果分类。可能的值:applicationid 和name。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "applicationid": "13", //(只读)应用集的 ID "hostid": "10001", //应用集所属主机的 ID。 不能进行更新。 "name": "CPU", //应用集名称。 "templateids": [] //(只读) 上级模板应用集的 ID。 }, { "applicationid": "5", "hostid": "10001", "name": "Filesystems", "templateids": [] }, { "applicationid": "21", "hostid": "10001", "name": "General", "templateids": [] }, { "applicationid": "15", "hostid": "10001", "name": "Memory", "templateids": [] }, ], "id": 1 }
|
Description |
此方法用于更新目前的应用集。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:更新应用集的名称 更新应用集的名称为“Processes and performance”。 { "jsonrpc": "2.0", "method": "application.update", "params": { "applicationid": "13", "name": "Processes and performance" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个 applicationids 属性下已更新应用集的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "applicationids": [ "13" ] }, "id": 1 }
|
Description |
此方法用于同时添加多个监控项到指定的应用集。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:添加监控项到多个应用集 添加指定的监控项到两个应用集。 { "jsonrpc": "2.0", "method": "application.massadd", "params": { "applications": [ //需要更新的应用集。 应用集必须已定义好 applicationeid 属性。(required) { "applicationid": "247" }, { "applicationid": "246" } ], "items": [ //监控项加入到指定的应用集。监控项必须已定义好 itemid属性。 { "itemid": "22800" }, { "itemid": "22801" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含applicationids属性下已更新应用集的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "applicationids": [ "247", "246" ] }, "id": 1 }
|
Description |
此方法允许创建新的触发器. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个触发器 创建具有单个触发依赖关系的触发器. { "jsonrpc": "2.0", "method": "trigger.create", "params": { "description": "Processor load is too high on {HOST.NAME}", //触发器的名称.(required) "expression": "{Linux server:system.cpu.load[percpu,avg1].last()}>5", //生成触发表达式.触发器表达式必须以扩展形式给出。(required) "dependencies": [ //触发触发器依赖. 触发器必须定义triggerid属性. { "triggerid": "14062" //触发器的ID. } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回一个包含triggerids属性下创建触发器的ID的对象.返回的ID的顺序与传递的触发器的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "triggerids": [ "14102" ] }, "id": 1 }
|
Description |
此方法允许删除触发器. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个触发器 删除两个触发器. { "jsonrpc": "2.0", "method": "trigger.delete", "params": [ "12002", "12003" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回一个包含triggerids属性下的已删除触发器ID的对象 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "triggerids": [ "12002", "12003" ] }, "id": 1 }
|
Description |
该方法用于指定的参数检索触发器. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:从触发器ID中检索数据 检索触发器“14062”中使用的所有数据和功能. { "jsonrpc": "2.0", "method": "trigger.get", "params": { "triggerids": "14062", //只返回指定 ID 的触发器. "output": "extend", "selectFunctions": "extend" //函数对象表示触发器表达式中使用的函数,并具有以下属性: }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
示例二:在问题状态下检索触发器 检索在问题状态下的所有触发器的ID,名称和严重性,并按严重性级别按降序分类。 { "jsonrpc": "2.0", "method": "trigger.get", "params": { "output": [ "triggerid", //触发器的ID. "description", //触发器的名称. "priority" //触发器的严重性级别. 可能的值为: ], "filter": { //只返回与给定过滤器完全匹配的结果.接受一个数组,其中keys是属性名称,并且值是单个值或要匹配值的数组. 支持新增的过滤器: "value": 1 }, "sortfield": "priority", //给定属性的结果. "sortorder": "DESC" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "functions": [ //只返回指定函数所属的触发器. { "functionid": "13513", "itemid": "24350", "function": "diff", "parameter": "0" } ], "triggerid": "14062", //触发器的ID.触发器的ID. "expression": "{13513}>0", //生成触发表达式. "description": "/etc/passwd has been changed on {HOST.NAME}", //触发器的名称. "url": "", //与触发器相关联的URL. "status": "0", //触发器是启用还是禁用. 可能的值为: 0 - (default) enabled启用; "value": "0", //触发器是否处于OK或问题状态.可能的值为: 0 - (default) OK正常; "priority": "2", //触发器的严重性级别. 可能的值为: 0 - (default) not classified未分类; "lastchange": "0", //e触发器最后更改其状态的时间. "comments": "", //触发器的附加注释. "error": "", //如果在更新触发器的状态时出现任何问题,则显示文本错误. "templateid": "10016", //主模板触发器的ID. "type": "0", //触发器是否可以生成多个问题事件. "state": "0", //触发状态. 可能的值为: "flags": "0", //原始的触发器.可能的值是: "recovery_mode": "0", //OK事件生成模式. 可能的值为: 0 - (default) Expression表达式; "recovery_expression": "", //生成触发器恢复表达式. "correlation_mode": "0", //OK事件关闭. 可能的值为: 0 - (default) All problems所有问题; "correlation_tag": "", //用于匹配的标签. "manual_close": "0" //允许手动关闭. 可能的值为: 0 - (default) No不可以; } ], "id": 1 }
对应示例二: { "jsonrpc": "2.0", "result": [ { "triggerid": "13907", "description": "Zabbix self-monitoring processes < 100% busy", "priority": "4" //触发器的严重性级别. 可能的值为: 0 - (default) not classified未分类;
}, { "triggerid": "13824", "description": "Zabbix discoverer processes more than 75% busy", "priority": "3" } ], "id": 1 }
|
Description |
此方法用于更新目前的触发器. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:启用触发器 启用触发器,即将其状态设置为0。 { "jsonrpc": "2.0", "method": "trigger.update", "params": { "triggerid": "13938", "status": 0 //触发器是启用还是禁用. 可能的值为: 0 - (default) enabled启用; }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个triggerids 属性下已更新应用集的ID的对象 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "triggerids": [ "13938" ] }, "id": 1 }
|
Description |
此方法允许创建新的触发器依赖关系. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:添加触发器依赖关系 触发器“14092”依赖于触发器“13565.”。 { "jsonrpc": "2.0", "method": "trigger.adddependencies", "params": { "triggerid": "14092", //依赖触发器的ID.(required) "dependsOnTriggerid": "13565" //触发依赖的触发器的ID.(required) }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个对象,该对象包含triggerids属性下的依赖触发器的ID。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "triggerids": [ "14092" ] }, "id": 1 }
|
Description |
该方法允许从指定的触发器中删除所有的触发依赖关系. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:从多个触发器中删除依赖关系 从两个触发器中删除所有依赖关系. { "jsonrpc": "2.0", "method": "trigger.deleteDependencies", "params": [ { "triggerid": "14544" }, { "triggerid": "14545" } ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个包含'triggerids''属性下的受影响触发器的ID的对象 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "triggerids": [ "14544", "14545" ] }, "id": 1 }
|
Description |
该方法检查给定的触发器是否可用于读取。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个触发器 检查两个触发器是否可读。 { "jsonrpc": "2.0", "method": "trigger.isreadable", "params": [ "13938", "14062" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的触发器可用于读取,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法检查给定的触发器是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个触发器 检查两个触发器是否可写。 { "jsonrpc": "2.0", "method": "trigger.iswritable", "params": [ "13938", "14062" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的触发器可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法允许创建新的图像。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建图像 创建一个云图标。 { "jsonrpc": "2.0", "method": "image.create", "params": { "imagetype": 1, "name": "Cloud_(24)", //图像名称(required) "image": "iVBORw0KGgoAAAANSUhEUgAAABgAAAANCAYAAACzbK7QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAACmAAAApgBNtNH3wAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAIcSURBVDjLrZLbSxRRHMdPKiEiRQ89CD0s+N5j9BIMEf4Hg/jWexD2ZEXQbC9tWUFZimtLhswuZiVujK1UJmYXW9PaCUdtb83enL3P7s6ss5f5dc7EUsmqkPuFH3M4/Ob7+V0OAgC0UyDENFEU03rh1uNOs/lFG75o2i2/rkd9Y3Tgyj3HiaezbukdH9A/rP4E9vWi0u+Y4fuGnMf3DRgYc3Z/84YrQSkD3mgKhFAC+KAEK74Y2Lj3MjPoOokQ3Xyx/1GHeXCifbfO6lRPH/wi+AvZQhGSsgKxdB5CCRkCGPbDgMXBMbukTc4vK5/WRHizsq7fZl2LFuvE4T0BZDTXHtgv4TNUqlUolsqQL2qQwbDEXzBBTIJ7I4y/cfAENmHZF4XrY9Mc+X9HAFmoyXS2ddy1IOg6/KNyBcM0DFP/wFZFCcOy4N9Mw0YkCTOfhdL5AfZQXQBFn2t/ODXHC8FYVcoWjNEQ03qqwTJ5FdI44jg/msoB2Zd5ZKq3q6evA1FUS60bYyyj3AJf3V72HiLZJQxTtRLk1C2IYEg4mTNg63hPd1mOJd7Ict911OMNlWEf0nFxpCt16zcshTuLpGSwDDuPIfv0xzNyQYVGicC0cgUUDLM6Xp02lvvW/V2EBssnxlSGmWsxljw0znV9XfPLjTCW84r+cn7Jc8c2eWrbM6Wbe6/aTJbhJ/TNkWc9/xXW592Xb9iPkKnUfH8BKdLgFy0lDyQAAAAASUVORK5CYII=" //Base64编码图像。 编码图像的最大大小为1 MB。(required) }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回一个包含“imageids”属性下创建的图像ID的对象。返回的ID的顺序与传递的图像的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "imageids": [ "188" ] }, "id": 1 }
|
Description |
此方法允许删除图像。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个图像 删除两个图像 { "jsonrpc": "2.0", "method": "image.delete", "params": [ "188", "192" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回一个包含“imageids”属性下删除图像ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "imageids": [ "188", "192" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数检索图像 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:检索所有的发现规则 获取已经配置的发现规则及它们所使用的发现检查. { "jsonrpc": "2.0", "method": "image.get", "params": { "output": "extend", "select_image": true, //返回“image”属性中的Base64编码图像。 "imageids": "2" //只返回具有给定ID的图像 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "imageid": "2", //图像ID。 "imagetype": "1", //图像的类型。可能的值: "name": "Cloud_(24)", //图像名称 "image": "iVBORw0KGgoAAAANSUhEUgAAABgAAAANCAYAAACzbK7QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAACmAAAApgBNtNH3wAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAIcSURBVDjLrZLbSxRRHMdPKiEiRQ89CD0s+N5j9BIMEf4Hg/jWexD2ZEXQbC9tWUFZimtLhswuZiVujK1UJmYXW9PaCUdtb83enL3P7s6ss5f5dc7EUsmqkPuFH3M4/Ob7+V0OAgC0UyDENFEU03rh1uNOs/lFG75o2i2/rkd9Y3Tgyj3HiaezbukdH9A/rP4E9vWi0u+Y4fuGnMf3DRgYc3Z/84YrQSkD3mgKhFAC+KAEK74Y2Lj3MjPoOokQ3Xyx/1GHeXCifbfO6lRPH/wi+AvZQhGSsgKxdB5CCRkCGPbDgMXBMbukTc4vK5/WRHizsq7fZl2LFuvE4T0BZDTXHtgv4TNUqlUolsqQL2qQwbDEXzBBTIJ7I4y/cfAENmHZF4XrY9Mc+X9HAFmoyXS2ddy1IOg6/KNyBcM0DFP/wFZFCcOy4N9Mw0YkCTOfhdL5AfZQXQBFn2t/ODXHC8FYVcoWjNEQ03qqwTJ5FdI44jg/msoB2Zd5ZKq3q6evA1FUS60bYyyj3AJf3V72HiLZJQxTtRLk1C2IYEg4mTNg63hPd1mOJd7Ict911OMNlWEf0nFxpCt16zcshTuLpGSwDDuPIfv0xzNyQYVGicC0cgUUDLM6Xp02lvvW/V2EBssnxlSGmWsxljw0znV9XfPLjTCW84r+cn7Jc8c2eWrbM6Wbe6/aTJbhJ/TNkWc9/xXW592Xb9iPkKnUfH8BKdLgFy0lDyQAAAAASUVORK5CYII=" } ], "id": 1 }
|
Description |
该方法允许更新现有的图像。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:重命名图像 .将图像重命名为“Cloud icon”。 { "jsonrpc": "2.0", "method": "image.update", "params": { "imageid": "2", "name": "Cloud icon" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含“imageids”属性下更新的图像的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "imageids": [ "2" ] }, "id": 1 }
|
Description |
创建聚合图形项目的方法. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个聚合图形项目 在聚合图形的左上角创建一个显示图形的聚合图形项目. { "jsonrpc": "2.0", "method": "screenitem.create", "params": { "screenid": 16, //聚合图形ID(required) "resourcetype": 0, //(required)聚合图形项目类型.可用值: "resourceid": 612, //聚合图形项目显示对象的ID. 根据聚合图形项目类型,“resourceid”属性可以引用不同的对象. 聚合图形项目所需要的数据概述,图形,映射,纯文本,聚合图形,简单图形和触发器概述的数据. 聚合图形项目不使用本地和服务器的时钟,历史动作,历史事件,主机信息,zabbix状态,系统状态和URL聚合图形项目. "x": 0, //聚合图形项目在聚合图形的X轴,从左到右. "y": 0 //聚合图形项目在聚合图形的Y轴, 从上到下. }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含screenitemids属性下创建的聚合图形项目的ID的对象。返回的ID的顺序与传递的聚合图形项目的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "screenitemids": [ "65" ] }, "id": 1 }
|
Description |
删除聚合图形项目的方法. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个聚合图形项目 删除两个聚合图形项目 { "jsonrpc": "2.0", "method": "screenitem.delete", "params": [ "65", 删除聚合图形项目的ID. "63" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含screenitemids属性下已删除的聚合图形项目的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "screenitemids": [ "65", "63" ] }, "id": 1 }
|
Description |
根据给定的参数检索聚合图形项目的方法. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:从屏幕上检索聚合图形项目 从给定聚合图形中检索所有聚合图形项目。 { "jsonrpc": "2.0", "method": "screenitem.get", "params": { "output": "extend", "screenids": "3" //返回聚合图形给定的聚合图形项目. }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "screenitemid": "20", //(只读) 聚合图形项目ID "screenid": "3", //聚合图形ID. "resourcetype": "0",//聚合图形项目类型. 可用值: "resourceid": "433", //聚合图形项目显示对象的ID. 根据聚合图形项目类型,“resourceid”属性可以引用不同的对象. 聚合图形项目所需要的数据概述,图形,映射,纯文本,聚合图形,简单图形和触发器概述的数据. 聚合图形项目不使用本地和服务器的时钟,历史动作,历史事件,主机信息,zabbix状态,系统状态和URL聚合图形项目. "width": "500", //聚合图形项目宽度(单位:像素). "height": "120", //聚合图形项目的高度(单位:像素). 默认值: 200. "x": "0", //聚合图形项目在聚合图形的X轴,从左到右. 默认值: 0. "y": "0", //聚合图形项目在聚合图形的Y轴, 从上到下. 默认值: 0. "colspan": "1", //聚合图形项目的列数量. 默认值: 1. "rowspan": "1", //聚合图形项目的行数量. "elements": "0", //聚合图形项目显示的行数量. 默认值: 25. "valign": "1", //指定聚合图形项目中的垂直排列的方式. 可用值: "halign": "0", //指定聚合图形项目的水平对齐方式. 可用值: 0 - (默认值) 居中; "style": "0", //聚合图形项目显示选项. "url": "", //聚合图形项目中显示Web页面的URL信息,用于Web监控聚合图形项目. "dynamic": "0", //聚合图形项目是否动态. 可用值: 0 - (默认值) 不动态; "sort_triggers": "0", //对动作或触发器进行必要的排序. "application": "", //应用或部分应用用作聚合图形项目的过滤条件,适用于资源类型:“Data overview”和“Triggers overview”. "max_columns": "3" //指定图形原型或简单图形原型的最大显示列的数量. 默认值: 3. }, { "screenitemid": "21", "screenid": "3", "resourcetype": "0", "resourceid": "387", "width": "500", "height": "100", "x": "0", "y": "1", "colspan": "1", "rowspan": "1", "elements": "0", "valign": "1", "halign": "0", "style": "0", "url": "", "dynamic": "0", "sort_triggers": "0", "application": "", "max_columns": "3" }, { "screenitemid": "22", "screenid": "3", "resourcetype": "1", "resourceid": "10013", "width": "500", "height": "148", "x": "1", "y": "0", "colspan": "1", "rowspan": "1", "elements": "0", "valign": "1", "halign": "0", "style": "0", "url": "", "dynamic": "0", "sort_triggers": "0", "application": "", "max_columns": "3" }, { "screenitemid": "23", "screenid": "3", "resourcetype": "1", "resourceid": "22181", "width": "500", "height": "184", "x": "1", "y": "1", "colspan": "1", "rowspan": "1", "elements": "0", "valign": "1", "halign": "0", "style": "0", "url": "", "dynamic": "0", "sort_triggers": "0", "application": "", "max_columns": "3" } ], "id": 1 }
|
Description |
更新现有聚合图形项目的方法. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:设置聚合图形项目的大小 设置聚合图形项目的宽度为500px和高度为300px. { "jsonrpc": "2.0", "method": "screenitem.update", "params": { "screenitemid": "20", "width": 500, "height": 300 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含screenitemids属性下已更新聚合图形项目ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "screenitemids": [ "20" ] }, "id": 1 }
|
Description |
更新聚合图形给定单元格内的聚合图形项目方法,如果该单元格内容为空,则创建一个新的聚合图形项目. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:改变聚合图形项目的资源ID 改变位于聚合图形左上角聚合图形元素的资源ID. { "jsonrpc": "2.0", "method": "screenitem.updatebyposition", "params": [ { "screenid": "16", "x": 0, "y": 0, "resourceid": "644" } ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含screenitemids属性下已更新和创建的聚合图形项目ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "screenitemids": [ "66" ] }, "id": 1 }
|
Description |
该方法检查给定的聚合图形项目是否可用于阅读。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个聚合图形项目 检查两个聚合图形项目是否可读。 { "jsonrpc": "2.0", "method": "screenitem.isreadable", "params": [ "20", //要检查的聚合图形项目的ID。 "21" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的聚合图形项目可供阅读,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法检查给定的聚合图形项目是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个聚合图形项目 检查两个聚合图形项目是否可写。 { "jsonrpc": "2.0", "method": "screenitem.iswritable", "params": [ "20", "21" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的聚合图形项目可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法允许创建新screen。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个screen 创建一个名为“Graphs”的screen,其中包含2行3列,并将图形添加到左上角的单元格中。 { "jsonrpc": "2.0", "method": "screen.create", "params": { "name": "Graphs", //screen的名称.(required) "hsize": 3, //screen的宽度. Default: 1 "vsize": 2, //screen的高度. Default: 1 "screenitems": [ //要为screen创建的Screen items { "resourcetype": 0, //聚合图形项目类型. 可用值: (required) "resourceid": "612", //聚合图形项目显示对 象的ID. 根据聚合图形项目类型,“resourceid”属性可以引用不同的对象. 聚合图形项目所需要的数据概述,图形,映射,纯文本,聚合图形,简单图形和触发器概述的数据. 聚合图形项目不使用本地和服务器的时钟,历史动作,历史事件,主机信息,zabbix状态,系统状态和和URL聚合图形项目. "rowspan": 0, //聚合图形项目显示的行数量. "colspan": 0, //聚合图形项目的列数量. "x": 0, //聚合图形项目在聚合图形的X轴,从左到右. 默认值: 0. "y": 0 //聚合图形项目在聚合图形的Y轴, 从上到下. 默认值: 0. } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
示例二:Screen共享 用两种类型的共享(用户和用户组)创建一个screen。 { "jsonrpc": "2.0", "method": "screen.create", "params": { "name": "Screen sharing", //screen的名称.(required) "hsize": 3, "vsize": 2, "users": [ //在screen上创建screen用户共享。 { "userid": "4", //用户 ID.(required) "permission": "3" //(required)权限级别类型。 可能的值: 2 - 只读; } ], "userGroups": [ //在screen上创建screen用户组共享。 { "usrgrpid": "7", //用户组ID。(required) "permission": "2" //(required)权限级别类型。 可能的值: 2 - 只读; } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回一个包含“screenids”属性下创建的screen ID的对象。 返回的ID的顺序与传递的screen的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "screenids": [ "26" ] }, "id": 1 }
对应示例二: { "jsonrpc": "2.0", "result": { "screenids": [ "83" ] }, "id": 1 }
|
Description |
此方法允许删除screen。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个screen 删除两个screen. { "jsonrpc": "2.0", "method": "screen.delete", "params": [ "25", "26" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回一个包含“screenids”属性下删除的screen ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "screenids": [ "25", "26" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数检索screen。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:按ID检索Screen 检索关于screen“26”及其screenitem的所有数据。 { "jsonrpc": "2.0", "method": "screen.get", "params": { "output": "extend", "selectScreenItems": "extend", //返回screen中使用的screenitem。 "selectUsers": "extend", //返回在users属性中共享screen的用户。 "selectUserGroups": "extend", //返回在userGroups属性中共享screen的用户组。 "screenids": "26" //只返回具有给定ID的screen。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "screenitems": [ { "screenitemid": "67", "screenid": "26", "resourcetype": "0", "resourceid": "612", "width": "320", "height": "200", "x": "0", "y": "0", "colspan": "0", "rowspan": "0", "elements": "25", "valign": "0", "halign": "0", "style": "0", "url": "", "dynamic": "0", "sort_triggers": "0" } ], "users": [ { "sysmapuserid": "1", // "userid": "2", //用户 ID.(required) "permission": "2" //(required)权限级别类型。可能的值: 2 - 只读; } ], "userGroups": [ { "screenusrgrpid": "1", //(readonly) screen用户组的ID "usrgrpid": "7", //用户组ID。(required) "permission": "3" //(required)权限级别类型。 可能的值: 2 - 只读; } ], "screenid": "26", //(readonly) screen的ID. "name": "CPU Graphs", //screen的名称.(readonly) "hsize": "3", //screen的宽度. Default: 1 "vsize": "2", //screen的高度. Default: 1 "templateid": "0", "userid": "1", //Screen所有者用户ID. "private": "1" //screen sharing的类型. 可能的值: 0 - 公共screen; } ], "id": 1 }
|
Description |
此方法允许更新现有screen。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:重命名一个screen 将screen重命名为“CPU Graphs”。 { "jsonrpc": "2.0", "method": "screen.update", "params": { "screenid": "26", "name": "CPU Graphs" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
示例二:更改screen所有者 仅适用于管理员和超级管理员。 { "jsonrpc": "2.0", "method": "screen.update", "params": { "screenid": "83", "userid": "1" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 2 }
|
返回值 |
返回一个包含“screenids”属性下更新screen的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "screenids": [ "26" ] }, "id": 1 }
对应示例二: { "jsonrpc": "2.0", "result": { "screenids": [ "83" ] }, "id": 2 }
|
Description |
该方法允许根据给定的参数检索图形项目 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:从图形中检索图形项目 检索被图形使用的所有图形项目包含监控项和主机的额外信息 { "jsonrpc": "2.0", "method": "graphitem.get", "params": { "output": "extend", "graphids": "387" //只返回属于指定图形的图形项目。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "gitemid": "1242", //(readonly)图形项目的ID。 "graphid": "387", //图形项目所属图形的ID "itemid": "22665", //监控项的ID。(required) "drawtype": "1", //绘制图形项目的线型.可用值: "sortorder": "1", //图形中项目的排序.默认从零开始,每增加一个加1. "color": "FF5555", //绘制图形项目的颜色,使用十六进制码表示(required) "yaxisside": "0", //图形项目的Y轴画在图像的位置。 可用值: 0 - (default默认) left side左侧; "calc_fnc": "2", //监控项的显示的值.可用值: "type": "0", //图形类型.可用值: "key_": "system.cpu.util[,steal]", "hostid": "10001", "flags": "0", "host": "Template OS Linux" }, { "gitemid": "1243", "graphid": "387", "itemid": "22668", "drawtype": "1", "sortorder": "2", "color": "55FF55", "yaxisside": "0", "calc_fnc": "2", "type": "0", "key_": "system.cpu.util[,softirq]", "hostid": "10001", "flags": "0", "host": "Template OS Linux" }, { "gitemid": "1244", "graphid": "387", "itemid": "22671", "drawtype": "1", "sortorder": "3", "color": "009999", "yaxisside": "0", "calc_fnc": "2", "type": "0", "key_": "system.cpu.util[,interrupt]", "hostid": "10001", "flags": "0", "host": "Template OS Linux" } ], "id": 1 }
|
Description |
此方法允许创建新的图形。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个图形 创建一个有两个参数的图形 { "jsonrpc": "2.0", "method": "graph.create", "params": { "name": "MySQL bandwidth", //图形的名称(required) "width": 900, //图形的宽度(单位:像素)(required) "height": 200, //图形的高度(单位:像素)(required) "gitems": [ //创建到图形中的监控项 { "itemid": "22828", //监控项的ID。(required) "color": "00AA00" //.绘制图形项目的颜色,使用十六进制码表示(required) }, { "itemid": "22829", "color": "3333FF" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含graphids属性下创建的图形的ID的对象。返回的ID的顺序与传递的图形的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "graphids": [ "652" ] }, "id": 1 }
|
Description |
此方法允许删除图形。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个图形 删除两个图形 { "jsonrpc": "2.0", "method": "graph.delete", "params": [ "652", "653" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含graphids属性下已删除图形的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "graphids": [ "652", "653" ] }, "id": 1 }
|
Description |
此方法允许根据给定的参数返回图形 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:获取主机的所有图像 获取所有主机“10107”所有图形并对他们按名称排列。 { "jsonrpc": "2.0", "method": "graph.get", "params": { "output": "extend", "hostids": 10107, //返回只属于指定主机的图形。 "sortfield": "name" //指定的参数将结果排序.可用值: "graphid", "name" and "graphtype". }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "graphid": "612", //(readonly) 图形的ID "name": "CPU jumps", //图形的名称 "width": "900", //图形的宽度(单位:像素) "height": "200", //图形的高度(单位:像素) "yaxismin": "0.0000", //Y轴的固定最小值 "yaxismax": "100.0000", //Y轴的固定最大值 "templateid": "439", //(readonly)父模板图形ID "show_work_period": "1", //是否在图形上显示工作时间.可用值: 0 - hide;隐藏 "show_triggers": "1", "graphtype": "0", //图形类别。可用值: "show_legend": "1", //是否在图形上显示图例.可用值: 0 - hide;隐藏 "show_3d": "0", //是否以3D图形展示饼图和分散饼图.可用值: 0 - (default默认值) 以2D图展示 "percent_left": "0.0000", //百分比线(左) "percent_right": "0.0000", //百分比线(右) "ymin_type": "0", //Y轴最小值的计算方式.可用值: 0 - (default默认值) calculated可计算的; "ymax_type": "0", //Y轴最大值的计算方式.可用值: 0 - (default默认值) calculated;可计算的 "ymin_itemid": "0", //用于作为Y轴最小值的监控项ID "ymax_itemid": "0", //.用于作为Y轴最大值的监控项ID "flags": "0" //(readonly)图形的来源.可用值: }, { "graphid": "613", "name": "CPU load", "width": "900", "height": "200", "yaxismin": "0.0000", "yaxismax": "100.0000", "templateid": "433", "show_work_period": "1", "show_triggers": "1", "graphtype": "0", "show_legend": "1", "show_3d": "0", "percent_left": "0.0000", "percent_right": "0.0000", "ymin_type": "1", "ymax_type": "0", "ymin_itemid": "0", "ymax_itemid": "0", "flags": "0" }, { "graphid": "614", "name": "CPU utilization", "width": "900", "height": "200", "yaxismin": "0.0000", "yaxismax": "100.0000", "templateid": "387", "show_work_period": "1", "show_triggers": "0", "graphtype": "1", "show_legend": "1", "show_3d": "0", "percent_left": "0.0000", "percent_right": "0.0000", "ymin_type": "1", "ymax_type": "1", "ymin_itemid": "0", "ymax_itemid": "0", "flags": "0" }, { "graphid": "645", "name": "Disk space usage /", "width": "600", "height": "340", "yaxismin": "0.0000", "yaxismax": "0.0000", "templateid": "0", "show_work_period": "0", "show_triggers": "0", "graphtype": "2", "show_legend": "1", "show_3d": "1", "percent_left": "0.0000", "percent_right": "0.0000", "ymin_type": "0", "ymax_type": "0", "ymin_itemid": "0", "ymax_itemid": "0", "flags": "4" } ], "id": 1 }
|
Description |
此方法允许更新已经存在的图形。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:设置Y轴最大值刻度 设置Y轴最大值刻度固定为100. { "jsonrpc": "2.0", "method": "graph.update", "params": { "graphid": "439", "ymax_type": 1, //Y轴最大值的计算方式.可用值: "yaxismax": 100 //Y轴的固定最大值.Default:100 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含graphids属性下的更新图的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "graphids": [ "439" ] }, "id": 1 }
|
Description |
此方法用于创建新的图形原型 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个图形原型 创建一个含有两个监控项的图形原型 { "jsonrpc": "2.0", "method": "graphprototype.create", "params": { "name": "Disk space usage {#FSNAME}", "width": 900, "height": 200, "gitems": [ //创建到图形原型中的监控项.图形监控项能同时被监控项与监控项原型检索到,但必须至少有一个监控项原型。(required) { "itemid": "22828", "color": "00AA00" }, { "itemid": "22829", "color": "3333FF" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含graphids属性下创建的图形原型ID的对象。返回的ID的顺序与传递的图形原型的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "graphids": [ "652" ] }, "id": 1 }
|
Description |
此方法允许删除图形原型。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个图形原型 删除连个图形原型。 { "jsonrpc": "2.0", "method": "graphprototype.delete", "params": [ "652", "653" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含graphids属性下的已删除图形原型ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "graphids": [ "652", "653" ] }, "id": 1 }
|
Description |
此方法允许按照给定的参数检索图形原型。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:从一个低级发现规则检索图形原型 从一个低级发现规则检索图形原型 { "jsonrpc": "2.0", "method": "graphprototype.get", "params": { "output": "extend", "discoveryids": "27426" //只返回属于指定自动发现规则的图形原型 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "graphid": "1017", //(readonly)图形原型的ID "parent_itemid": "27426", "name": "Disk space usage {#FSNAME}", //图形原型的名称 "width": "600", //图形原型的宽度(单位:像素) "height": "340", //图形原型的高度(单位:像素) "yaxismin": "0.0000", //Y轴的固定最小值 "yaxismax": "0.0000", //Y轴的固定最大值 "templateid": "442", //(readonly)图形原型的父模板的ID "show_work_period": "0", //是否在发现的图形上显示工作时间.可用值: 0 - hide隐藏; "show_triggers": "0", "graphtype": "2", //图形原型布局类型.可用值: "show_legend": "1", //是否在被发现的图形上显示图例.可用值: 0 - hide隐藏; "show_3d": "1", //是否使用3D形式展示被发现的饼图和分散饼图.可用值: 0 - (default默认) 2D形式展示; "percent_left": "0.0000", //左侧百分比线 "percent_right": "0.0000", //右侧百分比线 "ymin_type": "0", //Y轴最小值的计算方式 .可用值: 0 - (default默认值) calculated计算的; "ymax_type": "0", //Y轴最大值的计算方式 .可用值: 0 - (default默认值) calculated计算的; "ymin_itemid": "0", //用于作为Y轴最小值的监控项ID "ymax_itemid": "0" //用于作为Y轴最大值的监控项ID } ], "id": 1 }
|
Description |
此方法允许更新已经存在的图形原型。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:改变一个图形原型的尺寸 将一个图形原型的尺寸修改成宽1100像素高400像素。 { "jsonrpc": "2.0", "method": "graphprototype.update", "params": { "graphid": "439", "width": 1100, "height": 400 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含graphids属性下更新的图形原型ID的对象 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "graphids": [ "439" ] }, "id": 1 }
|
Description |
该方法用于根据规定的参数获取模板聚合图形项. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:从聚合图形上检索模板聚合图形项 从模板聚合图形“15”返回所有模板聚合图形项. { "jsonrpc": "2.0", "method": "templatescreenitem.get", "params": { "output": "extend", "screenids": "15" //只返回指定模板聚合图形所属ID的模板聚合图形项. }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": [ { "screenitemid": "42", //(readonly)模板聚合图形项的ID. "screenid": "15", //模板聚合图形项所属ID. "resourcetype": "0", //模板聚合图形项. 可能的值: 0 - graph图形; "resourceid": "454", //来自父模板的对象的ID显示在模板聚合图形项上. 根据聚合图形项的类型,resourceid属性可引用不同的对象. 聚合图形项不用于clock和URL.注意: 即使聚合图形项自身继承在某一主机或模板上,其resourceid属性始终引用父模板对象中使用的对象。 "width": "500", //模板聚合图形项的宽度(以像素为单位). Default: 320. "height": "200", //模板聚合图形项的高度(以像素为单位). Default: 200. "x": "0", //模板上聚合图形项在screen的X轴,从左到右. Default: 0. "y": "0", //模板上聚合图形项在screen的Y轴,从上到下. Default: 0. "colspan": "1", //模板聚合图形项所跨的列数. "rowspan": "1", //模板聚合图形项所跨的行数. "elements": "0", //在模板聚合图形项上显示的行数. Default: 25. "valign": "1", //指定模板聚合图形项如何在单元格中垂直对齐. 可能的值: 0 - (default) middle中间; "halign": "0", //指定模板监控项如何在单元格中水平对齐. 可能的值: 0 - (default) center中心; "style": "0", //模板聚合图形项显示的选项. "url": "", //在模板聚合图形项中显示的网页的URL,由URL模板聚合图形项使用 "max_columns": "3" //指定的图形原型或简单图形原型聚合图形元素可具有的最大列数. Default: 3. }, { "screenitemid": "43", "screenid": "15", "resourcetype": "0", "resourceid": "455", "width": "500", "height": "270", "x": "1", "y": "0", "colspan": "1", "rowspan": "1", "elements": "0", "valign": "1", "halign": "0", "style": "0", "url": "", "max_columns": "3" } ], "id": 1 }
|
Description |
该方法允许创建新的模板聚合图形 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建模板聚合图形 创建一个名为“Graphs”的模板聚合图形,带有2行和3列,并将图形添加到左上角的单元格。. { "jsonrpc": "2.0", "method": "templatescreen.create", "params": { "name": "Graphs", //模板聚合图形的名称.(required) "templateid": "10047", //聚合图形所属模板的ID.(required) "hsize": 3, //模板聚合图形的宽度. Default: 1 "vsize": 2, //模板聚合图形的高度. Default: 1 "screenitems": [ //聚合图形上要创建的模板聚合图形项. { "resourcetype": 0, //模板聚合图形项. 可能的值: 0 - graph图形; "resourceid": "410", //来自父模板的对象的ID显示在模板聚合图形项上. 根据聚合图形项的类型,resourceid属性可引用不同的对象. 聚合图形项不用于clock和URL.注意: 即使聚合图形项自身继承在某一主机或模板上,其resourceid属性始终引用父模板对象中使用的对象。 "x": 0, //模板上聚合图形项在screen的X轴,从左到右. Default: 0. "y": 0 //模板上聚合图形项在screen的Y轴,从上到下. Default: 0. } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回一个包含screenids属性下创建的模板聚合图形的ID的对象,返回的ID的顺序与传递的模板聚合图形的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "screenids": [ "45" ] }, "id": 1 }
|
Description |
此方法允许删除模板聚合图形. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个模板聚合图形 删除两个模板聚合图形. { "jsonrpc": "2.0", "method": "templatescreen.delete", "params": [ "45", "46" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回一个包含screenids属性下删除的模板聚合图形ID的对象. |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "screenids": [ "45", "46" ] }, "id": 1 }
|
Description |
该方法允许根据指定的参数来检索模板聚合图形. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:从模板检索聚合图形 从模板“10001”和所有聚合图形项中检索所有聚合图形. { "jsonrpc": "2.0", "method": "templatescreen.get", "params": { "output": "extend", "selectScreenItems": "extend", //返回screenitems属性中模板聚合图形中使用的聚合图形项. "templateids": "10001" //只返回所属指定模板的模板聚合图形. }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "screenid": "3", //(readonly)模板聚合图形的ID. "name": "System performance", "hsize": "2", "vsize": "2", "templateid": "10001", "screenitems": [ { "screenitemid": "20", "screenid": "3", "resourcetype": "0", "resourceid": "433", "width": "500", "height": "120", "x": "0", "y": "0", "colspan": "1", "rowspan": "1", "elements": "0", "valign": "1", "halign": "0", "style": "0", "url": "" }, { "screenitemid": "21", "screenid": "3", "resourcetype": "0", "resourceid": "387", "width": "500", "height": "100", "x": "0", "y": "1", "colspan": "1", "rowspan": "1", "elements": "0", "valign": "1", "halign": "0", "style": "0", "url": "" }, { "screenitemid": "22", "screenid": "3", "resourcetype": "1", "resourceid": "10013", "width": "500", "height": "148", "x": "1", "y": "0", "colspan": "1", "rowspan": "1", "elements": "0", "valign": "1", "halign": "0", "style": "0", "url": "" }, { "screenitemid": "23", "screenid": "3", "resourcetype": "1", "resourceid": "22181", "width": "500", "height": "184", "x": "1", "y": "1", "colspan": "1", "rowspan": "1", "elements": "0", "valign": "1", "halign": "0", "style": "0", "url": "" } ] } ], "id": 1 }
|
Description |
此方法允许更新现有的模板聚合图形. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:重命名模板聚合图形 将模板聚合图形重命名为“Performance graphs”. { "jsonrpc": "2.0", "method": "templatescreen.update", "params": { "screenid": "3", "name": "Performance graphs" //模板聚合图形的名称.(required) }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个包含screenids属性下更新的模板聚合图形的ID的对象 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "screenids": [ "3" ] }, "id": 1 }
|
Description |
该方法允许将模板聚合图形复制到指定的模板. |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个全局宏 创建一个值为“public”的全局宏“{$ SNMP_COMMUNITY}”。 { "jsonrpc": "2.0", "method": "templatescreen.copy", "params": { "screenIds": "25", //要复制的模板聚合图形的ID.(required) "templateIds": "30085" //将聚合图形复制到模板的ID.(required) }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果复制成功,则返回true. |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法检查给定的模板聚合图形是否可用于阅读。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个模板聚合图形 检查两个模板聚合图形是否可读。 { "jsonrpc": "2.0", "method": "templatescreen.isreadable", "params": [ "3", //要检查的模板聚合图形的ID。 "5" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的模板聚合图形可供阅读,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法检查给定的模板聚合图形是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个模板聚合图形 检查两个模板聚合图形是否可写。 { "jsonrpc": "2.0", "method": "templatescreen.iswritable", "params": [ "3", "5" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的模板聚合图形可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法允许根据给定的参数检索历史数据。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:检索项目历史数据 从数字(浮点型)项返回10个最新值。 { "jsonrpc": "2.0", "method": "history.get", "params": { "output": "extend", "history": 0, //要返回的历史对象类型。可能的值 Default: 3; "itemids": "23296", //只返回给定项的历史记录。 "sortfield": "clock", //按照给定的属性对结果进行排序。 可能的值为:"itemid"和"clock"。 "sortorder": "DESC", "limit": 10 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "itemid": "23296", //相关项的ID。 "clock": "1351090996", //收到这个值的时间(时间戳)。 "value": "0.0850", //获取值。 "ns": "563157632" //收到值时纳秒。 }, { "itemid": "23296", "clock": "1351090936", "value": "0.1600", "ns": "549216402" }, { "itemid": "23296", "clock": "1351090876", "value": "0.1800", "ns": "537418114" }, { "itemid": "23296", "clock": "1351090816", "value": "0.2100", "ns": "522659528" }, { "itemid": "23296", "clock": "1351090756", "value": "0.2150", "ns": "507809457" }, { "itemid": "23296", "clock": "1351090696", "value": "0.2550", "ns": "495509699" }, { "itemid": "23296", "clock": "1351090636", "value": "0.3600", "ns": "477708209" }, { "itemid": "23296", "clock": "1351090576", "value": "0.3750", "ns": "463251343" }, { "itemid": "23296", "clock": "1351090516", "value": "0.3150", "ns": "447947017" }, { "itemid": "23296", "clock": "1351090456", "value": "0.2750", "ns": "435307141" } ], "id": 1}
|
Description |
该方法允许创建新用户。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个用户 创建一个新用户,将他添加到用户组并为他创建一个新媒体。 { "jsonrpc": "2.0", "method": "user.create", "params": { "alias": "John", //用户别名。(required) "passwd": "Doe123", //用户的密码。(required) "usrgrps": [ //用户组添加用户。用户组必须具有已定义的usrgrpid属性。(required) { "usrgrpid": "7" //(只读)用户组的ID。 } ], "user_medias": [ //为用户创建媒体。 { "mediatypeid": "1", //媒体使用的媒体类型的ID。(required) "sendto": "[email protected]", //收件人的地址,用户名或其他标识符。(required) "active": 0, //媒体是否启用。可能的值: 0 - 启用; 1 - 禁用。(required) "severity": 63, //触发严重性发送有关通知.Severities以二进制形式存储,每一位代表相应的严重性。例如,12表示二进制数为1100,意味着通知将从严重级别为警告和平均值的触发器发送。(required) "period": "1-7,00:00-24:00" //通知可以作为时间段发送的时间。(required) } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含userids属性下创建的用户的ID的对象。返回的ID的顺序与传递的用户的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "userids": [ "12" ] }, "id": 1 }
|
Description |
该方法允许删除用户。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个用户 删除两个用户。 { "jsonrpc": "2.0", "method": "user.delete", "params": [ "1", "5" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
回包含userids属性下已删除用户的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "userids": [ "1", "5" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数来检索用户。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:检索用户 检索所有配置的用户。 { "jsonrpc": "2.0", "method": "user.get", "params": { "output": "extend" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "userid": "1", //(只读)用户的ID。 "alias": "Admin", //用户别名。 "name": "Zabbix", //用户的名称。 "surname": "Administrator", //用户的姓氏。 "url": "", //登录后将用户重定向到的页面的URL。 "autologin": "1", //是否启用自动登录。可能值:0 - (默认)自动登录禁用; 1 - 启用自动登录。 "autologout": "0", //用户会话生存时间,以秒为单位如果设置为0,则会话永远不会过期。默认值:900。 "lang": "ru_RU", //用户语言的语言代码。默认:en_GB。 "refresh": "0", //自动刷新周期,以秒为单位。默认:30。 "type": "3", //用户类型。可能的值: 1 - (默认)Zabbix用户; 2 - Zabbix管理员; 3 - Zabbix超级管理员。 "theme": "default", //用户的主题。可能值: 默认 - (默认)系统默认值;蓝色主题 - 蓝色; 黑色主题 - 黑暗。 "attempt_failed": "0", //(只读)最近失败的登录尝试次数。 "attempt_ip": "", //(只读)最后一次不成功的登录尝试来自哪里的IP地址。 "attempt_clock": "0", //(只读)最后一次不成功的登录尝试的时间。 "rows_per_page": "50" //每页显示的对象行数。Default: 50. }, { "userid": "2", "alias": "guest", "name": "Default2", "surname": "User", "url": "", "autologin": "0", "autologout": "900", "lang": "en_GB", "refresh": "30", "type": "1", "theme": "default", "attempt_failed": "0", "attempt_ip": "", "attempt_clock": "0", "rows_per_page": "50" } ], "id": 1 }
|
Description |
该方法允许更新现有用户。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:重命名用户 将用户重命名为John Doe。 { "jsonrpc": "2.0", "method": "user.update", "params": { "userid": "1", "name": "John", "surname": "Doe" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含userids属性下更新的用户的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "userids": [ "1" ] }, "id": 1 }
|
Description |
该方法允许更新当前登录的用户。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:重命名当前用户 将当前用户重命名为John Doe。 { "jsonrpc": "2.0", "method": "user.updateprofile", "params": { "name": "John", "lastname": "Doe" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含userids属性下更新的用户的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "userids": [ "1" ] }, "id": 1 }
|
Description |
该方法允许向多个用户添加新媒体。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:将媒体添加到多个用户 为两位用户创建一个通用电子邮件介质。媒体必须随时发送有关所有警报的通知。 { "jsonrpc": "2.0", "method": "user.addmedia", "params": { "users": [ //用户将媒体添加到。用户必须具有已定义的userid属性。(required) { "userid": "1" }, { "userid": "2" } ], "medias": { //要为给定用户创建媒体。不得定义媒体userid属性。(required) "mediatypeid": "1", "sendto": "[email protected]", "active": 0, "severity": 63, "period": "1-7,00:00-24:00" } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含mediaids属性下创建的媒体的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "mediaids": [ "12", "13" ] }, "id": 1 }
|
Description |
该方法允许删除媒体。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个媒体 删除两个媒体。 { "jsonrpc": "2.0", "method": "user.deletemedia", "params": [ "11", //要删除的媒体的ID。 "13" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
在mediaids属性下返回包含已删除媒体ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "mediaids": [ "11", "13" ] }, "id": 1 }
|
Description |
该方法允许为多个用户更新媒体。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:替换多个用户的媒体 将两个用户使用的所有媒体替换为通用电子邮件媒体。媒体必须随时发送有关所有警报的通知。 { "jsonrpc": "2.0", "method": "user.updatemedia", "params": { "users": [ //用户要更新。用户必须具有已定义的userid属性。(required) { "userid": "1" }, { "userid": "2" } ], "medias": { //媒体取代现有的媒体。如果媒体定义了mediaid属性,它将被更新,否则将创建新的媒体(required) "mediatypeid": "1", "sendto": "[email protected]", "active": 0, "severity": 63, "period": "1-7,00:00-24:00" } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含userids属性下更新的用户的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "userids": [ "1", "2" ] }, "id": 1 }
|
Description |
此方法允许登录到API并生成身份验证令牌。使用此方法时,还需要执行user.logout以防止生成大量打开的会话记录。此方法可用于未经身份验证的用户,并且必须在JSON-RPC请求中不带auth参数的情况下调用该方法。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:验证用户 验证用户。 { "jsonrpc": "2.0", "method": "user.login", "params": { "user": "Admin", //用户名。(required) "password": "zabbix" //用户密码。未用于HTTP身份验证。(required) }, "id": 1 }
示例一:请求认证用户的信息 验证并返回有关用户的其他信息。 { "jsonrpc": "2.0", "method": "user.login", "params": { "user": "Admin", "password": "zabbix", "userData": true //返回有关已认证用户的信息。 }, "id": 1 }
|
返回值 |
如果使用userData参数,则返回一个包含有关已认证用户信息的对象。如果未使用userData参数,则该方法将返回一个身份验证令牌。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": "0424bd59b807674191e7d77572075f33", //应该记住生成的身份验证令牌并将其用于以下JSON-RPC请求的auth参数。使用HTTP身份验证时也是必需的。 "id": 1 }
对应示例二: { "jsonrpc": "2.0", "result": { "userid": "1", "alias": "Admin", "name": "Zabbix", "surname": "Administrator", "url": "", "autologin": "1", "autologout": "0", "lang": "ru_RU", "refresh": "0", "type": "3", "theme": "default", "attempt_failed": "0", "attempt_ip": "127.0.0.1", "attempt_clock": "1355919038", "rows_per_page": "50", "debug_mode": true, //是否为用户启用调试模式。 "userip": "127.0.0.1", //用户的IP地址。 "sessionid": "5b56eee8be445e98f0bd42b435736e42", //身份验证令牌,必须在以下API请求中使用。 "gui_access": "0" //用户对前端的认证方法。参阅用户组对象的gui_access属性以获取可能值的列表。 }, "id": 1 }
|
Description |
此方法允许注销API并使当前身份验证令牌失效。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:注销 从API注销。 { "jsonrpc": "2.0", "method": "user.logout", "params": [], "id": 1, "auth": "16a46baf181ef9602e1687f3110abf8a" }
|
返回值 |
如果用户已成功注销,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法检查给定的用户是否可用于阅读。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个用户 检查两个用户是否可读。 { "jsonrpc": "2.0", "method": "user.isreadable", "params": [ "4", //要检查的用户的ID。 "6" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的用户可以阅读,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法检查给定的用户是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个用户 检查两个用户是否可写。 { "jsonrpc": "2.0", "method": "user.iswritable", "params": [ "4", "6" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的用户可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法允许创建新的用户组。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个用户组 创建一个拒绝访问主机组“2”的用户组,并添加一个用户。 { "jsonrpc": "2.0", "method": "usergroup.create", "params": { "name": "Operation managers", //用户组的名称(required) "rights": { //分配给组的权限 "permission": 0, //(required)访问到主机组的级别。可能的值: 0 - 拒绝访问; "id": "2" //要添加权限的主机组的ID。(required) }, "userids": "12" //要添加到用户组的用户的ID。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含“usrgrpids”属性下创建的用户组的ID的对象。返回的ID的顺序与传递的用户组的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "usrgrpids": [ "20" ] }, "id": 1 }
|
Description |
此方法允许删除用户组。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个用户组 删除两个用户组。 { "jsonrpc": "2.0", "method": "usergroup.delete", "params": [ "20", //要删除的用户组的ID。 "21" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含“usrgrpids”属性下删除的用户组的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "usrgrpids": [ "20", "21" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数检索用户组。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:检索启用的用户组 检索所有已启用的用户组。 { "jsonrpc": "2.0", "method": "usergroup.get", "params": { "output": "extend", "status": 0 //只返回具有给定状态的用户组。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "usrgrpid": "7", //(readonly) 用户组的ID。 "name": "Zabbix administrators", //用户组的名称 "gui_access": "0", //组中用户的前端身份验证方法。 可能的值:0 - (默认) 使用系统默认身份验证方法; "users_status": "0", //用户组是启用还是禁用。 可能的值: 0 - (默认) 启用; "debug_mode": "1" //是否启用或禁用调试模式。 }, { "usrgrpid": "8", "name": "Guests", "gui_access": "0", "users_status": "0", "debug_mode": "0" }, { "usrgrpid": "11", "name": "Enabled debug mode", "gui_access": "0", "users_status": "0", "debug_mode": "1" }, { "usrgrpid": "12", "name": "No access to the frontend", "gui_access": "2", "users_status": "0", "debug_mode": "0" }, { "usrgrpid": "14", "name": "Read only", "gui_access": "0", "users_status": "0", "debug_mode": "0" }, { "usrgrpid": "18", "name": "Deny", "gui_access": "0", "users_status": "0", "debug_mode": "0" } ], "id": 1 }
|
Description |
此方法允许更新现有的用户组。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:禁用用户组 禁用用户组。 { "jsonrpc": "2.0", "method": "usergroup.update", "params": { "usrgrpid": "17", "users_status": "1" //用户组是启用还是禁用。 可能的值: 0 - (默认) 启用; }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含“usrgrpids”属性下更新的用户组的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "usrgrpids": [ "17" ] }, "id": 1 }
|
Description |
此方法允许同时向多个用户组添加权限和用户。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:拒绝访问主机组 拒绝两个用户组访问主机组“2”。 { "jsonrpc": "2.0", "method": "usergroup.massadd", "params": { "usrgrpids": [ //要更新的用户组的ID。(required) "17", "19" ], "rights": { //分配给用户组的权限。 "permission": 0, //(required)访问到主机组的级别。可能的值: 0 - 拒绝访问; "id": "2" //要添加权限的主机组的ID。(required) } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含“usrgrpids”属性下更新的用户组的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "usrgrpids": [ "17", "19" ] }, "id": 1 }
|
Description |
此方法允许同时更新多个用户组的属性,用户或权限。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:更改用户组的权限 更新两个用户组的权限,只允许对两个主机组进行读写访问。 { "jsonrpc": "2.0", "method": "usergroup.massupdate", "params": { "usrgrpids": [ "17", "19" ], "rights": [ { "permission": 3, "id": "2" }, { "permission": 3, "id": "3" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含“usrgrpids”属性下更新的用户组的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "usrgrpids": [ "17", "19" ] }, "id": 1 }
|
Description |
该方法检查给定的用户组是否可用于阅读。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个用户组 检查两个用户组是否可读。 { "jsonrpc": "2.0", "method": "usergroup.isreadable", "params": [ "21", // 要检查的用户组的ID。 "22" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的用户组可用于读取,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法检查给定的用户组是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个用户组 检查两个用户组是否可写。 { "jsonrpc": "2.0", "method": "usergroup.iswritable", "params": [ "21", "22" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的用户组可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
此方法允许创建新的主机宏。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个主机宏 在主机“10198”上创建一个主机宏“{$ SNMP_COMMUNITY}”,其值为“public”。 { "jsonrpc": "2.0", "method": "usermacro.create", "params": { "hostid": "10198", //宏所属主机的ID。(required) "macro": "{$SNMP_COMMUNITY}", //宏字符串。(required) "value": "public" //宏的值。(required) }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含“hostmacroids”属性下创建的主机宏的ID的对象。 返回的ID的顺序与传递的主机宏的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostmacroids": [ "11" //主机宏的ID。 ] }, "id": 1 }
|
Description |
此方法允许删除主机宏。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个主机宏 删除两个主机宏。 { "jsonrpc": "2.0", "method": "usermacro.delete", "params": [ "32", "11" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含hostmacroids属性下的已删除主机宏ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostmacroids": [ "32", "11" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数检索主机和全局宏。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:检索主机的主机宏 检索为主机“10198”定义的所有主机宏。 { "jsonrpc": "2.0", "method": "usermacro.get", "params": { "output": "extend", "hostids": "10198" //仅返回属于给定主机的主机宏。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
示例二:检索全局宏 检索所有全局宏。 { "jsonrpc": "2.0", "method": "usermacro.get", "params": { "output": "extend", "globalmacro": true //返回全局宏而不是主机宏。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "hostmacroid": "9", //(readonly) 主机宏的ID。 "hostid": "10198", //宏所属主机的ID。(required) "macro": "{$INTERFACE}", //宏字符串。(required) "value": "eth0" //宏的值。(required) }, { "hostmacroid": "11", "hostid": "10198", "macro": "{$SNMP_COMMUNITY}", "value": "public" } ], "id": 1 }
对应示例二: { "jsonrpc": "2.0", "result": [ { "globalmacroid": "6", //(readonly) 全局宏的ID。 "macro": "{$SNMP_COMMUNITY}", //宏字符串。(required) "value": "public" //宏的值。(required) } ], "id": 1 }
|
Description |
此方法允许更新现有的主机宏。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:更改主机宏的值 将主机宏的值更改为“public”。 { "jsonrpc": "2.0", "method": "usermacro.update", "params": { "hostmacroid": "1", //(required) "value": "public" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含“hostmacroids”属性下更新的主机宏的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostmacroids": [ "1" ] }, "id": 1 }
|
Description |
此方法允许创建新的全局宏。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个全局宏 创建一个值为“public”的全局宏“{$ SNMP_COMMUNITY}”。 { "jsonrpc": "2.0", "method": "usermacro.createglobal", "params": { "macro": "{$SNMP_COMMUNITY}", //(required) "value": "public" //(required) }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含“globalmacroids”属性下创建的全局宏的ID的对象。 返回的ID的顺序与传递的全局宏的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "globalmacroids": [ "6" ] }, "id": 1 }
|
Description |
此方法允许删除全局宏。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个全局宏 删除两个全局宏。 { "jsonrpc": "2.0", "method": "usermacro.deleteglobal", "params": [ "32", //要删除的全局宏的ID。 "11" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含“globalmacroids”属性下删除的全局宏ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "globalmacroids": [ "32", "11" ] }, "id": 1 }
|
Description |
此方法允许更新现有的全局宏。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:更改全局宏的值 将全局宏的值更改为“public”。 { "jsonrpc": "2.0", "method": "usermacro.updateglobal", "params": { "globalmacroid": "1", //(required) "value": "public" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含“globalmacroids”属性下更新的全局宏的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "globalmacroids": [ "1" ] }, "id": 1 }
|
Description |
该方法允许创建新的主机接口。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建一个新的接口 在主机“30052”上创建一个辅助IP代理接口。 { "jsonrpc": "2.0", "method": "hostinterface.create", "params": { "hostid": "30052", //接口所属主机的ID。(required) "dns": "", //.接口使用的DNS名称。 如果通过IP进行连接,则可以为空。(required) "ip": "127.0.0.1", //接口使用的IP地址。 如果通过DNS进行连接,可以为空。(required) "main": 0, //(required)该接口是否在主机上用作默认接口。主机上只能有一种类型的接口作为默认设置。可能的值是:0 - not default; 不是默认值 "port": "10050", //接口使用的端口号。 可以包含用户宏。(required) "type": 1, //(required)接口类型.可能的值是: 1 - agent; "useip": 1 //(required)是否应通过IP进行连接。可能的值是: 0 - 连接使用主机DNS名称; }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回一个包含“interfaceids”属性下创建的主机接口的ID的对象。返回的ID的顺序与传递的主机接口的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "interfaceids": [ "30062" ] }, "id": 1 }
|
Description |
此方法允许删除主机接口。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除主机接口 删除ID为30062的主机接口。 { "jsonrpc": "2.0", "method": "hostinterface.delete", "params": [ "30062" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回包含“interfaceids”属性下删除的主机接口的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "interfaceids": [ "30062" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数检索主机接口。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:检索主机接口 检索主机“30057”使用的接口的所有数据。 { "jsonrpc": "2.0", "method": "hostinterface.get", "params": { "output": "extend", "hostids": "30057" //仅返回给定主机使用的主机接口。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "interfaceid": "30050", //接口的ID。 "hostid": "30057", "main": "1", "type": "1", "useip": "1", "ip": "127.0.0.1", "dns": "", "port": "10050", "bulk": "1" //是否使用批量SNMP请求。 可能的值是:0 - 不要使用批量请求; }, { "interfaceid": "30067", "hostid": "30057", "main": "0", "type": "1", "useip": "0", "ip": "", "dns": "localhost", "port": "10050", "bulk": "1" }, { "interfaceid": "30068", "hostid": "30057", "main": "1", "type": "2", "useip": "1", "ip": "127.0.0.1", "dns": "", "port": "161", "bulk": "1" } ], "id": 1 }
|
Description |
此方法允许更新现有的主机接口。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:更改主机接口端口 更改主机接口的端口。 { "jsonrpc": "2.0", "method": "hostinterface.update", "params": { "interfaceid": "30048", //(required) "port": "30050" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个包含“interfaceids”属性下更新的主机接口的ID的对象 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "interfaceids": [ "30048" ] }, "id": 1 }
|
Description |
该方法允许同时向多个主机添加主机接口。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建接口 在两台主机上创建一个接口。 { "jsonrpc": "2.0", "method": "hostinterface.massadd", "params": { "hosts": [ //要更新的主机。主机必须定义“hostid”属性。(required) { "hostid": "30050" //(required)
}, { "hostid": "30052" } ], "interfaces": { //在给定的主机上创建主机接口。(required)
"dns": "", "ip": "127.0.0.1", "main": 0, "port": "10050", "type": 1, "useip": 1 } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个包含“interfaceids”属性下创建的主机接口的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "interfaceids": [ "30069", "30070" ] }, "id": 1 }
|
Description |
该方法允许从给定的主机中删除主机接口。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除接口 从两台主机中删除“127.0.0.1”SNMP界面。 { "jsonrpc": "2.0", "method": "hostinterface.massremove", "params": { "hostids": [ //要更新的主机的ID。(required) "30050", "30052" ], "interfaces": { //要从给定主机中删除的主机接口。 "dns": "", "ip": "127.0.0.1", "port": "161" } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个包含“interfaceids”属性下创建的主机接口的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "interfaceids": [ "30069", "30070" ] }, "id": 1 }
|
Description |
此方法允许替换给定主机上的所有主机接口。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:更换主机接口 用单个代理接口替换所有主机接口。 { "jsonrpc": "2.0", "method": "hostinterface.replacehostinterfaces", "params": { "hostid": "30052", //要更新的主机的ID。(required) "interfaces": { //替换当前主机接口的主机接口。(required) "dns": "", "ip": "127.0.0.1", "main": 1, "port": "10050", "type": 1, "useip": 1 } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回一个包含“interfaceids”属性下创建的主机接口的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "interfaceids": [ "30081" ] }, "id": 1 }
|
Description |
这种方法允许创建新的主机原型。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:创建主机原型 使用组原型“{#HV.NAME}”为LLD规则“23542”创建主机原型“{#VM.NAME}”。 将其链接到主机组“2”。 { "jsonrpc": "2.0", "method": "hostprototype.create", "params": { "host": "{#VM.NAME}", //主机原型的技术名称。(required) "ruleid": "23542", //主机原型所属的LLD规则的ID。(required) "groupLinks": [ //要为主机原型创建的组链接。(required) { "groupid": "2" //主机组的ID。(required) } ], "groupPrototypes": [ //将为主机原型创建的组原型。 { "name": "{#HV.NAME}" //组原型的名称(required) } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值
|
返回包含“hostids”属性下创建的主机原型的ID的对象。 返回的ID的顺序与传递的主机原型的顺序相匹配。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostids": [ "10103" ] }, "id": 1 }
|
Description |
该方法允许删除主机原型。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:删除多个主机原型 删除两个主机原型 { "jsonrpc": "2.0", "method": "hostprototype.delete", "params": [ "10103", "10105" ], "auth": "3a57200802b24cda67c4e4010b50c065", "id": 1 }
|
返回值 |
返回一个包含“hostids”属性下删除的主机原型的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostids": [ "10103", "10105" ] }, "id": 1 }
|
Description |
该方法允许根据给定的参数检索主机原型。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request |
示例一:从LLD规则检索主机原型 从LLD规则中检索所有主机原型及其组链接和组原型。 { "jsonrpc": "2.0", "method": "hostprototype.get", "params": { "output": "extend", "selectGroupLinks": "extend", //在“groupLinks”属性中返回主机原型的组链接。 "selectGroupPrototypes": "extend", //返回“groupPrototypes”属性中的主机原型的组原型。 "discoveryids": "23554" //仅返回属于给定LLD规则的主机原型。 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回其中之一: 一组对象; 如果已经使用“countOutput”参数,则返回检索到的对象的计数. |
Response |
对应示例一: { "jsonrpc": "2.0", "result": [ { "hostid": "10092", //(readonly) 主机原型的ID。 "host": "{#HV.UUID}", //主机原型的技术名称。 "status": "0", //主机原型的状态.可能的值是: "name": "{#HV.NAME}", //主机原型的可见名称。 "templateid": "0", //(readonly)父模板主机原型的ID "tls_connect": "1", //连接到主机。可能的值是: "tls_accept": "1", //主机连接。 可能的位图值为: "tls_issuer": "", //证书发行者 "tls_subject": "", //证书类别 "tls_psk_identity": "", //.PSK身份 如果“tls_connect”或“tls_accept”启用了PSK,则必需。 "tls_psk": "", //预共享密钥,至少32位十六进制数字。 如果“tls_connect”或“tls_accept”启用了PSK,则必需。 "groupLinks": [ { "group_prototypeid": "4", //(readonly) 组链接的ID。 "hostid": "10092", //(readonly)主机原型的ID "groupid": "7", //主机组的ID。 "templateid": "0" //(readonly)父模板组链接的ID。 } ], "groupPrototypes": [ { "group_prototypeid": "7", //(readonly) I组原型的ID。 "hostid": "10092", //(readonly)主机原型的ID "name": "{#CLUSTER.NAME}", //组原型的名称 "templateid": "0" //(readonly)父模板组原型的ID。 } ] } ], "id": 1 }
|
Description |
此方法允许更新现有的主机原型。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:禁用主机原型 禁用主机原型,即将其状态设置为1。 { "jsonrpc": "2.0", "method": "hostprototype.update", "params": { "hostid": "10092", //(required) "status": 1 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
返回包含“hostids”属性下更新的主机原型的ID的对象。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": { "hostids": [ "10092" ] }, "id": 1 }
|
Description |
该方法检查给定的主机原型是否可用于读取。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个主机原型 检查两个主机原型是否可读。 { "jsonrpc": "2.0", "method": "hostprototype.isreadable", "params": [ "10092", "10093" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的主机原型可用于读取,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|
Description |
该方法检查给定的主机原型是否可用于写入。 |
请求方法 |
POST |
URL |
http://192.168.3.132/zabbix/api_jsonrpc.php |
Content-Type |
application/json |
Request
|
示例一:检查多个主机原型 检查两个主机原型是否可写。 { "jsonrpc": "2.0", "method": "hostprototype.iswritable", "params": [ "10092", "10093" ], "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
|
返回值 |
如果给定的主机原型可用于写入,则返回true。 |
Response
|
对应示例一: { "jsonrpc": "2.0", "result": true, "id": 1 }
|