task.create
Description
object task.create(object/array tasks)
This method allows to create a new task (such as collect diagnostic data or check items or low-level discovery rules without config reload).
This method is only available to Super admin user type. Permissions to call the method can be revoked in user role settings. See User roles for more information.
Parameters
(object/array)
A task to create.
The method accepts the following parameters.
Parameter | Type | Description |
---|---|---|
type (required) | integer | Task type. Possible values: 1 - Diagnostic information; 6 - Check now. |
request (required) | object | Task request object according to the task type. Correct format of request object is described in Task object section. |
proxy_hostid | integer | Proxy about which Diagnostic information task will collect data. Ignored for ‘Check now’ tasks. |
Note that ‘Check now’ tasks can be created only for the following types of items/discovery rules:
- Zabbix agent
- SNMPv1/v2/v3 agent
- Simple check
- Internal check
- External check
- Database monitor
- HTTP agent
- IPMI agent
- SSH agent
- TELNET agent
- Calculated check
- JMX agent
Return values
(object)
Returns an object containing the IDs of the created tasks under the taskids
property. One task is created for each item and low-level discovery rule. The order of the returned IDs matches the order of the passed itemids
.
Examples
Creating a task
Create a task check now
for two items. One is an item, the other is a low-level discovery rule.
Request:
{
"jsonrpc": "2.0",
"method": "task.create",
"params": [
{
"type": "6",
"request": {
"itemid": "10092"
}
},
{
"type": "6",
"request": {
"itemid": "10093"
}
}
],
"auth": "700ca65537074ec963db7efabda78259",
"id": 1
}
Response:
{
"jsonrpc": "2.0",
"result": {
"taskids": [
"1",
"2"
]
},
"id": 1
}
Create a task diagnostic information
task. Request:
{
"jsonrpc": "2.0",
"method": "task.create",
"params": [
{
"type": "1",
"request": {
"alerting": {
"stats": [
"alerts"
],
"top": {
"media.alerts": 10
}
},
"lld": {
"stats": "extend",
"top": {
"values": 5
}
}
},
"proxy_hostid": 0
}
],
"auth": "700ca65537074ec963db7efabda78259",
"id": 2
}
Response:
{
"jsonrpc": "2.0",
"result": {
"taskids": [
"3"
]
},
"id": 2
}
See also
Source
CTask::create() in ui/include/classes/api/services/CTask.php.