API - Ресурсно-сервисная модель
Для выполнения запроса к API необходима дополнительная авторизация.
Используйте в запросе заголовок Authorization: Bearer <персональный токен>
.
Получение доступных типов КЕ
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 | number | Номер страницы |
perPage | number | Количество записей на одну страницу. Если -1 - будут возвращены все КЕ |
search | string/null | Строка поиска |
sortCol | string/null | Название поля, по которому выполняется сортировка |
sortDir | string/null | Направление сортировки (asc/desc) |
skip | number | Количество записей, которое требуется пропустить |
Получение КЕ по идентификатору
GET /api/public/sm/v2/rsm/config-items/{id}?includeState=false&includeHealth=false
Запрос возвращает модель КЕ, запрошенной по идентификатору.
Параметры запроса
Название параметра | Тип параметра | Описание параметра |
---|---|---|
includeState | boolean | Включить информацию по статусу КЕ |
includeHealth | boolean | Включить информацию по здоровью КЕ |
Коды ответов
Код ответа | Описание |
---|---|
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 | number | Номер страницы |
perPage | number | Количество записей на одну страницу. Если -1 - будут возвращены все КЕ |
search | string/null | Строка поиска |
sortCol | string/null | Название поля, по которому выполняется сортировка |
sortDir | string/null | Направление сортировки (asc/desc) |
skip | number | Количество записей, которое требуется пропустить |
Тело запроса
{
"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": ["Category1", "Category2"]
}
Поля тела запроса
Название поля | Тип поля | Описание |
---|---|---|
ids | number[] or null | Список идентификаторов КЕ. Если null , то любые |
names | string[] or null | Список названий КЕ. Если null , то любые |
labels | object or null | Словарь меток КЕ. Если null , то любые |
stageCategories | string[] or 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 | number | Номер страницы |
perPage | number | Количество записей на одну страницу. Если -1 - будут возвращены все КЕ |
search | string/null | Строка поиска |
sortCol | string/null | Название поля, по которому выполняется сортировка |
sortDir | string/null | Направление сортировки (asc/desc) |
skip | number | Количество записей, которое требуется пропустить |
fieldMask | string | Маска полей |
- Маска полей - представляет собой строку с названиями полей модели, разделёнными запятой. В ответе запроса будут указаны только поля, которые указаны в маске. По умолчанию возвращается только id.
Тело запроса
{
"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 | number[] or null | Список идентификаторов КЕ. Если null , то любые |
names | string[] or null | Список названий КЕ. Если null , то любые |
typeIds | number[] or null | Список идентификаторов типов КЕ. Если null , то любые |
stageCategories | string[] or null | Список категорий стадии жизненного цикла. Если null , то любые |
labels | object or null | Словарь меток КЕ. Если null , то любые |
ownerWorkGroupIds | number[] or null | Список идентификаторов рабочих групп-владельцев. Если null , то любые |
В искомых КЕ должны присутствовать все указанные метки. Если для метки указано одно или несколько значений, то в искомой КЕ должно присутствовать хотя бы одно из значений для данной метки. Если значение метки в фильтре
null
, фильтрация осуществляется только по названию метки.Возможные значения категорий жизненного цикла КЕ
stageCategories
- "Created" - КЕ создана
- "Deleted" - КЕ удалена
- "Active" - Активная КЕ
- "Archive" - Архивная КЕ
Получение списка КЕ по идентификаторам
GET /api/public/sm/v2/rsm/config-items/batch?includeState=false&includeHealth=false
При успешном исполнении запроса возвращается список моделей КЕ.
В случае возникновения ошибки при получении отдельной КЕ, модель этой КЕ будет отсутствовать в результирующем списке. Если возникли ошибки при получении всех КЕ, запрос вернет пустой список.
Параметры запроса
Название параметра | Тип параметра | Описание параметра |
---|---|---|
includeState | boolean | Включить информацию по статусу КЕ |
includeHealth | boolean | Включить информацию по здоровью КЕ |
Тело запроса
[1,2,3]
Поля тела запроса
Название поля | Тип поля | Описание |
---|---|---|
ids | number[] | Список идентификаторов КЕ |
Коды ответов
Код ответа | Описание |
---|---|
400 | Список идентификаторов КЕ пустой |
Создание КЕ
POST /api/public/sm/v2/rsm/config-items
Запрос возвращает модель созданной КЕ.
Параметры запроса
Название параметра | Тип параметра | Описание |
---|---|---|
makeNameUnique | boolean | Создать КЕ, если название уже занято |
- Параметр
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": ["base-system.rsm.config-items-read"]
}]
}
Поля тела запроса
Название поля | Тип поля | Описание поля |
---|---|---|
name | string | Наименование КЕ |
description | string | Описание КЕ |
parent | { id: number } / null | Идентификатор родительской КЕ, с которой требуется установить связь при создании КЕ. Если указан null или 0 , то КЕ будет создана как корневой элемент |
configItemType | { id: number } / null | Тип КЕ. Если null , то будет присвоен тип по умолчанию |
ownerWorkGroup | { id: number } / null | Рабочая группа-владелец КЕ. Если указан идентификатор родительской КЕ, то РГ-владелец будет установлен такой же, как и у этой КЕ |
labels | object / null | Словарь меток КЕ |
sharedToWorkGroups | object[] | Список моделей предоставления прав для конкретных рабочих групп |
Предоставляемые рабочим группам права
Коды ответов
Код ответа | Описание |
---|---|
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 | Создать КЕ, если название уже занято |
- Параметр
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": ["base-system.rsm.config-items-read"]
}]
}]
Поля тела запроса
Название поля | Тип поля | Описание поля |
---|---|---|
name | string | Наименование КЕ |
description | string | Описание КЕ |
parent | { id: number } / null | Идентификатор родительской КЕ, с которой требуется установить связь при создании КЕ. Если указан null или 0 , то КЕ будет создана как корневой элемент |
configItemType | { id: number } / null | Тип КЕ. Если null , то будет присвоен тип по умолчанию |
ownerWorkGroup | { id: number } / null | Рабочая группа-владелец КЕ. Если указан идентификатор родительской КЕ, то РГ-владелец будет установлен такой же, как и у этой КЕ |
labels | object / null | Словарь меток КЕ |
sharedToWorkGroups | object[] | Список моделей предоставления прав для конкретных рабочих групп |
Предоставляемые рабочим группам права
Коды ответов
Код ответа | Описание |
---|---|
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}
– идентификатор удаляемой КЕ.
При успешном исполнении запроса возвращается пустой ответ.
Параметры запроса
Название параметра | Тип параметра | Описание параметра |
---|---|---|
applyGrants | boolean | Если задано true – применить настройки доступа к подчинённым КЕ. По умолчанию – false |
Коды ответов
Код ответа | Описание |
---|---|
204 | КЕ успешно удалена |
400 | Недопустимое значение идентификатора КЕ |
403 | Недостаточно прав для удаления КЕ |
404 | КЕ с идентификатором {id} не найдена |
Изменение основной информации КЕ
PUT /api/public/sm/v2/rsm/config-items/{id}?makeNameUnique=false
{id}
– идентификатор обновляемой КЕ.
Запрос возвращает модель обновлённой КЕ.
Параметры запроса
Название параметра | Тип параметра | Описание |
---|---|---|
makeNameUnique | boolean | Создать КЕ, если название уже занято |
- Параметр
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 | Описание КЕ |
configItemType | { id: number } / null | Тип КЕ. Если null , то будет присвоен тип по умолчанию |
ownerWorkGroup | { id: number } / 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 | Создать КЕ, если название уже занято |
- Параметр
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 | number | Идентификатор КЕ |
name | string | Наименование КЕ. Если null , то изменений не последует |
configItemType | { id: number } / null | Тип КЕ. Если null , то изменений не последует |
labels | object / null | Словарь меток КЕ. Если null , то изменений не последует |
Коды ответов
Код ответа | Описание |
---|---|
400 | Требуется указать наименование КЕ |
400 | Требуется указать рабочую группу-владельца КЕ |
400 | Недопустимое значение идентификатора КЕ |
400 | Недопустимое значение идентификатора рабочей группы |
400 | КЕ с именем {name} уже существует для типа {typeName} |
400 | Тип КЕ с идентификатором {id} не найден в пространстве пользователя |
403 | Недостаточно прав для обновления КЕ |
404 | КЕ с идентификатором {id} не найдена |
404 | Рабочая группа с идентификатором {id} не найдена |
Предоставление доступа к КЕ
POST /api/public/sm/v2/rsm/config-items/{id}/work-groups
{id}
– идентификатор КЕ.
Запрос возвращает модель обновлённой КЕ.
Тело запроса
{
"workGroupId": 0,
"shareType": "ConfigItem",
"grants": ["base-system.rsm.config-items-basic-read"]
}
Поля тела запроса
Название поля | Тип поля | Описание поля |
---|---|---|
workGroupId | number | Идентификатор рабочей группы. 0 – все рабочие группы, включая будущие |
shareType | string | Тип предоставляемых прав |
grants | string[] | Предоставляемые рабочим группам права |
Коды ответов
Код ответа | Описание |
---|---|
400 | Требуется указать список предоставляемых прав |
400 | Недопустимое значение идентификатора КЕ |
400 | Недопустимое значение идентификатора рабочей группы |
400 | Правило доступа уже установлено |
403 | Недостаточно прав для предоставления доступа к КЕ |
404 | КЕ с идентификатором {id} не найдена |
404 | Рабочая группа с идентификатором {id} не найдена |
Обновление предоставления доступа к КЕ
PUT /api/public/sm/v2/rsm/config-items/{id}/work-groups/{sharedId}
{id}
– идентификатор КЕ.
{sharedId}
- идентификатор модели предоставления доступа к КЕ.
Запрос возвращает модель обновлённой КЕ.
Тело запроса
{
"workGroupId": 0,
"shareType": "ConfigItem",
"grants": ["base-system.rsm.config-items-basic-read"]
}
Поля тела запроса
Название поля | Тип поля | Описание поля |
---|---|---|
id | number | Идентификатора модели предоставления доступа к КЕ |
shareType | string | Тип предоставляемых прав |
grants | string[] | Предоставляемые рабочим группам права |
Коды ответов
Код ответа | Описание |
---|---|
400 | Требуется указать идентификатор рабочей группы |
400 | Требуется указать список предоставляемых прав |
400 | Недопустимое значение идентификатора КЕ |
400 | Недопустимое значение идентификатора модели предоставления доступа к КЕ |
401 | Не удалось выполнить авторизацию пользователя |
403 | Недостаточно прав для обновления предоставленного доступа к КЕ |
404 | КЕ с идентификатором {id} не найдена |
404 | Модель предоставления доступа к КЕ с идентификатором{id} не найдена |
Удаление предоставления доступа к КЕ
DELETE /api/public/sm/v2/rsm/config-items/{id}/work-groups/{sharedId}
{id}
– идентификатор КЕ.
{sharedId}
– идентификатор модели предоставления доступа к КЕ.
Запрос возвращает модель обновлённой КЕ.
Коды ответов
Код ответа | Описание |
---|---|
204 | Запрос успешно исполнен |
400 | Недопустимое значение идентификатора КЕ |
400 | Недопустимое значение идентификатора модели предоставления доступа к КЕ |
403 | Недостаточно прав для удаления предоставления доступа к КЕ |
404 | КЕ с идентификатором {id} не найдена |
404 | Модель предоставления доступа к КЕ с идентификатором {id} не найдена |
Создание связи подчинения между КЕ
POST /api/public/sm/v2/rsm/config-items/{parentId}/children
{parentId}
– идентификатор родительской КЕ.
Запрос возвращает модель подчинённой КЕ.
Тело запроса
В теле запроса передаётся идентификатор подчинённой КЕ.
{
"id": 0
}
Коды ответа
Код ответа | Описание |
---|---|
400 | Неверная модель данных в теле запроса |
400 | Недопустимое значение идентификатора КЕ |
400 | Нельзя устанавливать связи подчинения между КЕ, принадлежащих разным рабочим группам |
403 | Недостаточно прав для управления родительской КЕ |
404 | Родительская КЕ с идентификатором {id} не найдена |
404 | Дочерняя КЕ с идентификатором {id} не найдена |
415 | Неправильный тип входных данных. Требуется указать тип: application/json |
Создание связи влияния между КЕ
POST /api/public/sm/v2/rsm/config-items/{dependentId}/influentials
{dependentId}
– идентификатор зависимой КЕ.
Запрос возвращает обновлённый список моделей влияющих КЕ с минимальным набором атрибутов: идентификатор {id}
и имя {name}
.
Тело запроса
В теле запроса передаётся идентификатор влияющей КЕ.
{
"id": 0
}
Коды ответа
Код ответа | Описание |
---|---|
400 | Недопустимое значение идентификатора КЕ |
403 | Недостаточно прав для управления зависимой КЕ |
403 | Недостаточно прав для управления влияющей КЕ |
404 | Зависимая КЕ с идентификатором {id} не найдена |
404 | Влияющая КЕ с идентификатором {id} не найдена |
Пакетное создание нескольких связей между КЕ
POST /api/public/sm/v2/rsm/config-item-edges/batch
Запрос возвращает обновлённый список моделей связей между КЕ.
Тело запроса
[
{
"sourceId":0,
"targetId":1,
"type":"Hierarchy"
},
{
"sourceId":2,
"targetId":3,
"type":"Influence"
}
]
Поля тела запроса
Название поля | Тип поля | Описание поля |
---|---|---|
sourceId | number | Идентификатор исходной КЕ |
targetID | number | Идентификатор целевой КЕ |
type | string | Тип связи |
Удаление связи подчинения между КЕ
DELETE /api/public/sm/v2/rsm/config-items/{parentId}/children/{childId}
{parentId}
– идентификатор родительской КЕ
{childId}
– идентификатор подчинённой КЕ.
Запрос возвращает модель ранее подчинённой КЕ.
Коды ответа
Код ответа | Описание |
---|---|
400 | Недопустимое значение идентификатора КЕ |
403 | Недостаточно прав для управления родительской КЕ |
404 | Родительская КЕ с идентификатором {id} не найдена |
404 | Дочерняя КЕ с идентификатором {id} не найдена |
Удаление связи влияния между КЕ
DELETE /api/public/sm/v2/rsm/config-items/{dependentId}/influentials/{influentialId}
{dependentId}
– идентификатор зависимой КЕ
{influentialId}
– идентификатор влияющей КЕ.
Запрос возвращает обновлённый список моделей влияющих КЕ с минимальным набором атрибутов: идентификатор {id}
и имя {name}
.
Коды ответа
Код ответа | Описание |
---|---|
400 | Недопустимое значение идентификатора КЕ |
403 | Недостаточно прав для управления зависимой КЕ |
403 | Недостаточно прав для управления влияющей КЕ |
404 | Зависимая КЕ с идентификатором {id} не найдена |
404 | Влияющая КЕ с идентификатором {id} не найдена |
Пакетное удаление нескольких связей между КЕ
DELETE /api/public/sm/v2/rsm/config-item-edges/batch
При успешном исполнении запроса возвращается пустой ответ.
Тело запроса
[
{
"sourceId":0,
"targetId":1,
"type":"Hierarchy"
},
{
"sourceId":2,
"targetId":3,
"type":"Influence"
}
]
Поля тела запроса
Название поля | Тип поля | Описание поля |
---|---|---|
sourceId | number | Идентификатор исходной КЕ |
targetID | number | Идентификатор целевой КЕ |
type | string | Тип связи |
Управление стадией жизненного цикла КЕ по идентификатору
POST /api/public/sm/v2/rsm/config-items/{id}/stages
{id}
– идентификатор КЕ.
Запрос возвращает модель стадии жизненного цикла КЕ, на которой КЕ сейчас находится.
Тело запроса
{
"stage": {
"id": 0
},
"settings": {
"applyGrants": false
}
}
Коды ответа
Код ответа | Описание |
---|---|
400 | Стадия КЕ Deleted , переход на другую стадию жизненного цикла невозможен |
400 | Жизненный цикл КЕ не содержит стадию, указанную для перевода |
400 | Перевести КЕ из текущей стадии на указанную стадию невозможно |
400 | Невозможно перевести КЕ из текущей стадии на стадию указанной категории |
403 | Недостаточно прав для изменения КЕ |
403 | Недостаточно прав для управления влияющей КЕ |
404 | КЕ с идентификатором {id} не найдена |
Управление стадией жизненного цикла КЕ по категории стадии ЖЦ
POST /api/public/sm/v2/rsm/config-items/{id}/stages
{id}
– идентификатор КЕ.
Тело запроса
{
"category": "Category",
"settings": {
"applyGrants": false
}
}
Коды ответа
Код ответа | Описание |
---|---|
400 | Стадия КЕ Deleted , переход на другую стадию жизненного цикла невозможен |
400 | Жизненный цикл КЕ не содержит стадию, указанную для перевода |
400 | Перевести КЕ из текущей стадии на указанную стадию невозможно |
400 | Невозможно перевести КЕ из текущей стадии на стадию указанной категории |
403 | Недостаточно прав для изменения КЕ |
403 | Недостаточно прав для управления влияющей КЕ |
404 | КЕ с идентификатором {id} не найдена |
Управление стадиями жизненного цикла нескольких КЕ по категории стадии ЖЦ
POST /api/public/sm/v2/rsm/config-items/stages/category/batch
Тело запроса
[
{
"configItemId": 1,
"category": "Created",
"settings": {
"applyGrants": false
}
},
{
"configItemId": 2,
"category": "Active",
"settings": {
"applyGrants": true
}
}
]
Коды ответа
Код ответа | Описание |
---|---|
400 | Стадия КЕ Deleted , переход на другую стадию жизненного цикла невозможен |
400 | Жизненный цикл КЕ не содержит стадию, указанную для перевода |
400 | Перевести КЕ из текущей стадии на указанную стадию невозможно |
400 | Невозможно перевести КЕ из текущей стадии на стадию указанной категории |
403 | Недостаточно прав для изменения КЕ |
403 | Недостаточно прав для управления влияющей КЕ |
404 | КЕ с идентификатором {id} не найдена |
Получение атрибутов КЕ по фильтру
POST /api/public/sm/v2/rsm/config-items/attributes/filter
Возвращает список моделей атрибутов КЕ.
Тело запроса
{
"ids": [1, 2, 3],
"keyValues": [{
"key": "key1",
"values": [{
"prop1": "value1",
"prop2": "value2"
}]
}]
}
Поля тела запроса
Название поля | Тип поля | Описание поля |
---|---|---|
ids | number[] / null | Список идентификаторов КЕ. Если null , то любые |
keyValues | object[] / null | Список фильтров по паре ключ-значение, объединяемых логическим И |
Коды ответа
Код ответа | Описание |
---|---|
200 | Запрос успешно исполнен |
401 | Не удалось выполнить авторизацию пользователя |
500 | Непредвиденная ошибка при обработке запроса |
Создание атрибута КЕ
POST /api/public/sm/v2/rsm/config-items/{id}/attributes
{id}
– идентификатор КЕ.
При успешном выполнении запроса возвращается модель атрибута КЕ.
Тело запроса
{
"key": "key1",
"value": {
"prop1": "value1",
"prop2": "value2"
}
}
Коды ответа
Код ответа | Описание |
---|---|
400 | Ключ {key} уже определён |
400 | Ключ {key} не разрешен |
403 | Нет прав для создания атрибута КЕ |
Обновление атрибута КЕ
PUT /api/public/sm/v2/rsm/config-items/{id}/attributes
{id}
– идентификатор КЕ.
При успешном выполнении запроса возвращается модель атрибута КЕ.
Тело запроса
{
"key": "key1",
"value": {
"prop1": "value1",
"prop2": "value2"
}
}
Коды ответа
Код ответа | Описание |
---|---|
400 | Ключ {key} уже определён |
403 | Нет прав для создания атрибута КЕ |
404 | Атрибут КЕ с ключом {key} не найден |
Приложение
Модель стадии жизненного цикла КЕ
{
"id": 0,
"name": "Name",
"description": "Description",
"category": "Category",
"userspaceId": 0
}
Модель типа КЕ
{
"id": 0,
"name": "Name",
"description": "Description"
}
Модель рабочей группы
{
"id": 0,
"name": "Name"
}
Модель КЕ
{
"id": 0,
"name": "Name",
"description": "Description",
"parent": {
"id": 0
"name": "Name"
},
"ownerWorkGroup": {
"id": 0,
"name": "Name"
},
"configItemType": {
"id": 0,
"name": "Name",
"description": "Description",
},
"labels": {
"label_a_name": "label_value",
"label_b_name": ["label_value_1", "label_value_2"],
"label_c_name": null
},
"entityInfo": {
"createdAt": "0000-00-00T00:00:00.000Z",
"createdBy": 0,
"createdByName": "Name",
"updatedAt": "0000-00-00T00:00:00.000Z",
"updatedBy": 0,
"updatedByName": "Name",
},
"state": {
"value": "Unknown",
"valueUnderMaintenance": "Unknown",
"Timestamp": "0000-00-00T00:00:00.000Z"
},
"healthStatus": {
"value": 0,
"timestamp": "0000-00-00T00:00:00.000Z",
"calculation": {
"resultBy": "Direct",
"direct": 0,
"weight": 0
}
},
"healthInfluence": {
"value": 0,
"maxInfluence": false
},
"incomingEdges": [{
"type": "Hierarchy",
"configItem": {
"id": 0,
"name": "Name"
}
}],
"outgoingEdges": [{
"type": "Hierarchy",
"configItem": {
"id": 0,
"name": "Name"
}
}],
"sharedToWorkGroups": [{
"workGroupId": 0,
"shareType": "ConfigItem",
"grants": ["base-system.rsm.config-items-basic-read"]
}],
"stage": {
"id": 0,
"name": "Name",
"description": "Description",
"category": "Category",
"userspaceId": 0
}
}
Поля модели КЕ
Название поля | Тип поля | Описание поля |
---|---|---|
id | number | Идентификатор КЕ |
name | string | Наименование КЕ |
description | string | Описание КЕ |
parent | object / null | Родительская КЕ. null , если КЕ является корневой |
ownerWorkGroup | object | Рабочая группа-владелец КЕ |
configItemType | object | Тип КЕ |
labels | object / null | Словарь меток КЕ |
entityInfo | object | Мета-информация по сущности |
state | object / null | Текущий статус КЕ. Выводится при наличии значения |
healthStatus | object / null | Рассчитанное здоровье. Выводится при наличии значения |
healthInfluence | object / null | Информация о влиянии на здоровье КЕ. Выводится при наличии значения |
cmdbSystem | object / null | Модель внешней CMDB системы, на базе которой создана КЕ. Выводится при наличии значения |
incomingEdges | object[] | Входящие связи с другими КЕ |
outgoingEdges | object[] | Исходящие связи с другими КЕ |
sharedToWorkGroups | object[] | Список моделей предоставления прав для конкретных рабочих групп |
stage | object | Стадия жизненного цикла КЕ |
Расширенная модель КЕ
{
"id": 0,
"name": "Name",
"description": "Description",
"createdAt": "0000-00-00T00:00:00.000Z",
"configItemType": {
"id": 0,
"name": "Name",
"description": "Description"
},
"stage": {
"id": 0,
"name": "Name",
"description": "Description",
"category": "Category",
"userspaceId": 0
},
"labels": {
"label_a_name": "label_value",
"label_b_name": ["label_value_1", "label_value_2"],
"label_c_name": null
},
"attributes": {
"attribute_a_name": "attribute_value",
"attribute_b_name": [1, 2],
"attribute_c_name": null
},
"ownerWorkGroup": {
"id": 0,
"name": "Name"
},
"sharedToWorkGroups": [{
"id": 0,
"workGroup": {
"id": 0,
"name": "Name"
},
"shareType": "ConfigItem",
"grants": ["base-system.rsm.config-items-basic-read"],
"isSharedToAll": false,
"treeSharedBy": {
"id": 0,
"name": "Name"
}
}],
"parent": {
"id": 0,
"name": "Name",
"configItemType": {
"id": 0,
"name": "Name",
"description": "Description"
}
},
"dependents": [{
"id": 0,
"name": "Name",
"configItemType": {
"id": 0,
"name": "Name",
"description": "Description"
}
}],
"influentials": [{
"id": 0,
"name": "Name",
"configItemType": {
"id": 0,
"name": "Name",
"description": "Description"
}
}],
"children": [{
"id": 0,
"name": "Name",
"configItemType": {
"id": 0,
"name": "Name",
"description": "Description"
}
}],
"state": {
"value": "Unknown",
"valueUnderMaintenance": "Unknown",
"timestamp": "0000-00-00T00:00:00.000Z"
},
"healthStatus": {
"value": 0,
"timestamp": "0000-00-00T00:00:00.000Z",
"calculation": {
"resultBy": "Direct",
"direct": 0,
"weight": 0
}
}
}
Поля расширенной модели КЕ
Название поля | Тип поля | Описание поля |
---|---|---|
id | number | Идентификатор КЕ |
name | string | Наименование КЕ |
description | string | Описание КЕ |
createdAt | date | Дата создания КЕ |
configItemType | object | Тип КЕ |
stage | object | Стадия жизненного цикла КЕ |
labels | object / null | Словарь меток КЕ |
attributes | object | Атрибуты КЕ |
ownerWorkGroup | object | Рабочая группа-владелец КЕ |
sharedToWorkGroups | object[] | Список моделей предоставления прав для конкретных рабочих групп |
parent | object / null | Родительская КЕ. null , если КЕ является корневой |
dependents | object[] / null | Зависимые КЕ |
influentials | object[] / null | Влияющие КЕ |
children | object[] / null | Подчиненные КЕ |
state | object | Текущий статус КЕ. Выводится при наличии значения |
healthStatus | object | Рассчитанное здоровье. Выводится при наличии значения |
Тип предоставления прав
Тип | Описание |
---|---|
ConfigItem | Предоставить права доступа только для КЕ |
Tree | Предоставить права доступа для КЕ и подчинённого ей дерева |
ChildrenTree | Предоставить права доступа только для подчинённого данной КЕ дерева |
Предоставляемые рабочим группам права
Право | Описание |
---|---|
base-system.rsm.config-items-basic-read | Право на чтение базовой информации |
base-system.rsm.config-items-monitoring-read | Право на чтение привязок КЕ |
base-system.rsm.config-items-read | Право на полное чтение КЕ |
base-system.rsm.config-items-write | Право на управление КЕ |
Модель фильтра атрибутов по паре ключ-значение
{
"key": "key1",
"values": [1, "string", { "prop": "value" }]
}
Поля модели фильтра атрибутов по паре ключ-значение
Название поля | Тип поля | Описание поля |
---|---|---|
key | string | Ключ атрибута |
values | object[] | Список вхождений в значение атрибута, объединяемых логическим ИЛИ |
Модель атрибута КЕ
{
"id": 0,
"sourceType": "ConfigItem",
"sourceId": 0,
"key": "key1",
"value": {
"prop1": "value1",
"prop2": "value2"
},
"isArray": false,
"structFullName": "System.String"
}
Поля модели атрибута КЕ
Название поля | Тип поля | Описание поля |
---|---|---|
id | number | Идентификатор атрибута |
sourceType | string | Тип источника атрибута (КЕ, тип КЕ, пространство, система) |
sourceId | number | Идентификатор источника атрибута |
key | string | Ключ атрибута |
value | object / null | Значение атрибута |
isArray | boolean | Является ли значение массивом |
structFullName | string | Полное имя структуры |
Модель связей между КЕ
[{
"id": 0,
"type": "Hierarchy",
"sourceId": 0,
"targetId": 1
},
{
"id": 1,
"type": "Influence",
"sourceId": 2,
"targetId": 3
}]
Поля списочной модели связи между КЕ
Название поля | Тип поля | Описание поля |
---|---|---|
id | number | Идентификатор атрибута |
type | string | Тип связи |
sourceId | number | Идентификатор исходной КЕ |
targetId | number | Идентификатор целевой КЕ |
Типы связей КЕ
Название | Описание |
---|---|
Hierarchy | Иерархическая связь (связь подчинения) |
Influence | Связь влияния |