POST пользовательское устройство

Материал из Документация Ключ-АСТРОМ

Создает или обновляет пользовательское устройство.

Запрос потребляет и создает application/jsonполезную нагрузку.

POST Managed https://{your-domain}/e/{your-environment-id}/api/v2/entities/custom
Cреда АктивногоШлюза https://{your-activegate-domain}/e/{your-environment-id}/api/v2/entities/custom

Аутентификация

Чтобы выполнить этот запрос, вам нужен токен доступа с областью действия Запись объектов ( entities.write) . Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .

Параметры

Параметр Тип Описание In Необходимость
body CustomDeviceCreation Тело JSON запроса. Содержит параметры пользовательского устройства. body требуется

Объекты тела запроса

Объект CustomDeviceCreation

Конфигурация пользовательского устройства.

Элемент Тип Описание Необходимость
customDeviceId string Внутренний идентификатор пользовательского устройства.

Если вы используете идентификатор существующего устройства, соответствующие параметры будут обновлены.

требуется
displayName string Имя пользовательского устройства, которое будет отображаться в пользовательском интерфейсе. требуется
group string Определяемый пользователем идентификатор группы объекта.

Идентификатор группы помогает сохранить непротиворечивую картину отношений между группами устройств. Одним из многих случаев, когда важна правильная группа, является обнаружение службы: вы можете определить, какие пользовательские устройства должны вести к одной и той же службе, определив для них одинаковый идентификатор группы.

Если вы установите идентификатор группы, он будет хэширован в идентификатор объекта Ключ-АСТРОМ пользовательского устройства. В этом случае пользовательское устройство может быть частью только одной пользовательской группы устройств.

Если вы не укажете идентификатор группы, Ключ-АСТРОМ создаст ее на основе идентификатора или типа пользовательского устройства. Кроме того, группа не будет хеширована в идентификатор устройства, что означает, что устройство может переключаться между группами.

по желанию
ipAddresses string [] Список IP-адресов, принадлежащих пользовательскому устройству.

Эти адреса используются для автоматического обнаружения горизонтальных коммуникационных отношений между этим компонентом и всеми другими наблюдаемыми компонентами в Smartscape. Как только соединение обнаружено, оно автоматически отображается и отображается в Smartscape.

Если вы отправите значение (включая пустое значение), существующие значения будут перезаписаны.

Если вы отправите nullили опустите это поле, существующие значения будут сохранены.

по желанию
listenPorts integer [] Список портов, которые прослушиваются пользовательскими устройствами.

Эти порты используются для обнаружения горизонтальных коммуникационных отношений между этим компонентом и всеми другими наблюдаемыми компонентами в Smartscape.

Как только соединение обнаружено, оно автоматически отображается и отображается в Smartscape.

Если порты указаны, вы также должны добавить по крайней мере один IP-адрес или DNS-имя для пользовательского устройства.

Если вы отправите значение, существующие значения будут перезаписаны.

Если вы отправите null, или пустое значение, или опустите это поле, существующие значения будут сохранены.

по желанию
type string Определение типа технологии пользовательского устройства.

Это должен быть тот же тип технологии, что и показатель, о котором вы сообщаете.

Если вы отправите значение, существующее значение будет перезаписано.

Если вы отправите null, очистите или опустите это поле, существующее значение будет сохранено.

по желанию
faviconUrl string Значок, который будет отображаться для вашего пользовательского компонента в Smartscape. Укажите полный URL-адрес файла значка. по желанию
configUrl string URL-адрес веб-страницы конфигурации пользовательского устройства, например страницы входа в брандмауэр или маршрутизатор. по желанию
properties object Список свойств пары "ключ-значение", которые будут отображаться под инфографикой вашего пользовательского устройства. по желанию
dnsNames string [] Список DNS-имен, связанных с пользовательским устройством.

Эти имена используются для автоматического обнаружения горизонтальных коммуникационных отношений между этим компонентом и всеми другими наблюдаемыми компонентами в Smartscape. Как только соединение обнаружено, оно автоматически отображается и отображается в Smartscape.

Если вы отправите значение, существующие значения будут перезаписаны.

Если вы отправляете nullили пустое значение; или опустите это поле, существующие значения будут сохранены.

по желанию

JSON-модель тела запроса

Это модель тела запроса, показывающая возможные элементы. Его необходимо настроить для использования в реальном запросе.

{
  "customDeviceId": "customDeviceId",
  "displayName": "coffeeMachine",
  "group": "myCustomDeviceGroup",
  "ipAddresses": [
    "10.0.0.1"
  ],
  "listenPorts": [
    80
  ],
  "faviconUrl": "https://www.freefavicon.com/freefavicons/food/cup-of-coffee-152-78475.png",
  "configUrl": "http://coffee-machine.ruscomtech.internal.com/coffeemachine/manage",
  "type": "coffee machine",
  "properties": {},
  "dnsNames": [
    "coffee-machine.ruscomtech.internal.com"
  ]
}

Ответ

Коды ответов

Код Тип Описание
201 CustomDeviceCreationResult Успех
204 Успех
400 Не удалось. Ввод недействителен.

Объекты тела ответа

Объект CustomDeviceCreationResult

Краткое представление вновь созданного пользовательского устройства.

Элемент Тип Описание
entityId string Идентификатор объекта Ключ-АСТРОМ пользовательского устройства.
groupId string Идентификатор объекта Ключ-АСТРОМ пользовательской группы устройств.

JSON-модель тела ответа

{
  "entityId": "string",
  "groupId": "string"
}

Пример

В этом примере запрос создает пользовательское устройство с идентификатором restExampleи следующими параметрами:

  • тип:F5-Firewall
  • айпи адрес172.16.115.211
  • слушать порт9999

В запросе также указываются некоторые дополнительные параметры.

Маркер API передается в заголовке авторизации .

Запрос возвращает идентификаторы пользовательского устройства (см. entityId ) и его группы (см. groupId ) в качестве подтверждения.

Вы можете скачать или скопировать образец тела запроса, чтобы попробовать его самостоятельно.

Curl

curl -L -X POST 'https://mySampleEnv.live.ruscomtech.ru/api/v2/entities/custom' \
-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \
-H 'Content-Type: application/json' \
--data-raw '{
  "customDeviceId": "restExample",
  "displayName" : "F5 Firewall 24",
  "ipAddresses" : ["172.16.115.211"],
  "listenPorts" : ["9999"],
  "type" : "F5-Firewall",
  "favicon" : "http://assets.ruscomtech.ru/global/icons/f5.png",
  "configUrl" : "http://192.128.0.1:8080",
  "properties" : {
    "Sample Property 1": "Sample value 1"
  }
}
'

URL-адрес запроса

https://mySampleEnv.live.ruscomtech.com/api/v2/entities/custom

Тело запроса

{
  "customDeviceId": "restExample",
  "displayName": "F5 Firewall 24",
  "ipAddresses": ["172.16.115.211"],
  "listenPorts": ["9999"],
  "type": "F5-Firewall",
  "favicon": "http://assets.ruscomtech.ru/global/icons/f5.png",
  "configUrl": "http://192.128.0.1:8080",
  "properties": {
    "Sample Property 1": "Sample value 1"
  }
}

Тело ответа

{
  "entityId": "CUSTOM_DEVICE-1525F193C0578E2C",
  "groupId": "CUSTOM_DEVICE_GROUP-FC2E2ABF54F513D8"
}

Код ответа

201