[comment]: # translation:outdated

[comment]: # ({0d3af930-0d3af930})
# 获取维护期

[comment]: # ({/0d3af930-0d3af930})

[comment]: # ({7fdea02e-a04dd4c9})
### 描述

`integer/array maintenance.get(object parameters)`

此方法用于根据给定参数获取维护模式。

::: noteclassic
任何类型的用户都可以使用此方法。权限可以在用户角色设置中撤消调用该方法。了解更多信息可以参见[用户角色](/manual/web_interface/frontend_sections/administration/User_roles)。
:::

[comment]: # ({/7fdea02e-a04dd4c9})

[comment]: # ({a9508c14-9ca798d7})
### 参数

`(object)` 定义所需输出的参数。

该方法支持以下参数。

|参数|[类型](/manual/api/reference_commentary#data_types)|说明|
|---------|--------------------------------------|------------|
|groupids|string/array|只返回分配给给定主机组的维护。|
|hostids|string/array|仅返回分配给给定主机的维护。|
|maintenanceids|string/array|只返回给定 ID 的维护。|
|selectGroups|query|返回一个 [groups](/manual/api/reference/hostgroup/object) 属性，其中主机组分配给维护。|
|selectHosts|query|返回一个 [hosts](/manual/api/reference/host/object) 属性，其中主机分配给维护。|
|selectTags|query|返回带有维护问题标签的 [tags](/manual/api/reference/maintenance/object#problem_tag) 属性。|
|selectTimeperiods|query|返回带有维护时间段的 [timeperiods](/manual/api/reference/maintenance/object#Time_period) 属性。|
|sortfield|string/array|按给定属性对结果进行排序。<br><br>可用值：`maintenanceid`、`name` 和 `maintenance_type`。|
|countOutput|boolean|这些参数对所有 `get` 方法都是通用的，在 [参考评论](/manual/api/reference_commentary#common_get_method_parameters) 中有详细描述。|
|可编辑|boolean|^|
|排除搜索|boolean|^|
|过滤器|object|^|
|限制|integer|^|
|输出|query|^|
|preservekeys|boolean|^|
|搜索|object|^|
|searchByAny|boolean|^|
|searchWildcardsEnabled|boolean|^|
|排序|string/array|^|
|开始搜索|boolean|^|

[comment]: # ({/a9508c14-9ca798d7})

[comment]: # ({7223bab1-7223bab1})

### 返回值

`(整型/数组)` 返回其中之一：
-   一个对象数组；
-   如果使用`countOutput`参数，被检索对象的数量。

[comment]: # ({/7223bab1-7223bab1})

[comment]: # ({b41637d2-b41637d2})
### 案例

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

[comment]: # ({7d698962-0b1cb387})
#### 检索维护周期

检索所有已配置的维护，以及有关分配的主机组、定义的时间段和问题标签的数据。
请求:

```json
{
    "jsonrpc": "2.0",
    "method": "maintenance.get",
    "params": {
        "output": "extend",
        "selectGroups": "extend",
        "selectTimeperiods": "extend",
        "selectTags": "extend"
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

响应:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "maintenanceid": "3",
            "name": "Sunday maintenance",
            "maintenance_type": "0",
            "description": "",
            "active_since": "1358844540",
            "active_till": "1390466940",
            "tags_evaltype": "0",
            "groups": [
                {
                    "groupid": "4",
                    "name": "Zabbix servers",
                    "internal": "0"
                }
            ],
            "timeperiods": [
                {
                    "timeperiod_type": "3",
                    "every": "1",
                    "month": "0",
                    "dayofweek": "1",
                    "day": "0",
                    "start_time": "64800",
                    "period": "3600",
                    "start_date": "2147483647"
                }
            ],
            "tags": [
                {
                    "tag": "service",
                    "operator": "0",
                    "value": "mysqld",
                },
                {
                    "tag": "error",
                    "operator": "2",
                    "value": ""
                }
            ]
        }
    ],
    "id": 1
}
```

[comment]: # ({/7d698962-0b1cb387})

[comment]: # ({dbcf678a-dbcf678a})
### 参见

- [主机](/manual/api/reference/host/object#host)
- [主机组](/manual/api/reference/hostgroup/object#host_group)
- [时间段](object#time_period)

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

[comment]: # ({50ed5be3-50ed5be3})
### 来源

CMaintenance::get() 在 *ui/include/classes/api/services/CMaintenance.php*.

[comment]: # ({/50ed5be3-50ed5be3})
