hardware.php¶
В этой статье
- Методы API
- hardware/add
- hardware/add_barcodes
- hardware/clone
- hardware/delete_barcodes
- hardware/eval_hw
- hardware/history
- hardware/list
- hardware/list_barcodes
- hardware/list_storage
- hardware/merge
- hardware/racks_report
- hardware/remove
- hardware/search
- hardware/show
- hardware/show_barcodes
- hardware/update
- hardware/update_barcodes
Модуль управления аппаратным обеспечением: добавление и редактирование компонентов, управление штрих-кодами, просмотр истории изменений и отчеты по стойкам
Методы API¶
| Метод | Действие | Описание |
|---|---|---|
add | добавление компонента | Создает новый аппаратный компонент в системе. |
add_barcodes | добавление штрих-кодов | Добавляет новые записи штрих-кодов для сущностей. |
clone | клонирование | Создает клон компонента на основе существующего ID. |
delete_barcodes | удаление штрих-кодов | Удаляет запись штрих-кода по его ID. |
eval_hw | переоценка компонентов | Обновляет стоимость (cost_buy) и тег ru_cost для списка аппаратных компонентов. |
history | получение истории | Возвращает историю изменений (логи) для указанных компонентов. |
list | список компонентов | Возвращает список доступных аппаратных компонентов с фильтрацией по типу. |
list_barcodes | получение списка штрих-кодов | Возвращает список всех зарегистрированных штрих-кодов с применением фильтров. |
list_storage | получение складских остатков | Возвращает список доступных компонентов на складе с учетом фильтров по типу и локации. |
merge | объединение элементов | Объединяет несколько компонентов в один (мастер-элемент). |
racks_report | отчет по стойкам | Генерирует отчет по стоимости и конфигурации серверов внутри стоек дата-центра. |
remove | удаление компонента | Удаляет компонент из базы данных по его ID. |
search | поиск серверов | Поиск серверов, содержащих компоненты с определенными характеристиками. |
show | показ компонента | Возвращает детальную информацию о конкретном аппаратном компоненте. |
show_barcodes | получение информации о штрих-коде | Возвращает данные штрих-кода по его идентификатору. |
update | обновление компонента | Обновляет данные аппаратного компонента. |
update_barcodes | обновление штрих-кода | Обновляет данные записи штрих-кода. |
hardware/add¶
Создает новый аппаратный компонент в системе.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: add |
| token | ✅ | string | Токен авторизации |
| name | ✅ | string | Название компонента |
| type | ✅ | string | Тип аппаратного компонента |
| cost_buy | ❌ | number | Себестоимость закупки. |
| cost_sale | ❌ | number | Цена продажи. |
| cost_saleNL | ❌ | number | Цена продажи в NL (Нидерланды). |
| cost_saleUS | ❌ | number | Цена продажи в US (США). |
| Kpd | ❌ | number | Коэффициент KPD. |
| CpuLink | ❌ | string | Связь процессора (CpuLink). |
Пример запроса
Пример успешного ответа
Примеры ошибок
{
"-1": "Component named '...' already exists",
"Exception: cost_buy $cost_buy should be a number": "hardware/add: cost_buy $cost_buy should be a number",
"Exception: cost_sale $cost_sale should be a number": "hardware/add: cost_sale $cost_sale should be a number",
"Exception: cost_saleNL $cost_saleNL should be a number": "hardware/add: cost_saleNL $cost_saleNL should be a number",
"Exception: cost_saleUS $cost_saleUS should be a number": "hardware/add: cost_saleUS $cost_saleUS should be a number",
"Exception: Kpd $Kpd should be a number": "hardware/add: Kpd $Kpd should be a number",
"Exception: failed to create component $name": "hardware/add: failed to create component $name"
}
hardware/add_barcodes¶
Добавляет новые записи штрих-кодов для сущностей.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: add_barcodes |
| token | ✅ | string | Токен авторизации |
| hardware_id | ❌ | integer | null |
| barcode | ✅ | string | Значение штрих-кода |
| comment | ❌ | string | null |
Пример запроса
Пример успешного ответа
hardware/clone¶
Создает клон компонента на основе существующего ID.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: clone |
| id | ✅ | integer | ID компонента для клонирования. |
| token | ❌ | string | Токен авторизации |
Пример запроса
hardware/delete_barcodes¶
Удаляет запись штрих-кода по его ID.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: delete_barcodes |
| token | ✅ | string | Токен авторизации |
| id | ❌ | integer | ID штрих-кода для удаления. |
Пример запроса
Пример успешного ответа
hardware/eval_hw¶
Обновляет стоимость (cost_buy) и тег ru_cost для списка аппаратных компонентов.
HTTP-метод: POST
Параметры:
| action | ✅ | string | Идентификатор метода: eval_hw |
|---|---|---|---|
| token | ✅ | string | Токен авторизации |
| update_data | ❌ | array<integer|object> | Массив данных для обновления. Ключи — ID компонентов, значения в формате 'cost_buy;ru_cost'. Если не передан, используется -1. |
Пример запроса
Пример успешного ответа
Примеры ошибок
hardware/history¶
Возвращает историю изменений (логи) для указанных компонентов.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: history |
| token | ✅ | string | Токен авторизации |
| id | ❌ | array<integer> | Идентификатор или массив идентификаторов записей для фильтрации истории. |
| type | ❌ | array<string> | Типы записей истории. Принимает несколько значений: type[]=val1&type[]=val2. |
| date_from | ❌ | string | Дата начала истории (ISO-дата). |
| location | ❌ | string | Фильтрация по локации. |
Пример запроса
Пример успешного ответа
hardware/list¶
Возвращает список доступных аппаратных компонентов с фильтрацией по типу.
HTTP-метод: POST
Параметры:
| action | ✅ | string | Идентификатор метода: list |
|---|---|---|---|
| token | ❌ | string | Токен авторизации (если не пустой, проверяется разрешение) |
| hw_type | ❌ | string | Тип оборудования. Допустимые значения: CPU, Platform, HDD, RAM, Other, motherboard. |
Пример запроса
Пример успешного ответа
Примеры ошибок
hardware/list_barcodes¶
Возвращает список всех зарегистрированных штрих-кодов с применением фильтров.
HTTP-метод: POST
Параметры:
| action | ✅ | string | Идентификатор метода: list_barcodes |
|---|---|---|---|
| token | ✅ | string | Токен авторизации |
| hardware_id | ❌ | array<integer> | ID оборудования для фильтрации штрих-кодов (через hw_barcodes_entity_filter) |
| barcode | ❌ | array<string> | Значение штрих-кода для поиска (через hw_barcodes_entity_filter) |
Пример запроса
Пример успешного ответа
hardware/list_storage¶
Возвращает список доступных компонентов на складе с учетом фильтров по типу и локации.
HTTP-метод: POST
Параметры:
| action | ✅ | string | Идентификатор метода: list_storage |
|---|---|---|---|
| token | ✅ | string | Токен авторизации |
| class | ❌ | string | Тип склада. Допустимые значения: bm (по умолчанию), vm. |
| hw_id | ❌ | array<integer> | Уникальный идентификатор оборудования для фильтрации списка хранилищ. |
| type | ❌ | array<string> | Тип устройства или категории оборудования в системе. |
Пример запроса
Пример успешного ответа
hardware/merge¶
Объединяет несколько компонентов в один (мастер-элемент).
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: merge |
| token | ✅ | string | Токен авторизации |
| id | ✅ | integer | ID мастер-элемента (тот, в который объединяют) |
| group | ❌ | string | Строка с ID элементов через запятую для объединения |
Пример запроса
hardware/racks_report¶
Генерирует отчет по стоимости и конфигурации серверов внутри стоек дата-центра.
HTTP-метод: POST
Параметры:
| action | ✅ | string | Идентификатор метода: racks_report |
|---|---|---|---|
| token | ✅ | string | Токен авторизации |
| id | ✅ | integer | ID дата-центра для построения отчета |
Пример запроса
Пример успешного ответа
hardware/remove¶
Удаляет компонент из базы данных по его ID.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: remove |
| token | ✅ | string | Токен авторизации |
| id | ❌ | integer | ID удаляемого компонента (по умолчанию 0) |
Пример запроса
Примеры ошибок
hardware/search¶
Поиск серверов, содержащих компоненты с определенными характеристиками.
HTTP-метод: POST
Параметры:
| action | ✅ | string | Идентификатор метода: search |
|---|---|---|---|
| token | ✅ | string | Токен авторизации |
| id | ❌ | integer | ID компонента для поиска (hw_id) |
| location | ❌ | string | Фильтр по локации. Допустимые значения: All или код локации из dataCenterLocation.Code |
| status | ❌ | string | Статус сервера. Можно передать список через запятую |
Пример запроса
Пример успешного ответа
{
"result": "OK",
"module": "hardware",
"action": "search",
"servers": [
{
"id": 10,
"type": "string",
"owner": "string",
"status": "string",
"ip": "string",
"location": "string",
"config": "string",
"full_location": "string",
"preset": "string",
"hostname": "string",
"role": "string",
"rate": "string",
"amount": 5,
"days_left": 45,
"due_date": "2024-12-31"
}
]
}
Примеры ошибок
hardware/show¶
Возвращает детальную информацию о конкретном аппаратном компоненте.
HTTP-метод: POST
Параметры:
| action | ✅ | string | Идентификатор метода: show |
|---|---|---|---|
| token | ✅ | string | Токен авторизации |
| id | ❌ | integer | ID компонента |
| name | ❌ | string | Имя компонента для поиска |
Пример запроса
Пример успешного ответа
hardware/show_barcodes¶
Возвращает данные штрих-кода по его идентификатору.
HTTP-метод: POST
Параметры:
| action | ✅ | string | Идентификатор метода: show_barcodes |
|---|---|---|---|
| id | ❌ | integer | ID записи штрих-кода. |
| token | ❌ | string | Уникальный идентификатор сессии или ключ доступа для авторизации запроса. |
Пример запроса
Пример успешного ответа
hardware/update¶
Обновляет данные аппаратного компонента.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: update |
| id | ✅ | integer | ID компонента для обновления. |
| token | ❌ | string | Уникальный идентификатор сессии для авторизации запроса. |
Пример запроса
Пример успешного ответа
{
"result": "OK",
"module": "hardware",
"action": "update",
"data": {
"id": 123,
"type": "string|null",
"name": "string|null",
"cost_buy": 100,
"cost_sale": 200,
"cost_saleNL": 150,
"cost_saleUS": 180,
"Kpd": 10,
"CpuLink": "string|null",
"servers_count": 5,
"total": 1000,
"status": "string|null",
"location": "string|null",
"tags": []
}
}
Примеры ошибок
hardware/update_barcodes¶
Обновляет данные записи штрих-кода.
HTTP-метод: POST
Параметры:
| action | ✅ | string | Идентификатор метода: update_barcodes |
|---|---|---|---|
| id | ❌ | integer | ID записи штрих-кода. |
| token | ❌ | string | Уникальный идентификатор сессии для авторизации запроса. |
| barcode | ✅ | string | Штрих-код (обязателен согласно hw_barcodes_validate) |
Пример запроса