Создание сетевых интерфейсов
Запрос
Тип | Метод |
---|---|
POST |
/sonar/devices/update |
Описание: При выполнении запроса будут созданы из переданных хостов сетевые интерфейсы. Если в базе уже есть интерфейс с переданным ipv4, обновляет его. Возвращает массив созданных/обновлённых интерфейсов.
Пример запроса
POST
http://127.0.0.1/cruddy/v2/sonar/devices/update
Тело запроса:
Параметр | Тип | Обязательность | Описание |
---|---|---|---|
devices | Array<DeviceUpdateInput> |
Required | Массив хостов для импорта |
devices{host} | Array<string> |
Required | Список хостов, полученных в результате сканирования |
devices{ipv4} | string |
Required | IP-адрес хоста в формате ipv4 |
devices{mac} | string |
Required | MAC-адрес хоста |
Пример тела запроса
{
"devices": [
{
"host": [
"string"
],
"ipv4": "192.168.0.1",
"mac": "string"
}
]
}
Успешный ответ
Статус код: 200
– запрос успешно обработан.
Формат: JSON
.
Параметры ответа:
Параметр | Тип данных | Описание |
---|---|---|
results | Array<ScanDeviceResult> |
Массив хостов |
results{ipv4} | string |
IP-адрес |
results{network_interface} | object <NetworkInterface> |
Сетевой интерфейс |
results{error_code} | string |
Код ошибки. Возможные значения: - 0 — нет ошибки, - 13001 — недопустимый формат IP-адреса, - 13012 — недопустимый формат MAC (если указан), - 1497 — ошибка чтения из БД, - 1498 — ошибка обновления объекта в БД, - 1496 — ошибка создания объекта в БД, - 11002 — прочие ошибки БД. |
results{error} | string |
Текст ошибки |
Пример ответа
{
"results": [
{
"ipv4": "192.168.0.1",
"network_interface": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"created_at": "2023-12-20T00:00:01.652259Z",
"updated_at": "2023-12-20T00:00:01.652259Z",
"name": "string",
"ip": "192.168.0.1",
"mac": "string",
"fqdn": "[]",
"os": "string",
"service_asset_id": "09122f07-8b1e-48dc-96fd-379806f6c51e",
"edited_by": "9501acb5-3be0-4719-a60e-dfa79624666c",
"has_service_asset": true,
"service_asset_name": "string",
"service_asset_location": "string",
"service_asset_value": 0,
"service_asset_network_exposure": 0,
"service_asset_group_names": [
"string"
],
"service_asset": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"created_at": "2023-12-20T00:00:01.652259Z",
"updated_at": "2023-12-20T00:00:01.652259Z",
"type": "Host",
"name": "Актив",
"description": "Описание актива",
"coordinates": "--- []",
"active": true,
"scan_id": "9a59f0f5-5572-476d-a7fc-c960ef43a5af",
"value": 3,
"client_note": "string",
"internal_note": "string",
"location": "string",
"network_exposure": 3,
"responsible_person": "string",
"technical_specialist": "string",
"responsible_group_id": "2d40d7ca-3218-4132-89ef-42e29379a567",
"edited_by": "9501acb5-3be0-4719-a60e-dfa79624666c"
},
"services": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"created_at": "2023-12-20T00:00:01.652259Z",
"updated_at": "2023-12-20T00:00:01.652259Z",
"network_interface_id": "bec51eeb-07af-41bd-b9be-258f3c6716f0",
"port": 0,
"status": "string",
"type": "string",
"name": "string",
"version": "string",
"cpe": "cpe:/o:linux:kernel"
}
],
"_relations": {
"services": [
"497f6eca-6276-4993-bfeb-53cbbbba6f08"
]
}
},
"error_code": 0,
"error": "string"
}
]
}
Другие возможные ответы
Код | Ответ | Описание |
---|---|---|
400 |
Bad Request empty devices empty ipv4 |
Неверный тип параметра запроса, либо отсутствует обязательный параметр Хосты не заданы Поле ipv4 не задано |
500 |
Internal Server Error |
Другие ошибки при удалении объектов |
Примечание: Текст ошибки не фиксированный, может изменяться в зависимости от фактического ответа получателя запроса.
Пример ответа
Код 400
{ "error": "Bad Request", "error_code": 400 }
Код 500
{ "error": "Internal Server Error", "error_code": 500 }