API - Сигналы
Для выполнения запроса к API необходима дополнительная авторизация.
Используйте в запросе заголовок Authorization: Bearer <персональный токен>.
Создание сигнала
POST /api/public/sm/v2/signals
Запрос возвращает модель созданного сигнала.
Тело запроса
{
"name": "string",
"description": "string",
"createdBy": "User",
"createdByScenario": {
"id": 0
},
"labels": [
{
"key": "",
"value": {
"key1": "prop1",
"key2": "prop2"
}
}
],
"ownerWorkGroup": {
"id": 0
},
"severity": 0,
"configItemIds": [
0
],
"configItemComponentIds": [
0
],
"configItemComponentName": "string",
"tags": [
{
"name": "string",
"colorName": "string"
}
],
"events": [
{
"startEventId": 0,
"type": "Opening",
"body": {}
}
]
}
Поля тела запроса
| Название поля | Обязательное поле | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| name | да | string | нет | Название сигнала |
| description | нет | string | null | Описание сигнала |
| createdBy | да | string | нет | Указывает кто создал сигнал (User - сигнал создан пользователем, Automaton - сигнал создан при помощи сценария автоматизации) |
| createdByScenario.id | да (если createdBy = Automaton) | integer | нет | Идентификатор сценария автоматизации |
| labels | нет | object [] | null | Массив меток |
| ownerWorkGroup.id | да | integer | нет | Идентификатор рабочей группы владельца сигнала |
| severity | нет | integer | 6 | Критичность сигнала |
| configItemIds | нет | integer [] | null | Список идентификаторов конфигурационных единиц |
| configItemComponentIds | нет | integer [] | null | Список идентификаторов компонентов конфигурационных единиц |
| configItemComponentName | нет | string | null | Название компонента КЕ |
| tags | нет | object [] | null | Массив объектов тэгов |
| events | нет | object [] | null | Массив объектов событий |
Коды ответов
| Код ответа | Описание |
|---|---|
| 201 | Сигнал успешно создан |
| 400 | Пустое тело запроса |
| 400 | Неверная модель данных в теле запроса |
| 401 | Не удалось выполнить авторизацию пользователя |
| 403 | Недостаточно прав для создания сигнала в рамках выбранной рабочей группы |
| 404 | Рабочая группа с идентификатором {id} не найдена |
| 415 | Неправильный тип входных данных. Требуется указать тип: application/json |
| 500 | Непредвиденная ошибка при обработке запроса |
Частично обновить сигнал
PATCH /api/public/sm/v2/signals/{id}
Запрос возвращает модель обновленного сигнала.
Параметры запроса
| Название поля | Обязательный параметр | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| id | да | integer | нет | Идентификатор сигнала |
Тело запроса
{
"status": "Open",
"configItems": [
{
"id": 0
}
],
"configItemComponents": [
{
"id": 0
}
],
"tags": [
{
"name": "string",
"colorName": "string"
}
],
"labels": {
"label_a_name": "label_value",
"label_b_name": ["label_value_1", "label_value_2"],
"label_c_name": null
}
}
Поля тела запроса
| Название поля | Обязательное поле | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| status | нет | string | null | Статус сигнала |
| configItems | нет | object [] | null | Список конфигурационных единиц |
| configItemComponents | нет | object [] | null | Список идентификаторов компонентов КЕ |
| configItemComponentName | нет | string | null | Название компонента КЕ |
| tags | нет | object [] | null | Список тэгов |
| labels | нет | object | null | Метки сигнала |
В теле запроса должно быть передано хотя бы одно поле.
Коды ответов
| Код ответа | Описание |
|---|---|
| 400 | Сигнал закрыт и не может быть обновлен |
| 401 | Не удалось выполнить авторизацию пользователя |
| 403 | Недостаточно прав для создания сигнала в рамках выбранной рабочей группы |
| 404 | Сигнал с идентификатором {id} не найден |
| 500 | Непредвиденная ошибка при обработке запроса |
Получить информацию о сигнале
GET /api/public/sm/v2/signals/{id}
Запрос возвращает модель запрашиваемого сигнала.
Параметры запроса
| Название поля | Обязательный параметр | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| id | да | integer | нет | Идентификатор сигнала |
Коды ответов
| Код ответа | Описание |
|---|---|
| 200 | Запрос успешно исполнен |
| 401 | Не удалось выполнить авторизацию пользователя |
| 500 | Непредвиденная ошибка при обработке запроса |
Получение сигналов по фильтру
POST /api/public/sm/v2/signals/filter
Запрос возвращает список моделей найденных сигналов.
Параметры запроса
| Название поля | Обязательный параметр | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| Shared | нет | boolean | false | Включение в поиск общих сигналов |
Тело запроса
{
"ids": [
0
],
"configItemIds": [
0
],
"createdAt": {
"moreThan": "2022-09-06T11:37:38.045Z",
"lessThan": "2022-09-06T11:37:38.045Z",
"equal": "2022-09-06T11:37:38.045Z",
"lessThanOrEqual": "2022-09-06T11:37:38.045Z",
"moreThanOrEqual": "2022-09-06T11:37:38.045Z",
"range": {
"start": "2022-09-06T11:37:38.045Z",
"end": "2022-09-06T11:37:38.045Z"
}
},
"closedAt": {
"moreThan": "2022-09-06T11:37:38.045Z",
"lessThan": "2022-09-06T11:37:38.045Z",
"equal": "2022-09-06T11:37:38.045Z",
"lessThanOrEqual": "2022-09-06T11:37:38.045Z",
"moreThanOrEqual": "2022-09-06T11:37:38.045Z",
"range": {
"start": "2022-09-06T11:37:38.045Z",
"end": "2022-09-06T11:37:38.045Z"
}
},
"statuses": [
"Open" #Open, Closed
],
"severities": [
0
],
"durationMilliseconds": {
"moreThan": 0,
"lessThan": 0,
"equal": 0,
"lessThanOrEqual": 0,
"moreThanOrEqual": 0,
"range": {
"start": 0,
"end": 0
}
},
"ownerWorkGroupIds": [
0
],
"tags": [
{
"name": "string",
"colorName": "string"
}
],
"severityDurations": [
{
"severity": 0,
"durationMilliseconds": {
"moreThan": 0,
"lessThan": 0,
"equal": 0,
"lessThanOrEqual": 0,
"moreThanOrEqual": 0,
"range": {
"start": 0,
"end": 0
}
}
}
],
"labels": [
{
"key": "string",
"value": {
"key":"value"
}
}
]
}
Поля тела запроса
| Название поля | Обязательное поле | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| ids | нет | integer [] | null | Идентификаторы сигнала |
| configItemIds | нет | integer [] | null | Связанные конфигурационные единицы |
| createdAt | нет | object | null | Дата и время создания сигнала |
| closedAt | нет | object | null | Дата и время закрытия сигнала |
| statuses | нет | string [] | null | Статусы сигнала |
| severities | нет | integer [] | null | Критичность сигнала |
| durationMilliseconds | нет | object | null | Длительность сигнала |
| ownerWorkGroupIds | нет | integer [] | null | Идентификаторы рабочей группы которой принадлежит сигнал |
| tags | нет | object [] | null | Тэги сигнала |
| severityDurations | нет | object [] | null | Список объектов - пар критичность:длительность |
| labels | нет | object [] | null | Метки сигнала |
Коды ответов
| Код ответа | Описание |
|---|---|
| 200 | Запрос успешно исполнен |
| 401 | Не удалось выполнить авторизацию пользователя |
| 500 | Непредвиденная ошибка при обработке запроса |
Привязать список тэгов к сигналу
POST /api/public/sm/v2/signals/{id}/tags
Запрос возвращает список привязанных тэгов.
Параметры запроса
| Название поля | Обязательный параметр | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| id | да | integer | нет | Идентификатор сигнала |
Тело запроса
[
{
"name": "string",
"colorName": "string"
}
]
Поля тела запроса
| Название поля | Обязательное поле | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| name | да | string | нет | Наименование тэга |
| colorName | да | string | нет | Цвет тэга |
Доступные цвета:
pink,violet,indigo,blue,teal,green,orange,brown,slate
Коды ответов
| Код ответа | Описание |
|---|---|
| 200 | Запрос успешно исполнен |
| 401 | Не удалось выполнить авторизацию пользователя |
| 403 | Недостаточно прав для привязки тегов к сигналу |
| 404 | Сигнал с идентификатором {id} не найден |
| 415 | Неправильный тип входных данных. Требуется указать тип: application/json |
| 500 | Непредвиденная ошибка при обработке запроса |
Отвязать список тэгов от сигнала
DELETE /api/public/sm/v2/signals/{id}/tags
Параметры запроса
| Название поля | Обязательный параметр | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| id | да | integer | нет | Идентификатор сигнала |
Тело запроса
[
{
"name": "string",
"colorName": "string"
}
]
Коды ответов
| Код ответа | Описание |
|---|---|
| 200 | Запрос успешно исполнен |
| 401 | Не удалось выполнить авторизацию пользователя |
| 403 | Недостаточно прав для отвязки тегов от сигнала |
| 404 | Сигнал с идентификатором {id} не найден |
| 415 | Неправильный тип входных данных. Требуется указать тип: application/json |
| 500 | Непредвиденная ошибка при обработке запроса |
Привязать список КЕ к сигналу
POST /api/public/sm/v2/signals/{id}/config-items
Запрос возвращает список привязанных КЕ к сигналу.
Параметры запроса
| Название поля | Обязательный параметр | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| id | да | integer | нет | Идентификатор сигнала |
Тело запроса
[
12345,
67890
]
Поля тела запроса
| Название поля | Обязательное поле | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
[] | нет | integer [] | [] | Список идентификаторов КЕ |
Коды ответов
| Код ответа | Описание |
|---|---|
| 200 | Запрос успешно исполнен |
| 401 | Не удалось выполнить авторизацию пользователя |
| 403 | Недостаточно прав для привязки КЕ к сигналу |
| 404 | Сигнал с идентификатором {id} не найден |
| 415 | Неправильный тип входных данных. Требуется указать тип: application/json |
| 500 | Непредвиденная ошибка при обработке запроса |
Отвязать список КЕ от сигнала
DELETE /api/public/sm/v2/signals/{id}/config-items
Параметры запроса
| Название поля | Обязательный параметр | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| id | да | integer | нет | Идентификатор сигнала |
Тело запроса
[
0
]
Поля тела запроса
| Название поля | Обязательное поле | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
[] | нет | integer [] | [] | Список идентификаторов КЕ |
Коды ответов
| Код ответа | Описание |
|---|---|
| 200 | Запрос успешно исполнен |
| 401 | Не удалось выполнить авторизацию пользователя |
| 403 | Недостаточно прав для привязки КЕ к сигналу |
| 404 | Сигнал с идентификатором {id} не найден |
| 415 | Неправильный тип входных данных. Требуется указать тип: application/json |
| 500 | Непредвиденная ошибка при обработке запроса |
Привязать список событий к сигналу
POST /api/public/sm/v2/signals/{id}/events
Запрос привязывает события к сигналу.
Параметры запроса
| Название поля | Обязательный параметр | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| id | да | integer | нет | Идентификатор сигнала |
Тело запроса
[
{
"startEventId": 0,
"type": "Opening",
"body": {}
}
]
Поля тела запроса
| Название поля | Обязательное поле | Тип поля | Значение по умолчанию | Описание |
|---|---|---|---|---|
| startEventId | да | integer | нет | Идентификатор стартового события |
| type | да | string | нет | Тип события |
| body | да | object | нет | Объект события в формате JSON |
Типы событий:
Opening- открывающее событиеClosing- закрывающее событиеConfirming- подтверждающее событие
Коды ответов
| Код ответа | Описание |
|---|---|
| 200 | Запрос успешно исполнен |
| 401 | Не удалось выполнить авторизацию пользователя |
| 403 | Недостаточно прав для привязки событий к сигналу |
| 404 | Сигнал с идентификатором {id} не найден |
| 415 | Неправильный тип входных данных. Требуется указать тип: application/json |
| 500 | Непредвиденная ошибка при обработке запроса |
Приложение
Модель сигнала
{
"id": 28203,
"name": "Тестовый сигнал через API",
"description": null,
"ownerWorkGroup": {
"id": 23,
"name": "General"
},
"createdBy": "User",
"createdByScenario": null,
"labels": {},
"configItems": [],
"tags": [],
"status": "Open",
"severity": 6,
"lastEvent": null,
"linkedEventsCount": 0,
"createdAt": "2024-07-16T07:32:16.127954+00:00",
"closedAt": "0001-01-01T00:00:00+00:00",
"entityInfo": {
"createdAt": "2024-07-16T07:32:16.1279763+00:00",
"createdBy": 1,
"createdByName": "Administrator",
"updatedAt": null,
"updatedBy": -1,
"updatedByName": null
}
}