Теги
Модуль содержит примеры запросов и ответов на них, параметров которые могут входить в запрос, в сервисе tags.
- async tags_api_crud_svc.create(payload: dict | None = None, error_handler: ErrorHandler = Depends(ErrorHandler))
Метод добавляет тег в иерархию.
Запрос:
POST /v1/tags/ HTTP/1.1 Host: localhost Accept: application/json Content-Type: application/json Authorization: No Auth { "attributes": { "cn": "tag1", "description": "describtion", "prsJsonConfigString": "configuration parameters", "prsActive": true, "prsDefault": true, "prsIndex": 1, "prsArchive": true, "prsCompress": true, "prsMaxLineDev": 12, "prsStep": true, "prsUpdate": true, "prsValueTypeCode": 1, "prsDefaultValue": 123, "prsMeasureUnits": "degrees" } }
HTTP/1.1 200 OK Content-Type: application/json Access-Control-Allow-Origin: * Content-type: application/json { "id": "new tag id" }
attributes (dict) - словарь с параметрами для создания тега.
cn (str) - имя тега. Необязательный атрибут.
description (str) - описание экземпляра. Необязательный атрибут.
prsJsonConfigString (str) - Строка содержит, в случае необходимости, конфигурацию узла. Интерпретируется сервисом, управляющим сущностью, которой принадлежит экземпляр. Необязательный аттрибут
prsActive (bool) - Определяет, активен ли экземпляр. Необязательный атрибут.
prsDefault (bool) - Если =
True
, то данный экземпляр. Необязательный атрибут. считаеться узлом по умолчанию в списке равноправных узлов данного уровня иерархии. Необязательный атрибут.prsIndex (int) - Если у узлов одного уровня иерархии проставлены индексы, то перед отдачей клиенту списка экземпляров они сортируются соответственно их индексам. Необязательный атрибут.
prsArchive (bool) - Флаг архивирования значений тега. Необязательный аттрибут.
prsCompress (bool) - Флаг сжатия значений тега. Необязательный атрибут. Если не указан, то поиск ведётся от главного узла иерархии. Необязательный атрибут.
prsMaxLineDev (float) - Параметр сжатия значений тега. Необязательный атрибут.
prsStep (bool) - Флаг ступенчатого тега. Необязательный атрибут.
prsUpdate (bool) - Флаг обновления значений тега. Необязательный атрибут.
prsValueTypeCode (int) - Тип значений тега. Необязательный атрибут.
prsDefaultValue (Any) - Значение тега по умолчанию. Необязательный атрибут.
prsMeasureUnits (str) - Единицы измерения тега. Необязательный атрибут.
Ответ:
id (uuid) - id созданного тега
detail (str) - пояснения к ошибке
- async tags_api_crud_svc.delete(payload: NodeDelete, error_handler: ErrorHandler = Depends(ErrorHandler))
Метод удаления тега в иерархии.
Запрос:
DELETE /v1/tags/ HTTP/1.1 Host: localhost Accept: application/json Content-Type: application/json Authorization: No Auth { "id": "id of a tag 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 tags_api_crud_svc.read(q: str | None = None, payload: TagRead | None = None, error_handler: ErrorHandler = Depends(ErrorHandler))
Метод чтения тега в иерархии.
Пример запроса в формате JSON.
GET /v1/tags/ HTTP/1.1 Host: localhost Accept: application/json Content-Type: application/json Authorization: No Auth { "id": "tag id which we want to find", "base": "base node for search", "deref": true, "scope": 1, "attributes":["params to select"], "filter": {"key":"value for filtering"} }
HTTP/1.1 200 OK Content-Type: application/json Access-Control-Allow-Origin: * Content-type: application/json { "data": "founded tag and it's params" }
Пример query запроса.
GET /v1/tags/?q={"id":"tag_id_which_we_want_to_find","base":"base_node_for_search","deref":true,"scope":1,"attributes":["params_to_select"],"filter":{"key":"value_for_filtering"}} 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": "founded tag and it's params" }
Параметры запроса:
id (str | list(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 tags_api_crud_svc.update(payload: dict, error_handler: ErrorHandler = Depends(ErrorHandler))
Метод обновления тега в иерархии.
Запрос:
PUT /v1/tags/ HTTP/1.1 Host: localhost Accept: application/json Content-Type: application/json Authorization: No Auth { "id": "tag id which we want to find", "base": "base node for search", "deref": true, "scope": 1, "attributes":["params to select"], "filter": {"key":"value for filtering"} }
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) - Детали ошибки.