Обьекты
Модуль содержит примеры запросов и ответов на них, параметров которые могут входить в запрос, в сервисе objects.
- async objects_api_crud_svc.create(payload: dict | None = None, error_handler: ErrorHandler = Depends(ErrorHandler))
Метод добавляет обьект в иерархию.
Запрос:
POST /v1/objects/ HTTP/1.1 Host: localhost Accept: application/json Content-Type: application/json Authorization: No Auth { "attributes": { "cn": "object1", "description": "describtion", "prsJsonConfigString": "configuration parameters", "prsActive": true, "prsDefault": true, "prsIndex": 1 } }
HTTP/1.1 200 OK Content-Type: application/json Access-Control-Allow-Origin: * Content-type: application/json { "id": "new object id" }
attributes (dict) - словарь с параметрами для создания обьекта.
cn (str) - имя обьекта; Обязательный атрибут.
description (str) - описание обьекта. Необязательный атрибут.
prsJsonConfigString (str) - Строка содержит, в случае необходимости, конфигурацию узла. Интерпретируется сервисом, управляющим сущностью, которой принадлежит экземпляр. Необязательный аттрибут.
prsActive (bool) - Определяет, активен ли экземпляр. Необязательный атрибут.
prsDefault (bool) - Если =
True
, то данный экземпляр. Необязательный атрибут. считается узлом по умолчанию в списке равноправных узлов данного уровня иерархии. Необязательный атрибут.prsIndex (int) - Если у узлов одного уровня иерархии проставлены индексы, то перед отдачей клиенту списка экземпляров они сортируются в соответствии с их индексами. Необязательный атрибут.
Ответ:
id (uuid) - id созданного обьекта
detail (str) - пояснения к ошибке
- async objects_api_crud_svc.delete(payload: ObjectRead, error_handler: ErrorHandler = Depends(ErrorHandler))
Метод удаления объекта в иерархии.
Запрос:
DELETE /v1/objects/ HTTP/1.1 Host: localhost Accept: application/json Content-Type: application/json Authorization: No Auth { "id": "id of an object to delete" }
HTTP/1.1 200 OK Content-Type: application/json Access-Control-Allow-Origin: * Content-type: application/json { null }
id (str | list[str]) - Идентификатор/ы удаляемого объекта.
Ответ:
null - в случае успешного запроса.
detail (list) - детали ошибки.
- async objects_api_crud_svc.read(q: str | None = None, payload: ObjectRead | None = None, error_handler: ErrorHandler = Depends(ErrorHandler))
Метод чтения обьекта в иерархии.
Пример запроса в формате JSON.
GET /v1/objects/ HTTP/1.1 Host: localhost Accept: application/json Content-Type: application/json Authorization: No Auth { "id": "object id to retrive", "cn": "object1", "description": "describtion", "prsJsonConfigString": "configuration parameters", "prsActive": true, "prsDefault": true, "prsIndex": 1 }
HTTP/1.1 200 OK Content-Type: application/json Access-Control-Allow-Origin: * Content-type: application/json { "data": ["retrived objects"] }
Пример query запроса.
GET /v1/objects/?q={"id":"object_id_to_retrive","cn":"object1","description":"describtion","prsJsonConfigString":"configuration_parameters","prsActive":true,"prsDefault":true,"prsIndex":1} HTTP/1.1 Host: localhost Accept: application/json Content-Type: application/json Authorization: No Auth
HTTP/1.1 200 OK Content-Type: application/json Access-Control-Allow-Origin: * Content-type: application/json { "data": ["retrived objects"] }
Параметры запроса:
id (str | list(str)) - идентификатор объекта, который мы хотим прочитать Необязательный аттрибут.
cn (str) - имя объекта, который мы хотим прочитать Необязательный аттрибут.
attributes (list[str]) - Список атрибутов, значения которых необходимо вернуть в ответе. По умолчанию - [“*“], то есть все атрибуты (кроме системных). Необязательный аттрибут.
base (str) - Базовый узел для поиска. Необязательный аттрибут. Если не указан, то поиск ведётся от главного узла иерархии.
deref (bool) - Флаг разыменования ссылок. По умолчанию true. Необязательный аттрибут.
scope (int) - Масштаб поиска. По умолчанию 1. Необязательный аттрибут.
0 - получение данных по указанному в ключе
base
узлу1 - поиск среди непосредственных потомков указанного в
base
узла2 - поиск по всему дереву, начиная с указанного в
base
узла.filter (dict) - Словарь из атрибутов и их значений, из которых формируется фильтр для поиска. Необязательный атрибут.
Ответ:
data (list) - данные прочитанного тега/тегов. Если ничего не найденно - пустой лист.
detail (list) - Детали ошибки.
- async objects_api_crud_svc.update(payload: dict, error_handler: ErrorHandler = Depends(ErrorHandler))
Метод обновления обьекта в иерархии.
Запрос:
PUT /v1/alerts/ HTTP/1.1 Host: localhost Accept: application/json Content-Type: application/json Authorization: No Auth { "id":"object_id", "attributes": { "cn": "object name", "description": "description of the object", "prsJsonConfigString": "node configuration", "prsActive": true, "prsDefault": false, "prsIndex": 12345 } }
HTTP/1.1 200 OK Content-Type: application/json Access-Control-Allow-Origin: * Content-type: application/json { {} }
id (str) - Идентификатор изменяемого узла.
attributes (dict) - словарь с параметрами для обновления объекта.
cn (str) - имя объекта. Необязательный атрибут.
description (str) - описание объекта. Необязательный атрибут.
prsJsonConfigString (str) - Строка содержит, в случае необходимости, конфигурацию узла. Интерпретируется сервисом, управляющим сущностью, которой принадлежит экземпляр. Необязательный аттрибут.
prsActive (bool) - Определяет, активен ли экземпляр. Применяется, к примеру, для временного „выключения“ экземпляра на время, пока он ещё не настроен окончательно. Необязательный аттрибут.
prsDefault (bool) - «Если =
True
, то данный экземпляр считается узлом по умолчанию в списке равноправных узлов данного уровня иерархии. Необязательный аттрибут.prsEntityTypeCode (int) - Атрибут используется для определения типа. К примеру, хранилища данных могут быть разных типов. Необязательный аттрибут.
prsIndex (int) - Если у узлов одного уровня иерархии проставлены индексы, то перед отдачей клиенту списка экземпляров они сортируются в соответствии с их индексами. Необязательный аттрибут.
Ответ:
{} - пустой словарь в случае успешного запроса.
detail (list) - детали ошибки.