[comment]: # ({f47b150e-f47b150e})
# maintenance.create

[comment]: # ({/f47b150e-f47b150e})

[comment]: # ({e8498ebc-e8498ebc})
### Description

`object maintenance.create(object/array maintenances)`

This method allows to create new maintenances.

::: noteclassic
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](/manual/web_interface/frontend_sections/administration/user_roles)
for more information.
:::

[comment]: # ({/e8498ebc-e8498ebc})

[comment]: # ({986e4b80-986e4b80})
### Parameters

`(object/array)` Maintenances to create.

Additionally to the [standard maintenance
properties](object#maintenance), the method accepts the following
parameters.

|Parameter|[Type](/manual/api/reference_commentary#data_types)|Description|
|---------|---------------------------------------------------|-----------|
|**groupids**<br>(required)|array|IDs of the host groups that will undergo maintenance.|
|**hostids**<br>(required)|array|IDs of the hosts that will undergo maintenance.|
|**timeperiods**<br>(required)|array|Maintenance [time periods](/manual/api/reference/maintenance/object#time_period).|
|tags|array|[Problem tags](/manual/api/reference/maintenance/object#problem_tag).<br><br>Define what problems must be suppressed.<br>If no tags are given, all active maintenance host problems will be suppressed.|

::: noteimportant
At least one host or host group must be defined
for each maintenance.
:::

[comment]: # ({/986e4b80-986e4b80})

[comment]: # ({48c4869c-48c4869c})
### Return values

`(object)` Returns an object containing the IDs of the created
maintenances under the `maintenanceids` property. The order of the
returned IDs matches the order of the passed maintenances.

[comment]: # ({/48c4869c-48c4869c})

[comment]: # ({b41637d2-b41637d2})
### Examples

[comment]: # ({/b41637d2-b41637d2})

[comment]: # ({c992c873-c992c873})
#### Creating a maintenance

Create a maintenance with data collection for host group "2" with
problem tags **<service:mysqld>** and **error**. It must be active from
22.01.2013 till 22.01.2014, come in effect each Sunday at 18:00 and last
for one hour.

Request:

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "maintenance.create",
    "params": {
        "name": "Sunday maintenance",
        "active_since": 1358844540,
        "active_till": 1390466940,
        "tags_evaltype": 0,
        "groupids": [
            "2"
        ],
        "timeperiods": [
            {
                "timeperiod_type": 3,
                "every": 1,
                "dayofweek": 64,
                "start_time": 64800,
                "period": 3600
            }
        ],
        "tags": [
            {
                "tag": "service",
                "operator": "0",
                "value": "mysqld",
            },
            {
                "tag": "error",
                "operator": "2",
                "value": ""
            }
        ]
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

Response:

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

[comment]: # ({/c992c873-c992c873})

[comment]: # ({82b3ef0e-82b3ef0e})
### See also

-   [Time period](object#time_period)

[comment]: # ({/82b3ef0e-82b3ef0e})

[comment]: # ({3e3a556f-3e3a556f})
### Source

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

[comment]: # ({/3e3a556f-3e3a556f})
