object script.execute(object parameters)
This method allows to run a script on a host or event.
(object)
Parameters containing the ID of the script to run and either the ID of the host or the ID of the event.
Parameter | Type | Description |
---|---|---|
scriptid (required) | string | ID of the script to run. |
hostid | string | ID of the host to run the script on. |
eventid | string | ID of the event to run the script on. |
(object)
Returns the result of script execution.
Property | Type | Description |
---|---|---|
response | string | Whether the script was run successfully. Possible values: success or failed . |
value | string | Script output. |
debug | object | Contains a debug object if a webhook script is executed. For other script types, it contains empty object. |
Run a webhook script that sends HTTP request to external service.
Request:
{ "jsonrpc": "2.0", "method": "script.execute", "params": { "scriptid": "4", "hostid": "30079" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
Response:
{ "jsonrpc": "2.0", "result": { "response": "success", "value": "{\"status\":\"sent\",\"timestamp\":\"1611235391\"}", "debug": { "logs": [ { "level": 3, "ms": 480, "message": "[Webhook Script] HTTP status: 200." } ], "ms": 495 } }, "id": 1 }
Run a “ping” script on a host.
Request:
{ "jsonrpc": "2.0", "method": "script.execute", "params": { "scriptid": "1", "hostid": "30079" }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
Response:
{ "jsonrpc": "2.0", "result": { "response": "success", "value": "PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.\n64 bytes from 127.0.0.1: icmp_req=1 ttl=64 time=0.074 ms\n64 bytes from 127.0.0.1: icmp_req=2 ttl=64 time=0.030 ms\n64 bytes from 127.0.0.1: icmp_req=3 ttl=64 time=0.030 ms\n\n--- 127.0.0.1 ping statistics ---\n3 packets transmitted, 3 received, 0% packet loss, time 1998ms\nrtt min/avg/max/mdev = 0.030/0.044/0.074/0.022 ms\n", "debug": [] }, "id": 1 }
CScript::execute() in ui/include/classes/api/services/CScript.php.