[comment]: # ({cd4a930c-cd4a930c})
# service.update

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

[comment]: # ({5044bc6a-79afe9b7})
### Описание

`object service.update(объект/массив services)`

Этот метод позволяет обновлять существующие сервисы.

::: noteclassic
Этот метод доступен пользователям любого типа.
Разрешения на вызов метода можно отозвать в настройках ролей пользователя.
Дополнительную информацию см. в разделе [Роли пользователей](/manual/web_interface/frontend_sections/users/user_roles).
:::

[comment]: # ({/5044bc6a-79afe9b7})

[comment]: # ({7f072363-5fb5ebb3})
### Параметры

`(object/array)` свойства сервиса, которые необходимо обновить.

Для каждого сервиса должно быть определено свойство `serviceid`, все остальные
свойства необязательны. Будут обновлены только переданные свойства, все
остальные останутся без изменений.

Помимо [стандартных свойств сервиса](object#service), метод принимает следующие параметры.

|Parameter|[Type](/manual/api/reference_commentary#data-types)| Description|
|--|--|------|
|children|array|Дочерние [сервисы](/manual/api/reference/service/object#service), которые заменят текущие дочерние сервисы.<br><br>У дочерних сервисов должно быть определено только свойство `serviceid`.|
|parents|array|Родительские [сервисы](/manual/api/reference/service/object#service), которые заменят текущие родительские сервисы.<br><br>У родительских сервисов должно быть определено только свойство `serviceid`.|
|tags|array|[Теги сервиса](/manual/api/reference/service/object#service-tag), которые заменят текущие теги сервиса.|
|problem\_tags|array|[Теги проблемы](/manual/api/reference/service/object#problem-tag), которые заменят текущие теги проблемы.|
|status\_rules|array|[Правила статуса](/manual/api/reference/service/object#status-rule), которые заменят текущие правила статуса.|

[comment]: # ({/7f072363-5fb5ebb3})

[comment]: # ({9465ee4d-9465ee4d})
### Возвращаемые значения

`(object)` Возвращает объект, содержащий идентификаторы обновленных служб
в свойстве `serviceids`.

[comment]: # ({/9465ee4d-9465ee4d})

[comment]: # ({b41637d2-b41637d2})
### Примеры

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

[comment]: # ({3db3fe16-b9918036})
#### Установка родителя для сервиса

Сделать сервис с ID "3" родительским для сервиса с ID "5".

[Запрос](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "service.update",
    "params": {
        "serviceid": "5",
        "parents": [
            {
                "serviceid": "3"
            }
        ]
    },
    "id": 1
}
```

Ответ:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "serviceids": [
            "5"
        ]
    },
    "id": 1
}
```

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

[comment]: # ({96cfca7d-263b1baa})
#### Добавление запланированного периода недоступности

Добавьте период недоступности для сервиса с ID "4", запланированный еженедельно с понедельника
22:00 до вторника 10:00.

[Запрос](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "service.update",
    "params": {
        "serviceid": "4",
        "times": [
            {
                "type": "1",
                "ts_from": "165600",
                "ts_to": "201600"
            }
        ]
    },
    "id": 1
}
```

Ответ:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "serviceids": [
            "4"
        ]
    },
    "id": 1
}
```

[comment]: # ({/96cfca7d-263b1baa})

[comment]: # ({fd1b6894-fd1b6894})
### Источник

CService::update() в *ui/include/classes/api/services/CService.php*.

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