Устройства¶
Получение списка устройств¶
Описание¶
Возвращает список устройств, зарегистрированных на сервере RuDesktop. Поддерживает фильтрацию по имени хоста и статусу, а также постраничную выборку через offset и limit
Важно
По умолчанию возвращается не более 50 устройств. Чтобы получить больше — укажите параметр limit, например /api/peer/search/?limit=3000
Запрос¶
GET /api/peer/search/
Параметры¶
hostname— фильтр по имени хоста (поиск по подстроке)status— фильтр по статусу:onlineилиofflineoffset— смещение в выборке (по умолчанию0)limit— максимальное число записей в ответе (по умолчанию50)
Ответ
{
"items": [
{
"id": "int",
"server_id": "string",
"hostname": "string",
"username": "string",
"domain": "string",
"platform": "string",
"uname": "string",
"version": "string",
"addr": "string",
"uuid": "string",
"status": "string"
}
]
}
Пример¶
curl --header 'Authorization: Token [TOKEN]' --location 'https://[SERVER_ADDR]/api/peer/search/?limit=3000'
Получение информации об устройстве¶
Описание¶
Возвращает информацию об устройствах, чьё имя хоста содержит указанную подстроку. Если совпадений несколько, в ответе вернутся все они
Запрос¶
GET /api/peer/search/?hostname=[HOSTNAME]
Параметры¶
hostname— имя хоста (поиск по подстроке)
Ответ
{
"items": [
{
"id": "int",
"server_id": "string",
"hostname": "string",
"username": "string",
"domain": "string",
"platform": "string",
"uname": "string",
"version": "string",
"addr": "string",
"uuid": "string",
"status": "string"
}
]
}
Пример¶
curl --header 'Authorization: Token [TOKEN]' --location 'https://[SERVER_ADDR]/api/peer/search/?hostname=[HOSTNAME]'
Получение информации о ресурсах устройства¶
Описание¶
Возвращает инвентарную информацию по ресурсам устройств, чьё имя хоста содержит указанную подстроку. Ресурсы сгруппированы по типу. Поддерживается исключение типов ресурсов через параметр exclude
Запрос¶
GET /api/assets/search/?hostname=[HOSTNAME]
Параметры¶
hostname— имя хоста (поиск по подстроке). Если параметр не указан — возвращаются ресурсы всех устройствexclude— список типов ресурсов через запятую, которые нужно исключить из ответа. Доступные значения:hardware— оборудованиеsoftware— программное обеспечениеuser— пользователиgroup— группыos— операционная система
Ответ
{
"hardware": [
"ACR Acer Technologies 59659"
],
"software": [
"code 1.99.2-1744250061",
"perl 5.38.2-3.2ubuntu0.1"
],
"user": [
"rudesktop"
],
"group": [
"Группа с правами администратора: rudesktop"
],
"os": [
"Ubuntu 24.04"
]
}
Пример¶
Получение всех ресурсов устройства:
curl --header 'Authorization: Token [TOKEN]' --location 'https://[SERVER_ADDR]/api/assets/search/?hostname=[HOSTNAME]'
Получение всех ресурсов устройства, кроме оборудования:
curl --header 'Authorization: Token [TOKEN]' --location 'https://[SERVER_ADDR]/api/assets/search/?hostname=[HOSTNAME]&exclude=hardware'
Получение детальной информации о ресурсе¶
Описание¶
Возвращает подробную информацию о ресурсе по его идентификатору, включая историю появления и удаления ресурса на устройствах (asset_history)
Запрос¶
GET /api/assets/{id}/
Параметры¶
id— идентификатор ресурса
Ответ
{
"id": "int",
"name": "string",
"asset_type": "string",
"asset_sub_type": "string",
"asset_history": [
{
"id": "int",
"available_from": "datetime",
"available_to": "datetime",
"version": "string",
"capacity": "int",
"unit": "string"
}
]
}
Пример¶
curl --header 'Authorization: Token [TOKEN]' --location 'https://[SERVER_ADDR]/api/assets/42/'
Получение информации о ресурсах устройства (v2)¶
Описание¶
Расширенная версия запроса ресурсов: возвращает подробные сведения о каждом ресурсе (тип, подтип, версия, GUID, дополнительные факты, команда удаления, URL) сгруппированные по типу ресурса. Поддерживает фильтрацию по типу и подтипу
Запрос¶
GET /api/v2/assets/search/
Параметры¶
hostname— фильтр по имени хоста (поиск по подстроке)server_id— фильтр по идентификатору устройства (поиск по подстроке). Применяется, если не указанhostnameasset_type— список типов ресурсов через запятую для включения. Доступные значения:software,os,hotfix,hardware,path,user,groupasset_sub_type— список подтипов ресурсов через запятую для включения. Доступные значения:cpu,gpu,motherboard,ram,os,disk,pci,monitor,network,device,other,local_user,local_group,encryption,security,serviceexclude_asset_type— список типов ресурсов через запятую для исключенияexclude_asset_sub_type— список подтипов ресурсов через запятую для исключения
Ответ
{
"hardware": [
{
"name": "string",
"asset_type": "string",
"asset_sub_type": "string",
"guid": "string",
"version": "string",
"facts": {},
"uninstall": "string",
"url": "string"
}
],
"software": [
{
"name": "string",
"asset_type": "string",
"asset_sub_type": "string",
"guid": "string",
"version": "string",
"facts": {},
"uninstall": "string",
"url": "string"
}
]
}
Пример¶
Получение всех ресурсов устройства:
curl --header 'Authorization: Token [TOKEN]' --location 'https://[SERVER_ADDR]/api/v2/assets/search/?hostname=[HOSTNAME]'
Получение только оборудования (CPU и RAM) для устройства:
curl --header 'Authorization: Token [TOKEN]' --location 'https://[SERVER_ADDR]/api/v2/assets/search/?hostname=[HOSTNAME]&asset_type=hardware&asset_sub_type=cpu,ram'
Получение всех ресурсов устройства, кроме программного обеспечения:
curl --header 'Authorization: Token [TOKEN]' --location 'https://[SERVER_ADDR]/api/v2/assets/search/?hostname=[HOSTNAME]&exclude_asset_type=software'