maintenance.update

Description

object maintenance.update(object/array maintenances)

This method allows to update existing maintenances.

This method is only available to Admin and Super admin user types. Permissions to call the method can be revoked in user role settings. See User roles for more information.

Parameters

(object/array) Maintenance properties to be updated.

The maintenanceid property must be defined for each maintenance, all other properties are optional. Only the passed properties will be updated, all others will remain unchanged.

Additionally to the standard maintenance properties, the method accepts the following parameters.

Parameter Type Description
groups object/array Host groups to replace the current groups.

The host groups must have only the groupid property defined.

Parameter behavior:
- required if hosts is not set
hosts object/array Hosts to replace the current hosts.

The hosts must have only the hostid property defined.

Parameter behavior:
- required if groups is not set
timeperiods object/array Maintenance time periods to replace the current periods.
tags object/array Problem tags to replace the current tags.

Parameter behavior:
- supported if maintenance_type of Maintenance object is set to "with data collection"

Return values

(object) Returns an object containing the IDs of the updated maintenances under the maintenanceids property.

Examples

Assigning different hosts

Replace the hosts currently assigned to maintenance with two different ones.

Request:

{
           "jsonrpc": "2.0",
           "method": "maintenance.update",
           "params": {
               "maintenanceid": "3",
               "hosts": [
                   {"hostid": "10085"},
                   {"hostid": "10084"}
               ]
           },
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "maintenanceids": [
                   "3"
               ]
           },
           "id": 1
       }

See also

Source

CMaintenance::update() in ui/include/classes/api/services/CMaintenance.php.