.. _endpoints: Описание эндпоинтов ==================== GET /ping --------- Метод проверяет доступность сервера .. code-block:: GET /ping URL .. code-block:: http://localhost:8080/smevql/api/v1/ping Запрос отправляется без параметров Пример запроса: .. code-block:: curl -X 'GET' \ 'http://localhost:8080/smevql/api/v1/ping' \ -H 'accept: plain/text' Пример ответа: .. code-block:: pong .. table:: Описание ответа +----------+------------+----------------------------------------------+ | Параметр | Тип данных | Описание | +==========+============+==============================================+ | pong | string | Текстовый ответ при успешном отклике сервера | +----------+------------+----------------------------------------------+ GET /states --------------- Метод выводит состояния стейт-машины на данный момент .. code-block:: GET /states URL .. code-block:: http://localhost:8080/smevql/api/v1/states Запрос отправляется без параметров Пример запроса: .. code-block:: curl -X 'GET' \ 'http://localhost:8080/smevql/api/v1/states' \ -H 'accept: application/json' Пример ответа: .. code-block:: [ { "model": "book", "states": [ { "state": "appointment", "attributes": [ { "name": "type", "value": "APPOINTMENT" } ], "initial": true, "delete": false, "static": false }, { "state": "cancel", "attributes": [ { "name": "type", "value": "CANCEL" } ], "initial": false, "delete": false, "static": false }, { "state": "observation", "attributes": [ { "name": "type", "value": "D_OBSERVATION" } ], "initial": false, "delete": false, "static": false }, { "state": "cancelled", "attributes": [ { "name": "type", "value": "Cancel" } ], "initial": false, "delete": false, "static": false }, { "state": "deleted", "attributes": [], "initial": false, "delete": true, "static": false } ], "events": [ { "event": "book", "from": [ "appointment" ], "to": "observation", "hooks": [], "confirm": null, "updatable": false, "updatable_attributes": [] }, { "event": "observation", "from": [ "appointment" ], "to": "observation", "hooks": [], "confirm": null, "updatable": false, "updatable_attributes": [] }, { "event": "cancel", "from": [ "appointment", "observation" ], "to": "cancel", "hooks": [], "confirm": null, "updatable": false, "updatable_attributes": [] }, { "event": "delete", "from": [ "appointment", "observation", "cancel" ], "to": "deleted", "hooks": [], "confirm": null, "updatable": false, "updatable_attributes": [] } ] , ] .. table:: Описание ответа +----------------------+------------+-----------------------------+ | Параметр | Тип данных | Описание | +======================+============+=============================+ | model | string | имя модели | +----------------------+------------+-----------------------------+ | state | string | название состояния | +----------------------+------------+-----------------------------+ | attributes | array | набор атрибутов, | | | | описывающих состояние | +----------------------+------------+-----------------------------+ | name | string | имя атрибута | +----------------------+------------+-----------------------------+ | value | string | значение атрибута для | | | | описываемого состояния | +----------------------+------------+-----------------------------+ | initial | boolean | возможность создания записи | +----------------------+------------+-----------------------------+ | events | array | список событий изменения | | | | состояний | +----------------------+------------+-----------------------------+ | event | string | событие | +----------------------+------------+-----------------------------+ | from | string | массив состояний из | | | | которых возможен вызов | | | | события | +----------------------+------------+-----------------------------+ | to | string | в какое состояние | | | | переводится объект после | | | | события | +----------------------+------------+-----------------------------+ GET /states/{model} ------------------- Возвращает информацию о модели .. code-block:: GET /states/{model} URL .. code-block:: http://localhost:8080/smevql/api/v1/states/{model} .. table:: Параметры запроса +----------+------------+-----------------+ | Параметр | Тип данных | Описание | +==========+============+=================+ | model | string | имя модели | +----------+------------+-----------------+ Пример запроса: .. code-block:: curl -X 'GET' \ 'http://localhost:8080/smevql/api/v1/states/{model}' \ -H 'accept: application/json' Пример ответа: .. code-block:: [ { "model": "book", "states": [ { "state": "appointment", "attributes": [ { "name": "type", "value": "APPOINTMENT" } ], "initial": true, "delete": false, "static": false }, { "state": "cancel", "attributes": [ { "name": "type", "value": "CANCEL" } ], "initial": false, "delete": false, "static": false }, { "state": "observation", "attributes": [ { "name": "type", "value": "D_OBSERVATION" } ], "initial": false, "delete": false, "static": false }, { "state": "cancelled", "attributes": [ { "name": "type", "value": "Cancel" } ], "initial": false, "delete": false, "static": false }, { "state": "deleted", "attributes": [], "initial": false, "delete": true, "static": false } ], "events": [ { "event": "book", "from": [ "appointment" ], "to": "observation", "hooks": [], "confirm": null, "updatable": false, "updatable_attributes": [] }, { "event": "observation", "from": [ "appointment" ], "to": "observation", "hooks": [], "confirm": null, "updatable": false, "updatable_attributes": [] }, { "event": "cancel", "from": [ "appointment", "observation" ], "to": "cancel", "hooks": [], "confirm": null, "updatable": false, "updatable_attributes": [] }, { "event": "delete", "from": [ "appointment", "observation", "cancel" ], "to": "deleted", "hooks": [], "confirm": null, "updatable": false, "updatable_attributes": [] } ] , ] .. table:: Описание ответа +----------------------+------------+-----------------------------+ | Параметр | Тип данных | Описание | +======================+============+=============================+ | model | string | имя модели | +----------------------+------------+-----------------------------+ | state | string | название состояния | +----------------------+------------+-----------------------------+ | attributes | array | набор атрибутов, | | | | описывающих состояние | +----------------------+------------+-----------------------------+ | name | string | имя атрибута | +----------------------+------------+-----------------------------+ | value | string | значение атрибута для | | | | описываемого состояния | +----------------------+------------+-----------------------------+ | initial | boolean | возможность создания записи | +----------------------+------------+-----------------------------+ | events | array | список событий изменения | | | | состояний | +----------------------+------------+-----------------------------+ | event | string | событие | +----------------------+------------+-----------------------------+ | from | string | список состояний из | | | | которых возможен вызов | | | | события | +----------------------+------------+-----------------------------+ | to | string | в какое состояние | | | | переводится объект после | | | | события | +----------------------+------------+-----------------------------+ POST /states/{model}/{event} ----------------------------------- Метод обновляет данные состояния модели по указанному событию Метод .. code-block:: POST /states/{model}/{event} URL .. code-block:: http://localhost:8080/smevql/api/v1/states/{model}/{event} .. table:: Параметры запроса +----------+------------+-----------------+ | Параметр | Тип данных | Описание | +==========+============+=================+ | model | string | имя модели | +----------+------------+-----------------+ | event | string | событие | +----------+------------+-----------------+ В теле запроса нужно заполнить поля: .. code-block:: { "state": { "conditions": { "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }, }, "credentials": { "system": { "mnemonic": "string", "instance_id": "string", "user_id": "string" }, "request": { "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "sub_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "name": "string", "purpose_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "audit": true, "audit_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "audit_token": "string" } } } .. table:: Параметры запроса +-------------------------+------------+------------------------------------------------------+ | Параметр | Тип данных | Описание | +=========================+============+======================================================+ | state | string | название состояния | +-------------------------+------------+------------------------------------------------------+ | conditions | string | указывается условие фильтрации записей (опционально) | +-------------------------+------------+------------------------------------------------------+ | credentials | array | системные реквизиты | +-------------------------+------------+------------------------------------------------------+ | mnemonic | string | мнемоника | +-------------------------+------------+------------------------------------------------------+ | instance_id | string | идентификатор экземпляра | +-------------------------+------------+------------------------------------------------------+ | user_id | string | идентификатор пользователя | +-------------------------+------------+------------------------------------------------------+ | request | array | параметры запроса | +-------------------------+------------+------------------------------------------------------+ | id | string | идентификатор запроса | +-------------------------+------------+------------------------------------------------------+ | sub_id | string | идентификатор подзапроса | +-------------------------+------------+------------------------------------------------------+ | name | string | имя запроса | +-------------------------+------------+------------------------------------------------------+ | purpose_id | string | идентификатор события, породившего запрос | +-------------------------+------------+------------------------------------------------------+ | audit | boolean | признак необходимости запроса аудита | +-------------------------+------------+------------------------------------------------------+ | audit_id | string | идентификатор аудита | +-------------------------+------------+------------------------------------------------------+ | audit_token | string | токен аудита | +-------------------------+------------+------------------------------------------------------+ Пример запроса: .. code-block:: curl -X 'POST' \ 'http://localhost:8080/smevql/api/v1/states/{model}/{event}' \ -H 'accept: plain/text' \ -H 'Content-Type: application/json' \ -d '{ "state": { "conditions": { "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }, "payload": { "book_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "patient_id": "string", "booking_type": "string", "case_number": "string", "preliminary_reservation": true, "email": "string", "mobile_phone": "string", "referral_id": "string", "cards_id": "string" } }, "credentials": { "system": { "mnemonic": "string", "instance_id": "string", "user_id": "string" }, "request": { "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "sub_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "name": "string", "purpose_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "audit": true, "audit_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "audit_token": "string" } } }' Пример ответа: .. code-block:: { "response": { "state": "booked" }, .. table:: Описание ответа +--------------------+------------+----------------------------+ | Параметр | Тип данных | Описание | +====================+============+============================+ | state | string | обновленный статус события | +--------------------+------------+----------------------------+ GET /model ------------ Метод выводит массив моделей сервера .. code-block:: GET /model URL .. code-block:: http://localhost:8080/smevql/api/v1/model Запрос отправляется без параметров Пример запроса: .. code-block:: curl -X 'GET' \ 'http://localhost:8080/smevql/api/v1/model' \ -H 'accept: application/json' Пример ответа: .. code-block:: "resources": { "ticket1": { "name": "ticket", "description": "ticket", "version": "1.0", "available_versions": [ "1.0" ], "fields": { "id": { "name": "id", "type": [ "string", "STRING" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "passengerid": { "name": "passengerid", "type": [ "string", "STRING" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "tripid": { "name": "tripid", "type": [ "string", "STRING" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "number": { "name": "number", "type": [ "number", "LONG" ], "length": 0, "nullable": "NULL", "key": "PRIMARY" }, "bycard": { "name": "bycard", "type": [ "boolean", "BOOLEAN" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "price": { "name": "price", "type": [ "number", "DOUBLE" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "sold": { "name": "sold", "type": [ "string", "TIMESTAMP" ], "length": 0, "nullable": "NULL", "key": "NONE" } }, "connections": { "has_many": [], "belongs_to": [ { "passenger1": { "primary_key": [ "id" ], "foreign_key": [ "passengerid" ] } }, { "trip1": { "primary_key": [ "id" ], "foreign_key": [ "tripid" ] } } ] }, "restrictions": { "personal_data": [] }, "conditions": { "allowed": [], "denied": [], "always": [] }, "extract": { "source": [ { "name": "prostore", "table": "smevql_test.ticket1", "conditions": [ { "eq": { "field": "sold", "extract": { "source": "prostore", "table": "smevql_test.ticket1", "key": "sold", "is": true }, "isFallback": false } } ] } ] } }, .. table:: Описание ответа +--------------------+------------+----------------------------+ | Параметр | Тип данных | Описание | +====================+============+============================+ | name | string | название модели | +--------------------+------------+----------------------------+ | version | string | текущая версия модели | +--------------------+------------+----------------------------+ | available_versions | string | доступные версии модели | +--------------------+------------+----------------------------+ | fields | string | список полей модели | +--------------------+------------+----------------------------+ GET /model/{model} -------------------- Метод выводит данные выбранной модели .. code-block:: GET /model/{model} URL .. code-block:: http://localhost:8080/smevql/api/v1/model/{model} Запрос отправляется без параметров Пример запроса: .. code-block:: curl -X 'GET' \ 'http://localhost:8080/smevql/api/v1/model/{model}' \ -H 'accept: application/json' Пример ответа: .. code-block:: [ "ticket1": { "name": "ticket", "description": "ticket", "version": "1.0", "available_versions": [ "1.0" ], "fields": { "id": { "name": "id", "type": [ "string", "STRING" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "passengerid": { "name": "passengerid", "type": [ "string", "STRING" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "tripid": { "name": "tripid", "type": [ "string", "STRING" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "number": { "name": "number", "type": [ "number", "LONG" ], "length": 0, "nullable": "NULL", "key": "PRIMARY" }, "bycard": { "name": "bycard", "type": [ "boolean", "BOOLEAN" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "price": { "name": "price", "type": [ "number", "DOUBLE" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "sold": { "name": "sold", "type": [ "string", "TIMESTAMP" ], "length": 0, "nullable": "NULL", "key": "NONE" } } } ] .. table:: Описание ответа +--------------------+------------+----------------------------+ | Параметр | Тип данных | Описание | +====================+============+============================+ | name | string | название модели | +--------------------+------------+----------------------------+ | version | string | текущая версия модели | +--------------------+------------+----------------------------+ | available_versions | string | доступные версии модели | +--------------------+------------+----------------------------+ | fields | string | список полей модели | +--------------------+------------+----------------------------+ GET /model/{model}/{version} ------------------------------ Метод выводит версию выбранной модели .. code-block:: GET /model/{model}/{version} URL .. code-block:: http://localhost:8080/smevql/api/v1/model/{model}/{version} Запрос отправляется без параметров Пример запроса: .. code-block:: curl -X 'GET' \ 'http://localhost:8080/smevql/api/v1/model/{model}/{version}' \ -H 'accept: application/json' Пример ответа: .. code-block:: [ "ticket1": { "name": "ticket", "description": "ticket", "version": "1.0", "available_versions": [ "1.0" ], "fields": { "id": { "name": "id", "type": [ "string", "STRING" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "passengerid": { "name": "passengerid", "type": [ "string", "STRING" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "tripid": { "name": "tripid", "type": [ "string", "STRING" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "number": { "name": "number", "type": [ "number", "LONG" ], "length": 0, "nullable": "NULL", "key": "PRIMARY" }, "bycard": { "name": "bycard", "type": [ "boolean", "BOOLEAN" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "price": { "name": "price", "type": [ "number", "DOUBLE" ], "length": 0, "nullable": "NULL", "key": "NONE" }, "sold": { "name": "sold", "type": [ "string", "TIMESTAMP" ], "length": 0, "nullable": "NULL", "key": "NONE" } } } ] .. table:: Описание ответа +--------------------+------------+----------------------------+ | Параметр | Тип данных | Описание | +====================+============+============================+ | name | string | название модели | +--------------------+------------+----------------------------+ | version | string | текущая версия модели | +--------------------+------------+----------------------------+ | available_versions | string | доступные версии модели | +--------------------+------------+----------------------------+ | fields | string | список полей модели | +--------------------+------------+----------------------------+ GET /sources -------------------------- Метод выводит массив источников сервера .. code-block:: GET /sources URL .. code-block:: http://localhost:8080/smevql/api/v1/sources Запрос отправляется без параметров Пример запроса: .. code-block:: curl -X 'GET' \ 'http://localhost:8080/smevql/api/v1/sources' \ -H 'accept: application/json' Пример ответа: .. code-block:: { "prostore": [ { "version": "1.0", "adapter": "prostore", "protocol": "http", "host": "prostore", "port": 9090, "path": "api/v1/datamarts/query?format=json", "headers": [ { "content-type": "application/json" } ], "threads-count": 4, "connection-timeout": 30, "type": "rest" } ], "smevql": [ { "version": "1.0", "adapter": "smevql", "protocol": "http", "host": "smevql-server", "port": 8080, "path": "data?format=json", "headers": [ { "content-type": "application/json" } ], "threads-count": 4, "connection-timeout": 30, "type": "rest" } ], "csv-uploader": [ { "version": "1.0", "adapter": "confirm", "protocol": "http", "host": "csv-uploader", "port": 8080, "path": "version?format=json", "headers": [ { "content-type": "application/json" } ], "threads-count": 4, "connection-timeout": 30, "type": "rest" } ] } .. table:: Описание ответа +--------------------+------------+--------------------------+ | Параметр | Тип данных | Описание | +====================+============+==========================+ | version | string | версия | +--------------------+------------+--------------------------+ | adapter | string | имя адаптера | +--------------------+------------+--------------------------+ | protocol | string | протокол передачи данных | +--------------------+------------+--------------------------+ | host | string | хост сервера | +--------------------+------------+--------------------------+ | port | int | порт сервера | +--------------------+------------+--------------------------+ | path | string | путь к источнику | +--------------------+------------+--------------------------+ | headers | array | заголовки | +--------------------+------------+--------------------------+ | threads-count | int | кол-во потоков | +--------------------+------------+--------------------------+ | connection-timeout | int | время соединения | +--------------------+------------+--------------------------+ | type | string | тип взаимодействия с | | | | источником | +--------------------+------------+--------------------------+ POST /data ---------------------------- Запрашивает данные ресурсов в синхронном режиме .. code-block:: POST /data URL .. code-block:: http://localhost:8080/smevql/api/v1/data При запросе необходимо указать Headers: - Key: content-type - Value: application/json В теле запроса нужно заполнить поля: .. code-block:: { "query": { "ticket": { "conditions": {}, "attributes": [ "id", "price" ] } }, "credentials": { "system": { "mnemonic": "3fa45f64-5717-4562-b3fc-2c963f66afa6", "instance_id": "4fa45f64-5717-4562-b3fc-2c963f66afa6", "user_id": "5fa45f64-5717-4562-b3fc-2c963f66afa6" }, "request": { "id": "6fa45f64-5717-4562-b3fc-2c963f66afa6", "sub_id": "7fa45f64-5717-4562-b3fc-2c963f66afa6", "name": "query", "purpose_id": "8fa45f64-5717-4562-b3fc-2c963f66afa6", "audit": true, "audit_id": "9fa45f64-5717-4562-b3fc-2c963f66afa6", "audit_token": "b3fc" }, "signature": { "digest": "digest", "signature": "signature" } } } .. table:: Параметры запроса +-------------+------------+--------------------------------------------------------------+ | Параметр | Тип данных | Описание | +=============+============+==============================================================+ | query | array | атрибут запроса данных внутри указывается название сущности, | | | | данные которой нужно получить | +-------------+------------+--------------------------------------------------------------+ | conditions | string | указывается условие фильтрации записей (опционально) | +-------------+------------+--------------------------------------------------------------+ | attributes | array | атрибуты выборки данных | +-------------+------------+--------------------------------------------------------------+ | credentials | object | реквизиты | +-------------+------------+--------------------------------------------------------------+ | mnemonic | string | мнемоника системы | +-------------+------------+--------------------------------------------------------------+ | instance_id | string | идентификатор экземпляра | +-------------+------------+--------------------------------------------------------------+ | user_id | string | идентификатор пользователя | +-------------+------------+--------------------------------------------------------------+ | request | object | параметры запроса | +-------------+------------+--------------------------------------------------------------+ | id | string | идентификатор запроса | +-------------+------------+--------------------------------------------------------------+ | sub_id | string | идентификатор подзапроса | +-------------+------------+--------------------------------------------------------------+ | name | string | имя запроса | +-------------+------------+--------------------------------------------------------------+ | purpose_id | string | идентификатор события, породившего запрос | +-------------+------------+--------------------------------------------------------------+ | audit | boolean | возможность аудита | +-------------+------------+--------------------------------------------------------------+ | audit_id | string | идентификатор аудита | +-------------+------------+--------------------------------------------------------------+ | audit_token | string | токен аудита | +-------------+------------+--------------------------------------------------------------+ | signature | object | подпись | +-------------+------------+--------------------------------------------------------------+ | digest | string | дайджест подписи (не заполняется) | +-------------+------------+--------------------------------------------------------------+ | signature | string | подпись (не заполняется) | +-------------+------------+--------------------------------------------------------------+ Пример запроса: .. code-block:: curl -X 'POST' \ 'http://localhost:8080/smevql/api/v1/data' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "query": { "ticket": { "conditions": {}, "attributes": [ "id", "price" ] } }, "credentials": { "system": { "mnemonic": "3fa45f64-5717-4562-b3fc-2c963f66afa6", "instance_id": "3fa45f64-5717-4562-b3fc-2c963f66afa6", "user_id": "3fa45f64-5717-4562-b3fc-2c963f66afa6" }, "request": { "id": "6fa45f64-5717-4562-b3fc-2c963f66afa6", "sub_id": "7fa45f64-5717-4562-b3fc-2c963f66afa6", "name": "query", "purpose_id": "8fa45f64-5717-4562-b3fc-2c963f66afa6", "audit": true, "audit_id": "9fa45f64-5717-4562-b3fc-2c963f66afa6", "audit_token": "b3fc" }, "signature": { "digest": "digest", "signature": "signature" } } }' Пример ответа: .. code-block:: { "response": { "ticket": [ { "price": 298.8082301905419, "id": "3424f5b3-e337-4d0d-a046-a1c491ab3300" }, { "price": 67.79323025646744, "id": "ad14fce2-04f5-45b8-b430-3ff9efb5d4ca" } ] }, "credentials": { "system": { "mnemonic": "3fa45f64-5717-4562-b3fc-2c963f66afa6", "instance_id": "4fa45f64-5717-4562-b3fc-2c963f66afa6", "user_id": "5fa45f64-5717-4562-b3fc-2c963f66afa6" }, "request": { "id": "6fa45f64-5717-4562-b3fc-2c963f66afa6", "sub_id": "7fa45f64-5717-4562-b3fc-2c963f66afa6", "name": "query", "purpose_id": "8fa45f64-5717-4562-b3fc-2c963f66afa6", "audit": true, "audit_id": "9fa45f64-5717-4562-b3fc-2c963f66afa6", "audit_token": "b3fc" }, "signature": { "digest": "digest", "signature": "signature" }, "response": { "id": "ec26f676-5931-11ee-9044-eb1795d841ef", "sub_id": "ec26f677-5931-11ee-9044-eb1795d841ef", "started_at": "2023-09-22 13:22:24.456 +0300", "finished_at": "2023-09-22 13:22:24.530 +0300" } } } .. table:: Описание ответа +----------------------+------------+-----------------------------------------------------------------+ | Параметр | Тип данных | Описание | +======================+============+=================================================================+ | response | object | объект с описанием ресурсов, содержащих массивы данных запросов | +----------------------+------------+-----------------------------------------------------------------+ | resourse_data | array | массивы данных, запрашиваемых ресурсов (имя объекта) | +----------------------+------------+-----------------------------------------------------------------+ GET /server/indexes/required ---------------------------------- Формирует рекомендации по индексам на основании описания моделей .. code-block:: GET /server/indexes/required URL .. code-block:: http://localhost:8080/smevql/api/v1/server/indexes/required Запрос отправляется без параметров Пример запроса: .. code-block:: curl -X 'GET' \ 'http://localhost:8080/smevql/api/v1/server/indexes/required' \ -H 'accept: application/json' Пример ответа: .. code-block:: { "server": { "mnemonic": "00000000-d759-11ed-84c6-47c59cf9ecf6", "instance": "00000001-d759-11ed-84c6-47c59cf9ecf6" }, "indexes": { "connections": [ { "source": "prostore", "table": "smevql_test.ticket1", "fields": [ "passengerid", "tripid" ] } ], "conditions": [ { "source": "prostore", "table": "smevql_test.passenger1", "fields": [ "lastname", "firstname", "code" ] }, { "source": "prostore", "table": "mvd.vehicleregdata", "fields": [ "vehiclevin", "vehiclevin2" ] } ] } } } .. table:: Описание ответа +----------------------+------------+--------------------------+ | Параметр | Тип данных | Описание | +======================+============+==========================+ | server | string | данные сервера | +----------------------+------------+--------------------------+ | mnemonic | string | мнемоника | +----------------------+------------+--------------------------+ | instance | string | экземпляр сервера | +----------------------+------------+--------------------------+ | indexes | string | данные индекса | +----------------------+------------+--------------------------+ | connections | array | массив связей | +----------------------+------------+--------------------------+ | source | string | название источника | +----------------------+------------+--------------------------+ | table | string | название таблицы | +----------------------+------------+--------------------------+ | fields | string | список полей модели | +----------------------+------------+--------------------------+ | conditions | array | массив условий | | | | фильтрации записей | +----------------------+------------+--------------------------+