Closed metabsd closed 5 years ago
from zabbix.api import ZabbixAPI def main(): zapi = ZabbixAPI(url='https://server/zabbix/', user='api', password='api') notborgyGroupID = '[' \ '{' \ '"groupid": "33"' \ '}, ' \ '{' \ '"groupid": "17"' \ '},' \ '{' \ '"groupid": "2"' \ '} ' \ ']' result = zapi.do_request('host.update', { "hostid": "10257", "groups": notborgyGroupID, #"templates": notborgyTemplateID }) print(result) if __name__ == "__main__": main()
The error I got
$ python3 hostgroup_update.py Traceback (most recent call last): File "hostgroup_update.py", line 59, in <module> main() File "hostgroup_update.py", line 53, in main "groups": notborgyGroupID, File "/usr/local/lib/python3.7/site-packages/pyzabbix/api.py", line 263, in do_request raise ZabbixAPIException(err) pyzabbix.api.ZabbixAPIException: {'code': -32602, 'message': 'Invalid params.', 'data': 'Host "SERVER" cannot be without host group.', 'json': '{\'jsonrpc\': \'2.0\', \'method\': \'host.update\', \'params\': {\'hostid\': \'10257\', \'groups\': \'[{"groupid": "33"}, {"groupid": "17"},{"groupid": "2"} ]\'}, \'id\': \'1\', \'auth\': \'token\'}'}
I fix my problem. It's a type problem. The variable have to be define like that.
notborgygroupid = [{"groupid": "33"}, {"groupid": "17"}, {"groupid": "2"}]
The error I got