Управление конфигурационными единицами
Получение доступных типов КЕ
GET /api/public/sm/v2/rsm/config-item-types
Запрос возвращает список моделей типов КЕ.
Получение доступных рабочих групп
GET /api/public/sm/v2/rsm/work-groups
Запрос возвращает список моделей рабочих групп.
Получение всех доступных КЕ
GET /api/public/sm/v2/rsm/config-items?page=1&perPage=-1&search=sample&sortCol=id&sortDir=asc&skip=0
Запрос возвращает список моделей КЕ с минимальным набором атрибутов: идентификатор id
и имя name
.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание параметра |
---|---|---|---|---|
page | integer | нет | null | Номер страницы |
perPage | integer | нет | null | Количество записей на одну страницу. Если -1 - будут возвращены все КЕ |
search | string | нет | null | Строка поиска |
sortCol | string | нет | null | Название поля, по которому выполняется сортировка |
sortDir | string | нет | null | Направление сортировки (asc/desc) |
skip | integer | нет | null | Количество записей, которое требуется пропустить |
Получение КЕ по идентификатору
GET /api/public/sm/v2/rsm/config-items/{id}?includeState=false&includeHealth=false
Запрос возвращает модель КЕ, запрошенной по идентификатору.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание параметра |
---|---|---|---|---|
id | integer | да | нет | Идентификатор КЕ |
includeState | boolean | нет | false | Включить информацию по статусу КЕ |
includeHealth | boolean | нет | false | Включить информацию по здоровью КЕ |
Коды ответов
Код ответа | Описание |
---|---|
400 | Неправильный идентификатор КЕ |
403 | У вас недостаточно прав для чтения КЕ |
404 | КЕ с идентификатором {id} не найдена |
Получение списка КЕ по фильтру
POST /api/public/sm/v2/rsm/config-items/filter?page=1&perPage=-1&search=sample&sortCol=id&sortDir=asc&skip=0
При успешном исполнении запроса возвращается список моделей КЕ, соответствующих условиям фильтра, с минимальным набором атрибутов: идентификатор id
, имя name
и словарь меток labels
.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание параметра |
---|---|---|---|---|
page | integer | нет | null | Номер страницы |
perPage | integer | нет | null | Количество записей на одну страницу. Если -1 - будут возвращены все КЕ |
search | string | нет | null | Строка поиска |
sortCol | string | нет | null | Название поля, по которому выполняется сортировка |
sortDir | string | нет | null | Направление сортировки (asc/desc) |
skip | integer | нет | null | Количество записей, которое требуется пропустить |
Тело запроса
{
"ids": [1, 2, 3],
"names": ["Sample CI 1", "Sample CI 2"],
"labels": {
"single_label": "value",
"multi_label": ["value_a", "value_b"],
"label_with_any_value": null
},
"stageCategories": ["Active", "Archive"]
}
Поля тела запроса
Название поля | Тип поля | Обязательное поле | Значение по умолчанию | Описание |
---|---|---|---|---|
ids | integer [] | нет | null | Список идентификаторов КЕ. Если null , то любые |
names | string [] | нет | null | Список названий КЕ. Если null , то любые |
labels | object | нет | null | Словарь меток КЕ. Если null , то любые |
stageCategories | string [] | нет | null | Список категорий стадии жизненного цикла. Если null , то любые |
-
В искомых КЕ должны присутствовать все указанные метки. Если для метки указано одно или несколько значений, то в искомой КЕ должно присутствовать хотя бы одно из значений для данной метки. Если значение метки в фильтре
null
, фильтрация осуществляется только по названию метки. -
Возможные значения категорий жизненного цикла КЕ
stageCategories
- Created - КЕ создана
- Deleted - КЕ удалена
- Active - Активная КЕ
- Archive - Архивная КЕ
Получение списка КЕ по расширенному фильтру
POST /api/public/sm/v2/rsm/config-items/filter/extended?page=1&perPage=-1&search=sample&sortCol=id&sortDir=asc&skip=0&fieldMask=id,name
При успешном исполнении запроса возвращается список расширенной модели КЕ, соответствующих условиям фильтра.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание параметра |
---|---|---|---|---|
page | integer | нет | null | Номер страницы |
perPage | integer | нет | null | Количество записей на одну страницу. Если -1 - будут возвращены все КЕ |
search | string | нет | null | Строка поиска |
sortCol | string | нет | null | Название поля, по которому выполняется сортировка |
sortDir | string | нет | null | Направление сортировки (asc/desc) |
skip | integer | нет | null | Количество записей, которое требуется пропустить |
fieldMask | string [] | нет | null | Маска полей |
- Маска полей - представляет собой строку с названиями полей из расширенной модели КЕ, разделённые через запятую (например,
id,name,ownerWorkGroup
). В ответе на запрос будут указаны только поля, которые указаны в маске. По умолчанию возвращается только id. Данный параметр позволяет облегчить запрос к API путем указания только нужных полей в ответе.
Тело запроса
{
"ids": [1, 2, 3],
"names": ["Sample CI 1", "Sample CI 2"],
"typeIds": [1, 2, 3],
"stageCategories": ["Category1", "Category2"],
"labels": {
"single_label": "value",
"multi_label": ["value_a", "value_b"],
"label_with_any_value": null
},
"ownerWorkGroupIds": [1, 2, 3]
}
Поля тела запроса
Название поля | Тип поля | Обязательное поле | Значение по умолчанию | Описание |
---|---|---|---|---|
ids | integer[] | нет | null | Список идентификаторов КЕ. Если null , то любые |
names | string[] | нет | null | Список названий КЕ. Если null , то любые |
typeIds | integer[] | нет | null | Список идентификаторов типов КЕ. Если null , то любые |
stageCategories | string[] | нет | null | Список категорий стадии жизненного цикла. Если null , то любые |
labels | object | нет | null | Словарь меток КЕ. Если null , то любые |
attributes | object | нет | null | Аттрибуты КЕ |
ownerWorkGroupIds | integer[] | нет | null | Список идентификаторов рабочих групп-владельцев. Если null , то любые |
-
В искомых КЕ должны присутствовать все указанные метки. Если для метки указано одно или несколько значений, то в искомой КЕ должно присутствовать хотя бы одно из значений для данной метки. Если значение метки в фильтре
null
, фильтрация осуществляется только по названию метки. -
Возможные значения категорий жизненного цикла КЕ
stageCategories
- "Created" - КЕ создана
- "Deleted" - КЕ удалена
- "Active" - Активная КЕ
- "Archive" - Архивная КЕ
Получение списка КЕ по идентификаторам
GET /api/public/sm/v2/rsm/config-items/batch?includeState=false&includeHealth=false
При успешном исполнении запроса возвращается список моделей КЕ.
В случае возникновения ошибки при получении отдельной КЕ, модель этой КЕ будет отсутствовать в результирующем списке. Если возникли ошибки при получении всех КЕ, запрос вернет пустой список.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание параметра |
---|---|---|---|---|
includeState | boolean | нет | false | Включить информацию по статусу КЕ |
includeHealth | boolean | нет | false | Включить информацию по здоровью КЕ |
Тело запроса
[1,2,3]
Поля тела запроса
Название поля | Тип поля | Обязательное поле | Значение по умолчанию | Описание |
---|---|---|---|---|
[] | integer[] | да | нет | Список идентификаторов КЕ |
Коды ответов
Код ответа | Описание |
---|---|
400 | Список идентификаторов КЕ пустой |
Получение КЕ по уникальным ключам атрибутов
POST /api/public/sm/v2/rsm/config-items/attributes/unique-keys
При успешном исполнении запроса возвращается модель КЕ, полученной по уникальным ключам атрибутов.
Тело запроса
{
"configItemTypeId": 0,
"attributes": {
"prop1": "value1",
"prop2": "value2"
}
}
Поля тела запроса
Название поля | Тип поля | Обязательное поле | Значение по умолчанию | Описание |
---|---|---|---|---|
configItemTypeId | integer | да | нет | Идентификатор типа КЕ |
attributes | object | да | нет | Ключевые атрибуты КЕ |
Коды ответов
Код ответа | Описание |
---|---|
403 | Недостаточно прав для получения информации о КЕ |
404 | КЕ не найдена |
Создание КЕ
POST /api/public/sm/v2/rsm/config-items
Запрос возвращает модель созданной КЕ.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание |
---|---|---|---|---|
makeNameUnique | boolean | нет | false | Создать КЕ, если название уже занято |
- Параметр
makeNameUnique
:true
- Если в CMDB существует КЕ c указанным названием будет создана новая КЕ с добавлением индекса в название КЕfalse
- Если в CMDB существует КЕ c указанным названием будет возвращена ошибка
Тело запроса
{
"name": "Name",
"description": "Description",
"parent": {
"id": 0
},
"configItemType": {
"id": 0
},
"ownerWorkGroup": {
"id": 0
},
"labels": {
"label_a_name": "label_value",
"label_b_name": ["label_value_1", "label_value_2"],
"label_c_name": null
},
"sharedToWorkGroups": [{
"workGroupId": 0,
"shareType": "ConfigItem",
"grants": ["read"]
}],
"attributes": []
}
Поля тела запроса
Название поля | Тип поля | Обязательное поле | Значение по умолчанию | Описание поля |
---|---|---|---|---|
name | string | да | нет | Наименование КЕ |
description | string | нет | null | Описание КЕ |
parent | { id: integer } | нет | null | Идентификатор родительской КЕ, с которой требуется установить связь при создании КЕ. Если указан null или 0 , то КЕ будет создана как корневой элемент |
configItemType | { id: integer } | нет | null | Тип КЕ. Если null , то будет присвоен тип по умолчанию |
ownerWorkGroup | { id: integer } | нет | null | Рабочая группа-владелец КЕ. Если указан идентификатор родительской КЕ, то РГ-владелец будет установлен такой же, как и у этой КЕ |
labels | object | нет | null | Словарь меток КЕ |
sharedToWorkGroups | object[] | нет | null | Список моделей предоставления прав для конкретных рабочих групп |
attributes | object[] | нет | null | Список моделей атрибутов КЕ |
Предоставляемые рабочим группам права
Коды ответов
Код ответа | Описание |
---|---|
201 | КЕ успешно создана |
400 | Пустое тело запроса |
400 | Неверная модель данных в теле запроса |
400 | Требуется указать наименование КЕ |
400 | Требуется указать рабочую группу-владельца КЕ |
400 | Недопустимое значение идентификатора КЕ |
400 | Недопустимое значение идентификатора рабочей группы |
400 | КЕ с идентификатором {id} уже в CMDB |
400 | Родительская КЕ с идентификатором {id} не существует в CMDB |
400 | КЕ с именем {name} уже существует для типа {typeName} |
400 | Тип КЕ с идентификатором {id} не найден в пространстве пользователя |
400 | Указанный набор прав не соответствует ни одному из существующих прав. Доступ к КЕ не передан другим рабочим группам |
403 | Недостаточно прав для добавления КЕ в РГ |
404 | Рабочая группа с идентификатором {id} не найдена |
Возможна ситуация, при которой КЕ может быть успешно создана, однако если в запросе было так же указано предоставление доступа к КЕ другим РГ с некорректными правами, то доступ к КЕ не буден предоставлен другим РГ. Будет получено сообщение: "Указанный набор прав не соответствует ни одному из существующих прав. Доступ к КЕ не передан другим рабочим группам."
Пакетное создание нескольких КЕ
POST /api/public/sm/v2/rsm/config-items/batch?makeNamesUnique=false
Запрос возвращает список моделей созданных КЕ.
В случае возникновения ошибки при создании отдельной КЕ, модель этой КЕ будет отсутствовать в результирующем списке.
Если возникли ошибки при создании всех КЕ, запрос вернет пустой список.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание |
---|---|---|---|---|
makeNameUnique | boolean | нет | false | Создать КЕ, если название уже занято |
- Параметр
makeNameUnique
:true
- Если в CMDB существует КЕ c указанным названием будет создана новая КЕ с добавлением индекса в название КЕfalse
- Если в CMDB существует КЕ c указанным названием будет возвращена ошибка
Тело запроса
[{
"name": "Name",
"description": "Description",
"parent": {
"id": 0
},
"configItemType": {
"id": 0
},
"ownerWorkGroup": {
"id": 0
},
"labels": {
"label_a_name": "label_value",
"label_b_name": ["label_value_1", "label_value_2"],
"label_c_name": null
},
"sharedToWorkGroups": [{
"workGroupId": 0,
"shareType": "ConfigItem",
"grants": ["read"]
}],
"attributes": []
}]
Поля тела запроса
Название поля | Тип поля | Обязательное поле | Значение по умолчанию | Описание поля |
---|---|---|---|---|
name | string | да | нет | Наименование КЕ |
description | string | нет | null | Описание КЕ |
parent | { id: integer } | нет | null | Идентификатор родительской КЕ, с которой требуется установить связь при создании КЕ. Если указан null или 0 , то КЕ будет создана как корневой элемент |
configItemType | { id: integer } | нет | null | Тип КЕ. Если null , то будет присвоен тип по умолчанию |
ownerWorkGroup | { id: integer } | нет | null | Рабочая группа-владелец КЕ. Если указан идентификатор родительской КЕ, то РГ-владелец будет установлен такой же, как и у этой КЕ |
labels | object | нет | null | Словарь меток КЕ |
sharedToWorkGroups | object[] | нет | null | Список моделей предоставления прав для конкретных рабочих групп |
attributes | object[] | нет | null | Список моделей атрибутов КЕ |
Предоставляемые рабочим группам права
Коды ответов
Код ответа | Описание |
---|---|
201 | КЕ успешно создана |
400 | Пустое тело запроса |
400 | Неверная модель данных в теле запроса |
400 | Требуется указать наименование КЕ |
400 | Требуется указать рабочую группу-владельца КЕ |
400 | Недопустимое значение идентификатора КЕ |
400 | Недопустимое значение идентификатора рабочей группы |
400 | КЕ с идентификатором {id} уже в CMDB |
400 | Родительская КЕ с идентификатором {id} не существует в CMDB |
400 | КЕ с именем {name} уже существует для типа {typeName} |
400 | Тип КЕ с идентификатором {id} не найден в пространстве пользователя |
400 | Указанный набор прав не соответствует ни одному из существующих прав. Доступ к КЕ не передан другим рабочим группам |
403 | Недостаточно прав для добавления КЕ в РГ |
404 | Рабочая группа с идентификатором {id} не найдена |
Возможна ситуация, при которой КЕ может быть успешно создана, однако если в запросе было так же указано предоставление доступа к КЕ другим РГ с некорректными правами, то доступ к КЕ не буден предоставлен другим РГ. Будет получено сообщение: "Указанный набор прав не соответствует ни одному из существующих прав. Доступ к КЕ не передан другим рабочим группам."
Удаление КЕ
DELETE /api/public/sm/v2/rsm/config-items/{id}?applyGrants=false
При успешном исполнении запроса возвращается пустой ответ.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание параметра |
---|---|---|---|---|
id | integer | да | нет | Идентификатор удаляемой КЕ |
applyGrants | boolean | нет | false | Если задано true – применить настройки доступа к подчинённым КЕ. По умолчанию – false |
Коды ответов
Код ответа | Описание |
---|---|
204 | КЕ успешно удалена |
400 | Недопустимое значение идентификатора КЕ |
403 | Недостаточно прав для удаления КЕ |
404 | КЕ с идентификатором {id} не найдена |
Массовое удаление КЕ
DELETE /api/public/sm/v2/rsm/config-items/batch?applyGrants=false
При успешном исполнении запроса возвращается пустой ответ.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание параметра |
---|---|---|---|---|
applyGrants | boolean | нет | false | Если задано true – применить настройки доступа к подчинённым КЕ. По умолчанию – false |
Тело запроса
[1, 2, 3]
Поля тела запроса
Название поля | Тип поля | Обязательное поле | Значение по умолчанию | Описание |
---|---|---|---|---|
[] | integer[] | да | нет | Список идентификаторов КЕ, которые требуется удалить |
Коды ответов
Код ответа | Описание |
---|---|
204 | КЕ успешно удалена |
400 | Недопустимое значение идентификатора КЕ |
403 | Недостаточно прав для удаления КЕ |
404 | КЕ с идентификатором {id} не найдена |
Изменение основной информации КЕ
PUT /api/public/sm/v2/rsm/config-items/{id}?makeNameUnique=false
Запрос возвращает модель обновлённой КЕ.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание |
---|---|---|---|---|
id | integer | да | нет | Идентификатор обновляемой КЕ |
makeNameUnique | boolean | нет | false | Создать КЕ, если название уже занято |
- Параметр
makeNameUnique
:true
- Если в CMDB существует КЕ c указанным названием будет создана новая КЕ с добавлением индекса в название КЕfalse
- Если в CMDB существует КЕ c указанным названием будет возвращена ошибка
Тело запроса
{
"name": "Name",
"description": "Description",
"configItemType": {
"id": 0
},
"ownerWorkGroup": {
"id": 0
},
"labels": {
"label_a_name": "label_value",
"label_b_name": ["label_value_1", "label_value_2"],
"label_c_name": null
}
}
Поля тела запроса
Название поля | Тип поля | Обязательное поле | Значение по умолчанию | Описание поля |
---|---|---|---|---|
name | string | да | нет | Наименование КЕ |
description | string | нет | null | Описание КЕ |
configItemType | { id: integer } | нет | null | Тип КЕ. Если null , то будет присвоен тип по умолчанию |
ownerWorkGroup | { id: integer } | нет | null | Рабочая группа-владелец КЕ. Если указан идентификатор родительской КЕ, то РГ-владелец будет установлен такой же, как и у этой КЕ |
labels | object | нет | null | Словарь меток КЕ |
Коды ответов
Код ответа | Описание |
---|---|
400 | Требуется указать наименование КЕ |
400 | Требуется указать рабочую группу-владельца КЕ |
400 | Недопустимое значение идентификатора КЕ |
400 | Недопустимое значение идентификатора рабочей группы |
400 | КЕ с именем {name} уже существует для типа {typeName} |
400 | Тип КЕ с идентификатором {id} не найден в пространстве пользователя |
403 | Недостаточно прав для обновления КЕ |
404 | КЕ с идентификатором {id} не найдена |
404 | Рабочая группа с идентификатором {id} не найдена |
Изменение основной части информации нескольких КЕ
PATCH /api/public/sm/v2/rsm/config-items/batch?makeNamesUnique=false
Запрос возвращает список моделей обновлённых КЕ.
Параметры запроса
Название параметра | Тип параметра | Обязательный параметр | Значение по умолчанию | Описание |
---|---|---|---|---|
makeNameUnique | boolean | нет | false | Изменить название КЕ, если оно уже занято |
- Параметр
makeNameUnique
:true
- Если в CMDB существует КЕ c указанным названием КЕ будет переименована с добавлением индекса в название КЕfalse
- Если в CMDB существует КЕ c указанным названием будет возвращена ошибка
Тело запроса
[{
"id": 0,
"name": "Name",
"configItemType": {
"id": 0
},
"labels": {
"label_a_name": "label_value",
"label_b_name": ["label_value_1", "label_value_2"],
"label_c_name": null
}
}]
Поля тела запроса
Название поля | Тип поля | Обязательное поле | Значение по умолчанию | Описание поля |
---|---|---|---|---|
id | integer | да | нет | Идентификатор КЕ |
name | string | нет | null | Наименование КЕ. Если null , то изменений не последует |
configItemType | { id: integer } | нет | null | Тип КЕ. Если null , то изменений не последует |
labels | object | нет | null | Словарь меток КЕ. Если null , то изменений не последует |
Коды ответов
Код ответа | Описание |
---|---|
400 | Требуется указать наименование КЕ |
400 | Недопустимое значение идентификатора КЕ |
400 | Недопустимое значение идентификатора рабочей группы |
400 | КЕ с именем {name} уже существует для типа {typeName} |
400 | Тип КЕ с идентификатором {id} не найден в пространстве пользователя |
403 | Недостаточно прав для обновления КЕ |
404 | КЕ с идентификатором {id} не найдена |
404 | Рабочая группа с идентификатором {id} не найдена |