script de objeto.create(scripts de objeto/array)
Este método permite criar novos scripts.
Este método está disponível apenas para o tipo de usuário Super admin.
As permissões para chamar o método podem ser revogadas nas configurações de função do usuário. Consulte Funções do usuário para obter mais informações.
(objeto/array)
Scripts para criar.
O método aceita scripts com as propriedades de script padrão.
(object)
Retorna um objeto contendo os IDs dos scripts criados na propriedade scriptids
. A ordem dos IDs retornados corresponde à ordem dos scripts passados.
Crie um script de webhook que envie uma solicitação HTTP para um serviço externo.
Request:
{ "jsonrpc": "2.0", "method": "script.create", "params": { "name": "Webhook script", "command": "try {\n var request = new HttpRequest(),\n response,\n data;\n\n request.addHeader('Content-Type: application/json');\n\n response = request.post('https://localhost/post', value);\n\n try {\n response = JSON.parse(response);\n }\n catch (error) {\n response = null;\n }\n\n if (request.getStatus() !== 200 || !('data' in response)) {\n throw 'Unexpected response.';\n }\n\n data = JSON.stringify(response.data);\n\n Zabbix.Log(3, '[Webhook Script] response data: ' + data);\n\n return data;\n}\ncatch (error) {\n Zabbix.Log(3, '[Webhook Script] script execution failed: ' + error);\n throw 'Execution failed: ' + error + '.';\n}", "type": 5, "timeout": "40s", "parameters": [ { "name": "token", "value": "{$WEBHOOK.TOKEN}" }, { "name": "host", "value": "{HOST.HOST}" }, { "name": "v", "value": "2.2" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
Response:
Crie um script SSH com autenticação de chave pública que possa ser executado em um host e tenha um menu de contexto.
Request:
{ "jsonrpc": "2.0", "method": "script.create", "params": { "name": "SSH script", "command": "my script command", "type": 2, "username": "John", "publickey": "pub.key", "privatekey": "priv.key", "password": "secret", "port": "12345", "scope": 2, "menu_path": "All scripts/SSH", "usrgrpid": "7", "groupid": "4" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
Response:
Crie um script personalizado que reinicializará um servidor. O script exigirá acesso de gravação ao host e exibirá uma mensagem de configuração antes de ser executado no frontend.
Request:
{ "jsonrpc": "2.0", "method": "script.create", "params": { "name": "Reboot server", "command": "reboot server 1", "confirmation": "Are you sure you would like to reboot the server?", "scope": 2, "type": 0 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
Response:
Create an URL type script that for host scope and remains in same window and has confirmation text.
Request:
{ "jsonrpc": "2.0", "method": "script.create", "params": { "name": "URL script", "type": 6, "scope": 2, "url": "http://zabbix/ui/zabbix.php?action=host.edit&hostid={HOST.ID}", "confirmation": "Edit host {HOST.NAME}?", "new_window": 0 }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
Response:
CScript::create() in ui/include/classes/api/services/CScript.php.