openapi: 3.0.3 info: title: VRt.Studio [ST] version: 7.11.2593 license: name: Proprietary url: https://veeroute.ru/ termsOfService: https://veeroute.ru/resources/terms_of_service contact: name: Veeroute Support Team email: servicedesk@veeroute.com x-logo: url: ../images/studio.svg backgroundColor: '#FAFAFA' altText: VRt.Studio description: 'Программный интерфейс для инструмента Veeroute Studio. # Описание Серверная часть Veeroute Studio. ## Диаграмма сущностей ![erd](../uml/studio.svg) ' servers: - url: https://api.edge7.veeroute.cloud description: Окружение для интеграции и ознакомления с новой функциональностью - url: https://api.prod7.veeroute.cloud description: Основное окружение security: - ApiKeyAuth: [] tags: - name: Explorer description: 'Управление структурой данных. ' - name: Experiments description: 'Управление экспериментами ' - name: Locations description: 'Управление локациями. ' - name: Performers description: 'Управление исполнителями. ' - name: Transports description: 'Управление транспортом. ' - name: Orders description: 'Управление заказами. ' - name: Hardlinks description: 'Управление назначениями. ' - name: Trips description: 'Управление рейсами. ' - name: Facts description: 'Управление фактами. ' - name: ExternalRouting description: 'Управление матрицей маршрутизации. ' - name: UserSettings description: 'Пользовательские настройки. ' - name: CustomFields description: 'Настройки конвертации пользовательских полей. В таблице предусмотрены дополнительные колонки для отображения значений из атрибутов. Данная настройка определяет правила конвертации значений атрибутов в соответствующие типизированные поля. Конвертации происходит при чтении данных - поэтому правила конвертации не влияют на данные и их можно изменять в любой момент. ' - name: Backups description: 'Массовый экспорт и импорт данных. ' - name: System description: 'Системные функции. Вспомогательный функционал, общий для всех сервисов. ' externalDocs: description: Сайт компании Veeroute url: https://veeroute.ru/ paths: /studio/explorer: post: tags: - Explorer summary: Создание папки description: Создание новой папки. operationId: create_folder x-process-type: TRACE requestBody: description: Запрос на создание папки. required: true content: application/json: schema: $ref: '#/components/schemas/folder_specification' responses: '201': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/unique_key' description: Ключ созданной папки. '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' get: tags: - Explorer summary: Чтение структуры папок description: Получение структуры папок. operationId: read_filesystem x-process-type: NOTRACE responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/filesystem' examples: DataExplorer: $ref: '#/components/examples/DataExplorer' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/explorer/{folder_key}: get: tags: - Explorer summary: Список экспериментов description: 'Получение списка экспериментов. ' operationId: read_folder x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/folder_key' - $ref: '#/components/parameters/filter' description: 'Фильтр для поиска по текстовым полям - возвращаются только те эксперименты, у которых в названии или описании содержится подстрока из фильтра. Если фильтр пустой - возвращаются все эксперименты в папке. Результат сортируется по времени редактирования. ' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_experiment_column' - $ref: '#/components/parameters/sort_direction' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment_list' examples: ExperimentList: $ref: '#/components/examples/ExperimentList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - Explorer summary: Обновление папки description: Переименование и перемещение папки. operationId: update_folder x-process-type: TRACE parameters: - $ref: '#/components/parameters/folder_key' requestBody: description: Запрос на обновление папки. required: true content: application/json: schema: $ref: '#/components/schemas/folder_specification' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/filesystem' examples: DataExplorer: $ref: '#/components/examples/DataExplorer' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Explorer summary: Удаление папки description: Удаление папки по ключу. operationId: delete_folder x-process-type: TRACE parameters: - $ref: '#/components/parameters/folder_key' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/explorer/{folder_key}/specification: get: tags: - Explorer summary: Информация о папке description: 'Получение информации о папке. ' operationId: read_folder_specification x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/folder_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/folder_specification' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/explorer/search/global: get: tags: - Explorer summary: Поиск экспериментов description: Поиск экспериментов по всем вложенным папкам. operationId: global_search x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/filter_required' description: 'Фильтр для поиска по текстовым полям - возвращаются только те эксперименты, у которых в названии или описании содержится подстрока из фильтра. Если фильтр пустой - возвращается пустой список. По умолчанию результат сортируется по времени редактирования. ' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_experiment_column' - $ref: '#/components/parameters/sort_direction' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment_list' examples: ExperimentList: $ref: '#/components/examples/ExperimentList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/explorer/batch/folders: delete: tags: - Explorer summary: Массовое удаление папок description: Массовое удаление папок. operationId: delete_folders_batch x-process-type: TRACE requestBody: description: Список ключей папок, которые необходимо удалить. required: true content: application/json: schema: $ref: '#/components/schemas/unique_key_list' responses: '204': description: Все папки успешно удалены '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/explorer/batch/experiments: delete: tags: - Explorer summary: Массовое удаление экспериментов description: Массовое удаление экспериментов. operationId: delete_experiments_batch x-process-type: TRACE requestBody: description: Список ключей экспериментов, которые необходимо удалить. required: true content: application/json: schema: $ref: '#/components/schemas/unique_key_list' responses: '204': description: Все эксперименты успешно удалены '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments: post: tags: - Experiments summary: Создание эксперимента description: Создание нового эксперимента. operationId: create_experiment x-process-type: TRACE requestBody: description: Запрос на создание эксперимента. required: true content: application/json: schema: $ref: '#/components/schemas/experiment_specification' responses: '201': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/unique_key' description: Ключ созданного эксперимента. '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}: get: tags: - Experiments summary: Чтение эксперимента description: Получение информации об эксперименте по его ключу. operationId: read_experiment x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - Experiments summary: Обновление эксперимента description: Переименование \ перемещение эксперимента. operationId: update_experiment x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление описания эксперимента. required: true content: application/json: schema: $ref: '#/components/schemas/experiment_specification' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Experiments summary: Удаление эксперимента description: Удаление эксперимента по ключу. operationId: delete_experiment x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/duplication: post: tags: - Experiments summary: Дублирование эксперимента description: Дублирование эксперимента. operationId: duplicate_experiment x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на дублирование эксперимента. required: true content: application/json: schema: $ref: '#/components/schemas/experiment_specification' description: Параметры нового эксперимента, который получится в результате дублирования. responses: '201': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/unique_key' description: Ключ продублированного эксперимента. '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/settings: put: tags: - Experiments summary: Обновление настроек description: Обновление настроек эксперимента. operationId: update_experiment_settings x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление настроек эксперимента. required: true content: application/json: schema: $ref: '#/components/schemas/experiment_settings' examples: ExperimentSettings: $ref: '#/components/examples/ExperimentSettings' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/indicators: put: tags: - Experiments summary: Обновление индикаторов description: Обновление индикаторов. operationId: update_experiment_indicators x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление индикаторов эксперимента. required: true content: application/json: schema: $ref: '#/components/schemas/indicators' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/neighbors: get: tags: - Experiments summary: Получение соседних экспериментов description: Получение соседних экспериментов. operationId: read_experiment_neighbors x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/table_experiment_column' - $ref: '#/components/parameters/sort_direction' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment_neighbors' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/path: get: tags: - Experiments summary: Получение пути эксперимента description: Получение пути эксперимента. operationId: read_experiment_path x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/filesystem' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/calculation-history: get: tags: - Experiments summary: История расчета description: Получение истории расчета эксперимента. operationId: read_experiment_calculation_history x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/calculation_history' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/calculation/{process_name}: post: tags: - Experiments summary: Запуск расчета description: Запуск расчета эксперимента. operationId: run_experiment_calculation x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/process_name' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/calculation: delete: tags: - Experiments summary: Остановка расчета description: Остановка расчета. operationId: stop_experiment_calculation x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' responses: '204': description: Успешное выполнение - расчет отменен '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/validation/{process_name}: post: tags: - Experiments summary: Запуск валидации description: Запуск валидации данных эксперимента. operationId: run_experiment_validation x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/process_name' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/refine/{process_name}: post: tags: - Experiments summary: Запуск очистки description: Запуск очистки данных эксперимента. operationId: run_experiment_refine x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/process_name' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/recalculate-tracks: post: tags: - Experiments summary: Запуск перерасчета треков description: Запуск перерасчета треков `ROAD` эксперимента. operationId: run_experiment_recalculate_tracks x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/tracks_full_segments' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/import/xlsx: post: tags: - Experiments summary: Импорт (XLSX) description: 'Импорт новых данных из файла формата XLSX. Если сущность уже присутствует в эксперименте (определяется по ее ключу) - она обновляется, если нет - создается новая. Временная зона данных берется из файла XLSX. ' operationId: import_xlsx x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Данные (XLSX). required: true content: application/octet-stream: schema: $ref: '#/components/schemas/file_xlsx' responses: '200': description: Импорт данных успешно завершен content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/import/json: post: tags: - Experiments summary: Импорт (JSON) description: 'Импорт новых данных из файла формата VRt.Universal JSON. Если сущность уже присутствует в эксперименте (определяется по ее ключу) - она обновляется, если нет - создается новая. ' operationId: import_json x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Данные (JSON). required: true content: application/json: schema: $ref: '#/components/schemas/universal_data' examples: UniversalData: $ref: '#/components/examples/UniversalData' responses: '200': description: Импорт данных успешно завершен content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/import/json-url: post: tags: - Experiments summary: Импорт по URL (JSON) description: 'Импорт новых данных из файла формата VRt.Universal JSON по ссылке. Если сущность уже присутствует в эксперименте (определяется по ее ключу) - она обновляется, если нет - создается новая. ' operationId: import_json_url x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - name: url description: Url json файла. in: query required: true schema: description: Url. type: string format: uri example: https://docs.edge7.veeroute.cloud/assets/files/case_1.json responses: '200': description: Импорт данных успешно завершен content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/import/json-tracedata/{source}/{process_code}/{sample}: post: tags: - Experiments summary: Импорт по tracedata description: 'Импорт новых данных из файла формата VRt.Universal JSON по `tracedata.process_code`. Если сущность уже присутствует в эксперименте (определяется по ее ключу) - она обновляется, если нет - создается новая. ' operationId: import_json_tracedata x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - name: source description: Источник. in: path required: true schema: $ref: '#/components/schemas/import_source' - $ref: '#/components/parameters/process_code' - name: sample description: Выборка загружаемых данных - входная задача или входная задача + результат расчета. in: path required: true schema: $ref: '#/components/schemas/import_sample' responses: '200': description: Импорт данных успешно завершен content: application/json: schema: $ref: '#/components/schemas/experiment' examples: Experiment: $ref: '#/components/examples/Experiment' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/export/xlsx: post: tags: - Experiments summary: Экспорт (XLSX) description: Экспортировать (XLSX). operationId: export_xlsx x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/timezone' responses: '200': description: Экспорт данных успешно завершен content: application/octet-stream: schema: $ref: '#/components/schemas/file_xlsx' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/export/json: post: tags: - Experiments summary: Экспорт (JSON) description: 'Экспортировать данные из эксперимента в файл формата VRt.Universal JSON. ' operationId: export_json x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' responses: '200': description: Экспорт данных успешно завершен content: application/json: schema: $ref: '#/components/schemas/universal_data' examples: UniversalData: $ref: '#/components/examples/UniversalData' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/locations: post: tags: - Locations summary: Создание локации description: Создание локации. operationId: create_location x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на создание нового локации. required: true content: application/json: schema: $ref: '#/components/schemas/web_location' examples: WebLocation: $ref: '#/components/examples/WebLocation' responses: '201': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_location' examples: WebLocation: $ref: '#/components/examples/WebLocation' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - Locations summary: Обновление локации description: Обновление локации по ее ключу. operationId: update_location x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление локации. required: true content: application/json: schema: $ref: '#/components/schemas/web_location' examples: WebLocation: $ref: '#/components/examples/WebLocation' responses: '200': description: Данные успешно обновлены content: application/json: schema: $ref: '#/components/schemas/web_location' examples: WebLocation: $ref: '#/components/examples/WebLocation' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/locations/{essence_key}: get: tags: - Locations summary: Чтение локации description: Получение информации о локации по ее ключу. operationId: read_location x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_location' examples: WebLocation: $ref: '#/components/examples/WebLocation' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Locations summary: Удаление локации description: Удаление локации по ее ключу. operationId: delete_location x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '204': description: Сущность успешно удалена '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/locations/batch/list: post: tags: - Locations summary: Список локаций description: Получение списка локаций. operationId: read_locations x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_location_column' - $ref: '#/components/parameters/table_custom_column' - $ref: '#/components/parameters/sort_direction' requestBody: description: Фильтр локаций. required: false content: application/json: schema: $ref: '#/components/schemas/table_location_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/table_location_list' examples: EmptyTableList: $ref: '#/components/examples/EmptyTableList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/locations/batch/geopoints: post: tags: - Locations summary: Геоточки локаций description: Получение списка геоточек. operationId: read_locations_geopoints x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' requestBody: description: Фильтр локаций. required: false content: application/json: schema: $ref: '#/components/schemas/table_location_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_location_geopoint_list' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/performers: post: tags: - Performers summary: Создание исполнителя description: Создание исполнителя. operationId: create_performer x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на создание нового исполнителя. required: true content: application/json: schema: $ref: '#/components/schemas/web_performer' examples: WebPerformer: $ref: '#/components/examples/WebPerformer' responses: '201': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_performer' examples: WebPerformer: $ref: '#/components/examples/WebPerformer' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - Performers summary: Обновление исполнителя description: Обновление исполнителя по его ключу. operationId: update_performer x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление исполнителя. required: true content: application/json: schema: $ref: '#/components/schemas/web_performer' examples: WebPerformer: $ref: '#/components/examples/WebPerformer' responses: '200': description: Данные успешно обновлены content: application/json: schema: $ref: '#/components/schemas/web_performer' examples: WebPerformer: $ref: '#/components/examples/WebPerformer' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/performers/{essence_key}: get: tags: - Performers summary: Чтение исполнителя description: Получение информации об исполнителе по его ключу. operationId: read_performer x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_performer' examples: WebPerformer: $ref: '#/components/examples/WebPerformer' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Performers summary: Удаление исполнителя description: Удаление исполнителя по его ключу. operationId: delete_performer x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '204': description: Сущность успешно удалена '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/performers/batch/list: post: tags: - Performers summary: Список исполнителей description: Получение списка исполнителей. operationId: read_performers x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_performer_column' - $ref: '#/components/parameters/table_custom_column' - $ref: '#/components/parameters/sort_direction' requestBody: description: Фильтр исполнителей. required: false content: application/json: schema: $ref: '#/components/schemas/table_performer_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/table_performer_list' examples: EmptyTableList: $ref: '#/components/examples/EmptyTableList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/performers/batch/ability: put: tags: - Performers summary: Включение исполнителей description: Включение исполнителей в расчет. operationId: enable_performers x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на включение исполнителей. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Performers summary: Выключение исполнителей description: Выключение исполнителей из расчета. operationId: disable_performers x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на выключение исполнителей. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/performers/batch/geopoints: post: tags: - Performers summary: Геоточки исполнителей description: Получение списка геоточек. operationId: read_performers_geopoints x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' requestBody: description: Фильтр исполнителей. required: false content: application/json: schema: $ref: '#/components/schemas/table_performer_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_performer_geopoint_list' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/transports: post: tags: - Transports summary: Создание транспорта description: Создание транспорта. operationId: create_transport x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на создание нового транспорта. required: true content: application/json: schema: $ref: '#/components/schemas/web_transport' examples: WebTransport: $ref: '#/components/examples/WebTransport' responses: '201': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_transport' examples: WebTransport: $ref: '#/components/examples/WebTransport' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - Transports summary: Обновление транспорта description: Обновление транспорта по ее ключу. operationId: update_transport x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление транспорта. required: true content: application/json: schema: $ref: '#/components/schemas/web_transport' examples: WebTransport: $ref: '#/components/examples/WebTransport' responses: '200': description: Данные успешно обновлены content: application/json: schema: $ref: '#/components/schemas/web_transport' examples: WebTransport: $ref: '#/components/examples/WebTransport' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/transports/{essence_key}: get: tags: - Transports summary: Чтение транспорта description: Получение информации о транспорте по его ключу. operationId: read_transport x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_transport' examples: WebTransport: $ref: '#/components/examples/WebTransport' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Transports summary: Удаление транспорта description: Удаление транспорта по ее ключу. operationId: delete_transport x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '204': description: Сущность успешно удалена '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/transports/batch/list: post: tags: - Transports summary: Список транспорта description: Получение списка транспорта. operationId: read_transports x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_transport_column' - $ref: '#/components/parameters/table_custom_column' - $ref: '#/components/parameters/sort_direction' requestBody: description: Фильтр транспорта. required: false content: application/json: schema: $ref: '#/components/schemas/table_transport_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/table_transport_list' examples: EmptyTableList: $ref: '#/components/examples/EmptyTableList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/transports/batch/ability: put: tags: - Transports summary: Включение транспорта description: Включение транспорта в расчет. operationId: enable_transports x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на включение транспорта. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Transports summary: Выключение транспорта description: Выключение транспорта из расчета. operationId: disable_transports x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на выключение транспорта. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/transports/batch/geopoints: post: tags: - Transports summary: Геоточки транспорта description: Получение списка геоточек. operationId: read_transports_geopoints x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' requestBody: description: Фильтр транспорта. required: false content: application/json: schema: $ref: '#/components/schemas/table_transport_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_transport_geopoint_list' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/orders: post: tags: - Orders summary: Создание заказа description: Создание заказа. operationId: create_order x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на создание новой сущности. required: true content: application/json: schema: $ref: '#/components/schemas/web_order' examples: WebOrder: $ref: '#/components/examples/WebOrder' responses: '201': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_order' examples: WebOrder: $ref: '#/components/examples/WebOrder' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - Orders summary: Обновление заказа description: Обновление сущности по ее ключу. operationId: update_order x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление сущности. required: true content: application/json: schema: $ref: '#/components/schemas/web_order' examples: WebOrder: $ref: '#/components/examples/WebOrder' responses: '200': description: Данные успешно обновлены content: application/json: schema: $ref: '#/components/schemas/web_order' examples: WebOrder: $ref: '#/components/examples/WebOrder' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/orders/{essence_key}: get: tags: - Orders summary: Чтение заказа description: Получение информации о заказе по его ключу. operationId: read_order x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_order' examples: WebOrder: $ref: '#/components/examples/WebOrder' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Orders summary: Удаление одного заказа description: Удаление заказа по его ключу. operationId: delete_order x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '204': description: Сущность успешно удалена '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/orders/batch/list: post: tags: - Orders summary: Список заказов description: Получение списка заказов. operationId: read_orders x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_order_column' - $ref: '#/components/parameters/table_custom_column' - $ref: '#/components/parameters/sort_direction' requestBody: description: Фильтр заказов. required: false content: application/json: schema: $ref: '#/components/schemas/table_order_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/table_order_list' examples: EmptyTableList: $ref: '#/components/examples/EmptyTableList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Orders summary: Удаление заказов description: Удаление заказов из эксперимента. operationId: delete_orders x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на удаление заказов. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Заказы успешно удалены '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/orders/batch/ability: put: tags: - Orders summary: Включение заказов description: Включение заказов в расчет. operationId: enable_orders x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на включение заказов. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Orders summary: Выключение заказов description: Выключение заказов из расчета. operationId: disable_orders x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на выключение заказов. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/orders/batch/geopoints: post: tags: - Orders summary: Геоточки заказов description: Получение списка геоточек. operationId: read_orders_geopoints x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' requestBody: description: Фильтр заказов. required: false content: application/json: schema: $ref: '#/components/schemas/table_order_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/web_order_geopoint_list' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/hardlinks: post: tags: - Hardlinks summary: Создание назначения description: Создание назначения. operationId: create_hardlink x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на создание новой сущности. required: true content: application/json: schema: $ref: '#/components/schemas/web_hardlink' examples: WebHardlink: $ref: '#/components/examples/WebHardlink' responses: '201': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_hardlink' examples: WebHardlink: $ref: '#/components/examples/WebHardlink' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - Hardlinks summary: Обновление назначения description: Обновление назначения по ключу. operationId: update_hardlink x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление сущности. required: true content: application/json: schema: $ref: '#/components/schemas/web_hardlink' examples: WebHardlink: $ref: '#/components/examples/WebHardlink' responses: '200': description: Данные успешно обновлены content: application/json: schema: $ref: '#/components/schemas/web_hardlink' examples: WebHardlink: $ref: '#/components/examples/WebHardlink' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/hardlinks/{essence_key}: get: tags: - Hardlinks summary: Чтение назначения description: Получение информации о назначении по его ключу. operationId: read_hardlink x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_hardlink' examples: WebHardlink: $ref: '#/components/examples/WebHardlink' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Hardlinks summary: Удаление назначения description: Удаление назначения по ключу. operationId: delete_hardlink x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '204': description: Сущность успешно удалена '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/hardlinks/batch/list: post: tags: - Hardlinks summary: Список назначений description: Получение списка назначений. operationId: read_hardlinks x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_hardlink_column' - $ref: '#/components/parameters/table_custom_column' - $ref: '#/components/parameters/sort_direction' requestBody: description: Фильтр назначений. required: false content: application/json: schema: $ref: '#/components/schemas/table_hardlink_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/table_hardlink_list' examples: EmptyTableList: $ref: '#/components/examples/EmptyTableList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/hardlinks/batch/ability: put: tags: - Hardlinks summary: Включение назначений description: Включение назначений в расчет. operationId: enable_hardlinks x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на включение назначений. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Hardlinks summary: Выключение назначений description: Выключение назначений из расчета. operationId: disable_hardlinks x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на выключение назначений. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/facts: post: tags: - Facts summary: Создание факта description: Создание факта. operationId: create_fact x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на создание новой сущности. required: true content: application/json: schema: $ref: '#/components/schemas/web_fact' examples: WebFact: $ref: '#/components/examples/WebFact' responses: '201': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_fact' examples: WebFact: $ref: '#/components/examples/WebFact' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - Facts summary: Обновление факта description: Обновление факта по ключу. operationId: update_fact x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление сущности. required: true content: application/json: schema: $ref: '#/components/schemas/web_fact' examples: WebFact: $ref: '#/components/examples/WebFact' responses: '200': description: Данные успешно обновлены content: application/json: schema: $ref: '#/components/schemas/web_fact' examples: WebFact: $ref: '#/components/examples/WebFact' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/facts/{essence_key}: get: tags: - Facts summary: Чтение факта description: Получение информации о факте по его ключу. operationId: read_fact x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_fact' examples: WebFact: $ref: '#/components/examples/WebFact' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Facts summary: Удаление одного факта description: Удаление факта по его ключу. operationId: delete_fact x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '204': description: Сущность успешно удалена '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/facts/batch/list: post: tags: - Facts summary: Список фактов description: Получение списка фактов. operationId: read_facts x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_fact_column' - $ref: '#/components/parameters/table_custom_column' - $ref: '#/components/parameters/sort_direction' requestBody: description: Фильтр фактов. required: false content: application/json: schema: $ref: '#/components/schemas/table_fact_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/table_fact_list' examples: EmptyTableList: $ref: '#/components/examples/EmptyTableList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Facts summary: Удаление фактов description: Удаление фактов из эксперимента. operationId: delete_facts x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на удаление фактов. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Факты успешно удалены '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/facts/batch/ability: put: tags: - Facts summary: Включение фактов description: Включение фактов в расчет. operationId: enable_facts x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на включение фактов. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Facts summary: Выключение фактов description: Выключение фактов из расчета. operationId: disable_facts x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на выключение фактов. required: true content: application/json: schema: $ref: '#/components/schemas/basic_essence_key_list' responses: '204': description: Успешное выполнение '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/externalrouting: post: tags: - ExternalRouting summary: Создание матриц маршрутизации description: Создание матриц маршрутизации. operationId: create_externalrouting x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на создание новой сущности. required: true content: application/json: schema: $ref: '#/components/schemas/routing_transport_matrix_list' responses: '201': description: Матрица маршрутизации успешно создана '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' get: tags: - ExternalRouting summary: Чтение матриц маршрутизации description: Получение информации о факте. operationId: read_externalrouting x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/routing_transport_matrix_list' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - ExternalRouting summary: Обновление матриц маршрутизации description: Обновление матриц маршрутизации по ключу. operationId: update_externalrouting x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление сущности. required: true content: application/json: schema: $ref: '#/components/schemas/routing_transport_matrix_list' responses: '200': description: Матрица маршрутизации успешно обновлена '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - ExternalRouting summary: Удаление матриц маршрутизации description: Удаление матриц маршрутизации. operationId: delete_externalrouting x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' responses: '204': description: Сущность успешно удалена '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/backups/{folder_key}: post: tags: - Backups summary: Экспорт папки description: 'Экспорт папки с экспериментами. ' operationId: create_backup x-process-type: TRACE parameters: - $ref: '#/components/parameters/folder_key' responses: '200': description: Экспорт данных успешно завершен content: application/octet-stream: schema: $ref: '#/components/schemas/file_zip' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - Backups summary: Импорт папки description: 'Импорт папки с экспериментами. Папка не должна типа ROOT и должна быть пустой. ' operationId: restore_backup x-process-type: TRACE parameters: - $ref: '#/components/parameters/folder_key' requestBody: description: Данные (ZIP). required: true content: application/octet-stream: schema: $ref: '#/components/schemas/file_zip' responses: '200': description: Импорт данных успешно завершен '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/settings/user: post: tags: - UserSettings summary: Установка активного ключа настроек пользователя description: 'Установка активного ключа настроек пользователя. ' operationId: set_user_settings_active_key x-process-type: NOTRACE requestBody: description: Новый ключ. required: true content: application/json: schema: $ref: '#/components/schemas/basic_path_key' responses: '200': description: Обновление активного ключа настроек успешно завершено content: application/json: schema: $ref: '#/components/schemas/settings_key_list' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' get: tags: - UserSettings summary: Чтение списка настроек пользователя description: 'Чтение списка ключей настроек пользователя. ' operationId: list_user_settings x-process-type: NOTRACE responses: '200': description: Чтение списка настроек успешно завершено content: application/json: schema: $ref: '#/components/schemas/settings_key_list' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/settings/user/{settings_key}: post: tags: - UserSettings summary: Обновление настроек пользователя description: 'Обновление настроек пользователя. ' operationId: create_user_settings x-process-type: TRACE parameters: - $ref: '#/components/parameters/settings_key' requestBody: description: Новые настройки. required: true content: application/json: schema: $ref: '#/components/schemas/user_settings' responses: '200': description: Обновление настроек успешно завершено content: application/json: schema: $ref: '#/components/schemas/user_settings' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' get: tags: - UserSettings summary: Чтение настроек пользователя description: 'Чтение настроек пользователя. ' operationId: read_user_settings x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/settings_key' responses: '200': description: Чтение настроек успешно завершено content: application/json: schema: $ref: '#/components/schemas/user_settings' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - UserSettings summary: Обновление настроек пользователя description: 'Обновление настроек пользователя. ' operationId: update_user_settings x-process-type: TRACE parameters: - $ref: '#/components/parameters/settings_key' requestBody: description: Новые настройки. required: true content: application/json: schema: $ref: '#/components/schemas/user_settings' responses: '200': description: Обновление настроек успешно завершено content: application/json: schema: $ref: '#/components/schemas/user_settings' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - UserSettings summary: Удаление настроек пользователя description: 'Удаление всех настроек пользователя. ' operationId: delete_user_settings x-process-type: TRACE parameters: - $ref: '#/components/parameters/settings_key' responses: '204': description: Настройки успешно удалены '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/settings/customfields: post: tags: - CustomFields summary: Установка активного ключа настроек полей description: 'Установка активного ключа настроек полей. ' operationId: set_customfields_settings_active_key x-process-type: NOTRACE requestBody: description: Новый ключ. required: true content: application/json: schema: $ref: '#/components/schemas/basic_path_key' responses: '200': description: Обновление активного ключа настроек успешно завершено content: application/json: schema: $ref: '#/components/schemas/settings_key_list' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' get: tags: - CustomFields summary: Чтение списка настроек полей description: 'Чтение списка ключей настроек пользовательских полей. ' operationId: list_customfields_settings x-process-type: NOTRACE responses: '200': description: Чтение списка настроек успешно завершено content: application/json: schema: $ref: '#/components/schemas/settings_key_list' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/settings/customfields/{settings_key}: post: tags: - CustomFields summary: Обновление настроек полей description: 'Обновление настроек пользовательских полей. ' operationId: create_customfields_settings x-process-type: TRACE parameters: - $ref: '#/components/parameters/settings_key' requestBody: description: Новые настройки. required: true content: application/json: schema: $ref: '#/components/schemas/customfields_settings' examples: Customfields: $ref: '#/components/examples/Customfields' responses: '200': description: Обновление настроек успешно завершено content: application/json: schema: $ref: '#/components/schemas/customfields_settings' examples: Customfields: $ref: '#/components/examples/Customfields' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' get: tags: - CustomFields summary: Чтение настроек полей description: 'Чтение настройки пользовательских полей. ' operationId: read_customfields_settings x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/settings_key' responses: '200': description: Чтение настроек успешно завершено content: application/json: schema: $ref: '#/components/schemas/customfields_settings' examples: Customfields: $ref: '#/components/examples/Customfields' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - CustomFields summary: Обновление настроек полей description: 'Обновление настроек пользовательских полей. ' operationId: update_customfields_settings x-process-type: TRACE parameters: - $ref: '#/components/parameters/settings_key' requestBody: description: Новые настройки. required: true content: application/json: schema: $ref: '#/components/schemas/customfields_settings' examples: Customfields: $ref: '#/components/examples/Customfields' responses: '200': description: Обновление настроек успешно завершено content: application/json: schema: $ref: '#/components/schemas/customfields_settings' examples: Customfields: $ref: '#/components/examples/Customfields' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - CustomFields summary: Удаление настроек полей description: 'Удаление настроек пользовательских полей. ' operationId: delete_customfields_settings x-process-type: TRACE parameters: - $ref: '#/components/parameters/settings_key' responses: '204': description: Настройки успешно удалены '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/trips: post: tags: - Trips summary: Создание рейса description: Создание рейса. operationId: create_trip x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на создание новой сущности. required: true content: application/json: schema: $ref: '#/components/schemas/web_trip' examples: WebTrip: $ref: '#/components/examples/WebTrip' responses: '201': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_trip' examples: WebTrip: $ref: '#/components/examples/WebTrip' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' put: tags: - Trips summary: Обновление рейса description: Обновление рейса по ее ключу. operationId: update_trip x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Запрос на обновление сущности. required: true content: application/json: schema: $ref: '#/components/schemas/web_trip' examples: WebTrip: $ref: '#/components/examples/WebTrip' responses: '200': description: Данные успешно обновлены content: application/json: schema: $ref: '#/components/schemas/web_trip' examples: WebTrip: $ref: '#/components/examples/WebTrip' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/trips/{essence_key}: get: tags: - Trips summary: Чтение рейса description: Получение информации о рейсе по его ключу. operationId: read_trip x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/web_trip' examples: WebTrip: $ref: '#/components/examples/WebTrip' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Trips summary: Удаление рейса description: Удаление рейса по ключу. operationId: delete_trip x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' responses: '204': description: Сущность успешно удалена '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/trips/batch/list: post: tags: - Trips summary: Список рейсов description: Получение списка рейсов. operationId: read_trips x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_trip_column' - $ref: '#/components/parameters/table_custom_column' - $ref: '#/components/parameters/sort_direction' requestBody: description: Фильтр рейсов. required: false content: application/json: schema: $ref: '#/components/schemas/table_trip_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/table_trip_list' examples: EmptyTableList: $ref: '#/components/examples/EmptyTableList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/trips/batch/tracks/{tracks_type}: post: tags: - Trips summary: Пути рейсов description: Получение путей. operationId: read_trips_tracks x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/tracks_type' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' requestBody: description: Фильтр рейсов. required: false content: application/json: schema: $ref: '#/components/schemas/table_trip_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/web_trip_track_list' examples: WebTripTrackList: $ref: '#/components/examples/WebTripTrackList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/trips/batch/charts: post: tags: - Trips summary: Диаграмма рейсов description: Получение рейсов для отображения на диаграмме. operationId: read_trips_charts x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_trip_column' - $ref: '#/components/parameters/sort_direction' requestBody: description: Фильтр рейсов. required: false content: application/json: schema: $ref: '#/components/schemas/table_trip_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/web_trip_chart_list' examples: EmptyChartList: $ref: '#/components/examples/EmptyChartList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/trips/tracks/custom: post: tags: - Trips summary: Загрузка пользовательских треков description: Загрузка пользовательских треков. operationId: load_custom_tracks x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' requestBody: description: Список пользовательских треков. required: false content: application/json: schema: $ref: '#/components/schemas/web_trip_track_list_custom' examples: WebTripTrackListCustom: $ref: '#/components/examples/WebTripTrackListCustom' responses: '200': description: Пользовательские треки успешно загружены '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' delete: tags: - Trips summary: Удаление пользовательских треков description: Удаление пользовательских всех треков. operationId: delete_custom_tracks x-process-type: TRACE parameters: - $ref: '#/components/parameters/experiment_key' responses: '204': description: Все пользовательские треки успешно удалены '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/experiments/{experiment_key}/trips/{essence_key}/stops/batch/list: post: tags: - Trips summary: Список остановок рейсов description: Получение списка остановок рейса. operationId: read_trip_stops x-process-type: NOTRACE parameters: - $ref: '#/components/parameters/experiment_key' - $ref: '#/components/parameters/essence_key' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/table_trip_stop_column' - $ref: '#/components/parameters/table_custom_column' - $ref: '#/components/parameters/sort_direction' requestBody: description: Фильтр остановок рейса. required: false content: application/json: schema: $ref: '#/components/schemas/table_trip_stop_filter_list' examples: FilterList: $ref: '#/components/examples/FilterList' responses: '200': description: Данные успешно получены content: application/json: schema: $ref: '#/components/schemas/table_trip_stop_list' examples: EmptyTableList: $ref: '#/components/examples/EmptyTableList' '400': $ref: '#/components/responses/400_with_errors_and_warnings' '401': $ref: '#/components/responses/401' '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/system/check: get: tags: - System summary: Проверка доступности description: Проверка доступности сервиса. operationId: check x-process-type: NOTRACE security: [] responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/check_result' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/system/version: get: tags: - System summary: Получение версии сервиса description: Получение версии сервиса. operationId: version x-process-type: NOTRACE security: [] responses: '200': description: Успешное выполнение content: application/json: schema: $ref: '#/components/schemas/version_result' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' /studio/file/{filename}: get: tags: - System summary: Получение документации description: Получение файла с документацией на этот сервис. operationId: file x-process-type: NOTRACE security: [] parameters: - $ref: '#/components/parameters/filename' responses: '200': description: Успешное выполнение content: text/html: schema: $ref: '#/components/schemas/file_html' text/plain: schema: $ref: '#/components/schemas/file_json' '404': $ref: '#/components/responses/404' '405': $ref: '#/components/responses/405' '406': $ref: '#/components/responses/406' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' '501': $ref: '#/components/responses/501' '502': $ref: '#/components/responses/502' '503': $ref: '#/components/responses/503' '504': $ref: '#/components/responses/504' default: $ref: '#/components/responses/503' components: securitySchemes: ApiKeyAuth: description: "Для [аутентификации](https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication)\ \ клиента \nиспользуется [JWT токен](https://ru.wikipedia.org/wiki/JSON_Web_Token),\ \ \nкоторый необходимо указывать в заголовке для каждого запроса в формате:\n\ \n`Authorization: Bearer `.\n\nУникальный токен для пользовательского\ \ аккаунта необходимо получить с помощью VRt.Account API.\n" type: http scheme: bearer bearerFormat: JWT responses: '401': description: Ошибка доступа - неверные реквизиты для авторизации, токен отсутствует или невалиден '402': description: Необходима оплата content: application/json: schema: $ref: '#/components/schemas/general_402' '403': description: Действие запрещено - уровень прав доступа не позволяет совершить данное действие content: application/json: schema: $ref: '#/components/schemas/general_403' '404': description: Запрашиваемая сущность не найдена content: application/json: schema: $ref: '#/components/schemas/general_404' '405': description: Метод запрещен для данного ресурса, проверьте указанный метод (POST, GET, ...) '406': description: Клиент не способен обработать формат ответа, проверьте заголовки '415': description: Неприемлемый формат запроса, проверьте заголовки '429': description: Превышено количество запросов content: application/json: schema: $ref: '#/components/schemas/general_429' '500': description: Внутренняя ошибка сервера content: application/json: schema: $ref: '#/components/schemas/general_500' '501': description: Функциональность не доступна для использования '502': description: Неверный шлюз '503': description: Сервис не доступен '504': description: Шлюз не отвечает 400_with_errors_and_warnings: description: Неверный запрос - данные содержат ошибки content: application/json: schema: $ref: '#/components/schemas/custom_400_with_errors_and_warnings' examples: Result400: $ref: '#/components/examples/Result400' schemas: unique_key: description: Ключ, уникальный идентификатор. type: string format: uuid example: 11111111-2222-3333-4444-555555555555 folder_type: description: "Тип элемента:\n * `ROOT` - корневой объект\n * `FOLDER` - папка\n" type: string enum: - ROOT - FOLDER example: FOLDER folder_counters: description: 'Статистика по текущей папке. ' type: object additionalProperties: false properties: folders_count: description: Количество вложенных папок. type: integer format: int32 minimum: 0 maximum: 10001 example: 12 experiments_count: description: Количество вложенных экспериментов. type: integer format: int32 minimum: 0 maximum: 10001 example: 16 required: - folders_count - experiments_count filesystem: description: 'Файловая система. Только один объект может иметь тип ROOT. ' type: object additionalProperties: false properties: key: $ref: '#/components/schemas/unique_key' type: $ref: '#/components/schemas/folder_type' name: description: Название папки. type: string minLength: 1 maxLength: 100 example: folder_1 comment: description: Комментарий к папке. type: string nullable: true default: null minLength: 0 maxLength: 10000 example: long long long long text counters: $ref: '#/components/schemas/folder_counters' elements: description: Список дочерних элементов. type: array readOnly: true uniqueItems: false minItems: 0 maxItems: 101 items: $ref: '#/components/schemas/filesystem' required: - key - type - name - counters process_code: description: 'Уникальный идентификатор процесса. Создается один на процесс, одинаковый для разных запросов по одному процессу. ' type: string format: uuid example: 11111111-2222-3333-4444-555555555555 request_code: description: 'Уникальный идентификатор запроса. Создается новый на каждый запрос. ' type: string format: uuid example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee user_username: description: Уникальное имя пользователя для авторизации. type: string pattern: \w+ minLength: 2 maxLength: 256 example: username_for_login company_key: description: Уникальный идентификатор компании. type: string pattern: \w+ minLength: 3 maxLength: 256 example: smart_company service: description: Название сервиса. type: string enum: - UNIVERSAL - ROUTING - ACCOUNT - ADMIN - STUDIO - MONITOR - PACKER - AGRO example: UNIVERSAL operation: description: Наименование операции (запроса). type: string pattern: \w+ minLength: 3 maxLength: 256 example: run_plan_calculation tracedata: description: Данные используемые для трассировки запросов. type: object additionalProperties: false properties: process_code: $ref: '#/components/schemas/process_code' request_code: $ref: '#/components/schemas/request_code' username: $ref: '#/components/schemas/user_username' company: $ref: '#/components/schemas/company_key' service: $ref: '#/components/schemas/service' operation: $ref: '#/components/schemas/operation' env: description: Уникальный идентификатор окружения. type: string pattern: \w+ minLength: 2 maxLength: 256 example: edge7 pod: description: Уникальный идентификатор pod. type: string pattern: \w+ minLength: 2 maxLength: 256 example: 11111111-2222-3333-4444-555555555555 time: description: Дата и время вызова метода сервиса в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). type: string format: date-time example: '2024-11-21T09:30:00+03:00' required: - process_code - request_code - username - company - service - operation - env - pod - time schema_error: description: Ошибка по схеме. type: object additionalProperties: false properties: entity: description: Идентификатор целевой сущности. type: string nullable: true maxLength: 1024 example: order_0001 message: description: Сообщение об ошибке. type: string example: bad input data required: - entity - message schema_error_list: description: Список ошибок. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/schema_error' entity_error_type: description: "Тип ошибки:\n * `INCONSISTENT_REFERENCE` - ссылка на несуществующую\ \ сущность\n * `UNIQUE_IDS_VIOLATION` - все идентификаторы должны быть уникальными\n\ \ * `INVALID_ROUTING_MATRIX` - проблема с размерностью матрицы гео-данных\n\ \ * `INVALID_GEO_PROVIDER` - проблема с указанным гео-провайдером\n * `COMPATIBILITY_CARGO_BOX`\ \ - ни один груз не совместим ни с одним отсеком\n * `COMPATIBILITY_TRANSPORT_PERFORMER`\ \ - ни один транспорт не совместим ни с одним исполнителем\n * `COMPATIBILITY_TRANSPORT_LOCATION`\ \ - ни один транспорт не совместим ни с одной локацией\n * `COMPATIBILITY_ORDER_PERFORMER`\ \ - ни один заказ не совместим ни с одним транспортом\n * `INCONSISTENT_HARDLINK`\ \ - ключ сущности должен находиться только в одной связи\n * `PLANNING_HORIZON_EXCEEDED`\ \ - превышен горизонт планирования (разница между самой ранней и самой поздней\ \ временными отметками в данных)\n * `MEANINGLESS_RESTRICTIONS` - заданные\ \ ограничения не имеют смысла\n * `TOO_MANY_WARNINGS` - количество предупреждений\ \ (`warning`) больше 15001\n" type: string enum: - INCONSISTENT_REFERENCE - UNIQUE_IDS_VIOLATION - INVALID_ROUTING_MATRIX - INVALID_GEO_PROVIDER - COMPATIBILITY_CARGO_BOX - COMPATIBILITY_TRANSPORT_PERFORMER - COMPATIBILITY_TRANSPORT_LOCATION - COMPATIBILITY_ORDER_PERFORMER - INCONSISTENT_HARDLINK - PLANNING_HORIZON_EXCEEDED - MEANINGLESS_RESTRICTIONS - TOO_MANY_WARNINGS example: INCONSISTENT_REFERENCE entity_type: description: Тип сущности. type: string enum: - TASK - SETTINGS - ORDER - ORDER_LINK - PERFORMER - PERFORMER_LINK - TRANSPORT - TRANSPORT_LINK - HARDLINK - HARDLINK_LINK - LOCATION - LOCATION_LINK - BOX - BOX_LINK - TRIP - TRIP_LINK - CARGO - CARGO_LINK - DEMAND - DEMAND_LINK - EVENT - EVENT_LINK - PERFORMER_SHIFT - PERFORMER_SHIFT_LINK - TRANSPORT_SHIFT - TRANSPORT_SHIFT_LINK - FACT - FACT_LINK example: ORDER entity_path: description: 'Описание сущности и путь до нее. ' type: object additionalProperties: false nullable: true properties: entity_key: description: Ключ целевой сущности. type: string nullable: true maxLength: 1024 example: order_0001 entity_type: $ref: '#/components/schemas/entity_type' child_entity: $ref: '#/components/schemas/entity_path' required: - entity_key - entity_type entity_error: description: Описание ошибки во входных данных. type: object additionalProperties: false properties: type: $ref: '#/components/schemas/entity_error_type' info: description: Информация об ошибке. type: string nullable: true minLength: 0 maxLength: 2048 example: entity error entities: description: Список сущностей, которые вызвали ошибку. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/entity_path' required: - type - entities entity_error_list: description: 'Список ошибок в исходных данных, из-за которых запуск расчета невозможен. ' type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/entity_error' entity_warning_type: description: "Тип предупреждения:\n * `NO_AVAILABLE_TRANSPORT` - заказ не возможно\ \ выполнить, так как нет ни одного доступного (по ограничениям смен) транспорта\n\ \ * `NO_AVAILABLE_PERFORMER` - заказ не возможно выполнить, так как нет ни\ \ одного доступного (по ограничениям смен) исполнителя\n * `NO_COMPATIBLE_TRANSPORT`\ \ - заказ не возможно выполнить, так как нет ни одного совместимого (по вместимости\ \ и\\или тегам совместимости) транспорта\n * `NO_COMPATIBLE_PERFORMER` -\ \ заказ не возможно выполнить, так как нет ни одного совместимого (по тегам\ \ совместимости) исполнителя\n * `PICKUP_AND_DROP_VIOLATION` - для каждого\ \ груза в рамках заказа должна быть ровно одна погрузка и ровно одна выгрузка\ \ (кроме заявок `PICKUP_TO_BOX` и `DROP_FROM_BOX`)\n * `PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_ORDER`\ \ - для каждого груза в рамках заказа должна погрузка должна идти перед выгрузкой\ \ (`precedence_in_order`)\n * `PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_TRIP`\ \ - заданы противоречивые требования на порядок следования заявок (`precedence_in_trip`)\n\ \ * `VIOLATION_PRECEDENCE_IN_TRIP_AND_ORDER` - требования на порядок следования\ \ заявок в рейсе (`precedence_in_trip`) и в заказе (`precedence_in_order`)\ \ противоречат друг другу\n * `TIME_WINDOW_VIOLATION` - время начала временного\ \ окна позже времени окончания окна или временное окно превышает максимально\ \ допустимое\n * `DURATION_VIOLATION` - продолжительность не соответствует\ \ разрешенному интервалу\n * `ORDER_WINDOWS_INTERSECTION_VIOLATION` - мягкие\ \ окна не должны выходить за границы жесткого окна\n * `PERFORMER_SHIFTS_INTERSECTION_VIOLATION`\ \ - временные диапазоны рабочих смен исполнителя не должны пересекаться, начало\ \ последующего окна не может быть равно концу предыдущего \n * `TRANSPORT_SHIFTS_INTERSECTION_VIOLATION`\ \ - временные диапазоны рабочих смен транспорта не должны пересекаться, начало\ \ последующего окна не может быть равно концу предыдущего\n * `LOCATION_WINDOWS_INTERSECTION_VIOLATION`\ \ - временные диапазоны рабочих окон одной локации не должны пересекаться,\ \ начало последующего окна не может быть равно концу предыдущего\n * `INVALID_LOCATION_DURATIONS`\ \ - у локации есть рабочее окно которое меньше суммы времен `arrival + departure`\n\ \ * `NO_TRANSPORT_BOXES` - если существуют заказы с грузом - то у транспорта\ \ должен быть хотя бы один отсек \n * `MAX_CAPACITY_VIOLATION` - ограничение\ \ `max_capacity` превышает суммарную вместимость всех отсеков или указывается\ \ для одного отсека или меньше вместимости какого-то отсека\n * `MAX_BOXES_VIOLATION`\ \ - ограничение `max_boxes` больше или равно суммарного количества отсеков\ \ или указывается для одного отсека или равно нулю\n * `TOO_MANY_CARGOS_FOR_DROP_VIOLATION`\ \ - количество грузов для заявки, имеющей тип `DROP` / `DROP_FROM_BOX`, должно\ \ быть не больше единицы\n * `EMPTY_CARGOES_LIST` - пустой список грузов\ \ у заявок, имеющих тип `DROP` / `DROP_FROM_BOX` / `PICKUP` / `PICKUP_TO_BOX`\n\ \ * `CARGO_WORK_VIOLATION` - у заявки типа `WORK` список грузов должен быть\ \ пустой\n * `GEODATA_TIME_WINDOW_VIOLATION` - горизонт планирования превышает\ \ максимально доступное значение\n * `SHIFT_RESTRICTIONS_COULD_BE_MORE_PRECISE`\ \ - рабочее окно `working_window` смены исполнителя не лежит полностью внутри\ \ окна доступности `availability_window`\n * `DURATION_DOES_NOT_FIT_INTO_HARD_WINDOW`\ \ - продолжительность события не помещается в жесткое временное окно\n *\ \ `DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW` - продолжительность события не\ \ помещается в мягкое временное окно\n * `EXTRA_DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW`\ \ - дополнительное время на выполнение заявки не помещается в мягкое временное\ \ окно\n * `MAX_CALCULATION_TIME_VIOLATION` - превышено максимальное допустимое\ \ время расчета\n * `MAX_WAITING_TIME_VIOLATION` - превышено максимальное\ \ допустимое время ожидания\n * `INVALID_HARDLINK` - связь невозможно учесть,\ \ нельзя назначать на транспорт заказ с заявками с типом `WORK`\n * `CARGO_BOX_VIOLATION`\ \ - для заявок всех типов кроме `DROP_FROM_BOX` ключ отсека, где находится\ \ груз, должен быть пустым\n * `CARGO_MULTIBOX_VIOLATION` - для заявки типа\ \ `DROP_FROM_BOX` указанные грузы находятся в отсеках разных транспортов\n\ \ * `CARGO_CAPACITY_VIOLATION` - указанный груз на борту превышает размеры\ \ отсека, в котором он находится\n * `CARGO_ORDER_VIOLATION` - указанный\ \ в заказе груз не присутствует в заявках\n * `FEATURE_LIFETIME_VIOLATION`\ \ - окна свойств пересекаются между собой или рабочее окно `working_window`\ \ смены исполнителя или транспорта не пересекается с временным окном свойства\n\ \ * `QUOTA_EXCEEDED` - превышена квота на сервис\n * `MAX_LOCATIONS_LIMITS_PENALTY_EXCEEDED`\ \ - полученное решение не удовлетворяет требованию `max_locations_limits_penalty`\n\ \ * `REMOVED_ITEMS_NOT_EMPTY` - в процессе проверки данных были удалены сущности\ \ из исходного датасета, список удаленных сущностей находится в объекте `removed_items`\n" type: string enum: - NO_AVAILABLE_TRANSPORT - NO_AVAILABLE_PERFORMER - NO_COMPATIBLE_TRANSPORT - NO_COMPATIBLE_PERFORMER - PICKUP_AND_DROP_VIOLATION - PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_ORDER - PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_TRIP - VIOLATION_PRECEDENCE_IN_TRIP_AND_ORDER - TIME_WINDOW_VIOLATION - DURATION_VIOLATION - ORDER_WINDOWS_INTERSECTION_VIOLATION - PERFORMER_SHIFTS_INTERSECTION_VIOLATION - TRANSPORT_SHIFTS_INTERSECTION_VIOLATION - LOCATION_WINDOWS_INTERSECTION_VIOLATION - INVALID_LOCATION_DURATIONS - NO_TRANSPORT_BOXES - MAX_CAPACITY_VIOLATION - MAX_BOXES_VIOLATION - TOO_MANY_CARGOS_FOR_DROP_VIOLATION - EMPTY_CARGOES_LIST - CARGO_WORK_VIOLATION - GEODATA_TIME_WINDOW_VIOLATION - SHIFT_RESTRICTIONS_COULD_BE_MORE_PRECISE - DURATION_DOES_NOT_FIT_INTO_HARD_WINDOW - DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW - EXTRA_DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW - MAX_CALCULATION_TIME_VIOLATION - MAX_WAITING_TIME_VIOLATION - INVALID_HARDLINK - CARGO_BOX_VIOLATION - CARGO_MULTIBOX_VIOLATION - CARGO_CAPACITY_VIOLATION - CARGO_ORDER_VIOLATION - FEATURE_LIFETIME_VIOLATION - QUOTA_EXCEEDED - MAX_LOCATIONS_LIMITS_PENALTY_EXCEEDED - REMOVED_ITEMS_NOT_EMPTY example: TIME_WINDOW_VIOLATION entity_warning: description: Описание предупреждения. type: object additionalProperties: false properties: type: $ref: '#/components/schemas/entity_warning_type' info: description: Информация о предупреждении. type: string nullable: true minLength: 0 maxLength: 2048 example: entity warning entities: description: Список сущностей, которые относятся к предупреждению. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/entity_path' required: - type - entities entity_warning_list: description: Список предупреждений. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/entity_warning' custom_400_with_errors_and_warnings: description: Детализация по ошибке 400. type: object additionalProperties: false properties: tracedata: $ref: '#/components/schemas/tracedata' message: description: Сообщение об ошибке. type: string nullable: true example: bad task data schema_errors: $ref: '#/components/schemas/schema_error_list' logical_errors: $ref: '#/components/schemas/entity_error_list' warnings: $ref: '#/components/schemas/entity_warning_list' required: - tracedata general_402: description: Детализация по ошибке 402. type: object additionalProperties: false properties: tracedata: $ref: '#/components/schemas/tracedata' message: description: Сообщение об ошибке. type: string nullable: true example: Payment Required required: - tracedata general_403: description: Детализация по ошибке 403. type: object additionalProperties: false properties: tracedata: $ref: '#/components/schemas/tracedata' message: description: Сообщение об ошибке. type: string nullable: true example: Forbidden required: - tracedata general_404: description: Детализация по ошибке 404. type: object additionalProperties: false properties: resource_key: description: Идентификатор ресурса. type: string nullable: true default: null example: resource_key detail: description: Детализация по ресурсу. type: object additionalProperties: false nullable: true properties: tracedata: $ref: '#/components/schemas/tracedata' required: - tracedata general_429: description: Детализация по ошибке 429. type: object additionalProperties: false properties: tracedata: $ref: '#/components/schemas/tracedata' message: description: Сообщение об ошибке. type: string nullable: true example: Too many requests required: - tracedata general_500: description: Детализация по ошибке 500. type: object additionalProperties: false properties: tracedata: $ref: '#/components/schemas/tracedata' message: description: Сообщение об ошибке. type: string nullable: true example: Internal Server Error required: - tracedata folder_specification: description: Информация о папке. type: object additionalProperties: false properties: parent_key: $ref: '#/components/schemas/unique_key' description: Ключ папки, в которой будет создана новая папка. name: description: Название новой папки. type: string minLength: 1 maxLength: 100 example: folder_1_new comment: description: Комментарий к папке. type: string nullable: true default: null minLength: 0 maxLength: 10000 example: long long long long text required: - parent_key - name table_experiment_column_type: description: 'Название колонки в таблице с экспериментами. ' type: string enum: - EDIT_DATE - CREATION_DATE - CALCULATION_STATE - UNPLANNED_ORDER_KEYS_COUNT - COST example: CREATION_DATE experiment_specification: description: Описание эксперимента. type: object additionalProperties: false properties: name: description: Название эксперимента. type: string minLength: 1 maxLength: 100 example: Exp_1 comment: description: Комментарий к эксперименту. type: string nullable: true default: null minLength: 0 maxLength: 10000 example: long long long long text folder_key: $ref: '#/components/schemas/unique_key' description: Ключ папки типа `FOLDER`, в которой находится эксперимент. required: - name - comment - folder_key plan_configuration: description: "Название конфигурации планирования.\nКонфигурация определяет цель\ \ и качество результата. \n[Перечень доступных](#section/Opisanie/Konfiguraciya-planirovaniya)\ \ конфигураций планирования." type: string minLength: 1 maxLength: 256 default: default example: optimize_distance trip_start_time_strategy: description: "Стратегия выбора оптимального времени начала рейса:\n * `EARLIEST_FINISH`\ \ - оптимальное время начала рейса с целью пораньше завершить все заказы.\n\ \ * `LOWEST_COST` - оптимальное время рейса с целью увеличения процента попаданий\ \ в мягкие временные окна и минимизации общей стоимости рейса.\n" type: string enum: - EARLIEST_FINISH - LOWEST_COST default: EARLIEST_FINISH example: LOWEST_COST trip_expectations: description: 'Ожидания от результата расчета. Влияют на логику построения рейсов. ' type: object additionalProperties: false properties: trip_start_time_strategy: $ref: '#/components/schemas/trip_start_time_strategy' transport_type: description: "Типы транспорта:\n * `CAR` - легковой автомобиль\n * `TRUCK_1500`\ \ - грузовой автомобиль с разрешенной массой не более 1500 кг\n * `TRUCK_3000`\ \ - грузовой автомобиль с разрешенной массой не более 3000 кг\n * `TRUCK_5000`\ \ - грузовой автомобиль с разрешенной массой не более 5000 кг\n * `TRUCK_10000`\ \ - грузовой автомобиль с разрешенной массой не более 10000 кг\n * `TRUCK_20000`\ \ - грузовой автомобиль с разрешенной массой не более 20000 кг\n * `TRUCK_10000_L75_H35_W24_6000`\ \ - грузовой автомобиль с разрешенной массой не более 10000 кг, габаритами\ \ 7.5 x 3.5 x 2.4 метров, допустимой нагрузкой на ось 6000 кг\n * `TRUCK_18000_L95_H40_W26_11000`\ \ - грузовой автомобиль с разрешенной массой не более 18000 кг, габаритами\ \ 9.5 x 4.0 x 2.6 метров, допустимой нагрузкой на ось 11000 кг\n * `TRUCK_26000_L120_H40_W26_8000`\ \ - грузовой автомобиль с разрешенной массой не более 26000 кг, габаритами\ \ 12.0 x 4.0 x 2.6 метров, допустимой нагрузкой на ось 8000 кг\n * `TRUCK_GARBAGE_1`\ \ - грузовой автомобиль для перевозки мусора (тип 1) \n * `TRUCK_GARBAGE_2`\ \ - грузовой автомобиль для перевозки мусора (тип 2)\n * `TUK_TUK` - моторикша\n\ \ * `BICYCLE` - велосипед\n * `PEDESTRIAN` - пешеход \n * `PUBLIC_TRANSPORT`\ \ - общественный транспорт\n * `TELEPORT` - телепорт (мгновенное перемещение\ \ между точками)\n\nРазрешенная масса - это масса снаряженного транспорта\ \ с грузом и водителем, установленная предприятием-изготовителем в качестве\ \ максимально допустимой.\n" type: string enum: - CAR - TRUCK_1500 - TRUCK_3000 - TRUCK_5000 - TRUCK_10000 - TRUCK_20000 - TRUCK_10000_L75_H35_W24_6000 - TRUCK_18000_L95_H40_W26_11000 - TRUCK_26000_L120_H40_W26_8000 - TRUCK_GARBAGE_1 - TRUCK_GARBAGE_2 - TUK_TUK - BICYCLE - PEDESTRIAN - PUBLIC_TRANSPORT - TELEPORT default: CAR example: CAR transport_speed_multiplier: description: Коэффициент изменения скорости указанного типа транспорта. type: object additionalProperties: false properties: transport_type: $ref: '#/components/schemas/transport_type' speed: description: Множитель средней скорости транспорта. type: number format: double minimum: 0.1 maximum: 100000 example: 2.5 required: - transport_type - speed transport_speed_multiplier_list: description: Коэффициенты изменения скорости транспорта. type: array minItems: 0 maxItems: 16 default: [] uniqueItems: true items: $ref: '#/components/schemas/transport_speed_multiplier' capacity_multiplier: description: Коэффициенты изменения вместимости указанного типа транспорта. type: object additionalProperties: false properties: mass: description: Множитель изменения массы. type: number format: double minimum: 0 maximum: 1000 default: 1 example: 2 volume: description: Множитель изменения объема. type: number format: double minimum: 0 maximum: 1000 default: 1 example: 2 capacity_a: description: Множитель изменения дополнительного параметра (A). type: number format: double minimum: 0 maximum: 1000 default: 1 example: 2 capacity_b: description: Множитель изменения дополнительного параметра (B). type: number format: double minimum: 0 maximum: 1000 default: 1 example: 2 capacity_c: description: Множитель изменения дополнительного параметра (C). type: number format: double minimum: 0 maximum: 1000 default: 1 example: 2 transport_capacity_multiplier: description: Коэффициенты изменения вместимости указанного типа транспорта. type: object additionalProperties: false properties: transport_type: $ref: '#/components/schemas/transport_type' capacity: $ref: '#/components/schemas/capacity_multiplier' required: - transport_type - capacity transport_capacity_multiplier_list: description: 'Коэффициенты изменения вместимости транспорта. Изменяют параметры `capacity` у всех отсеков и `max_capacity` у транспорта. ' type: array minItems: 0 maxItems: 16 default: [] uniqueItems: true items: $ref: '#/components/schemas/transport_capacity_multiplier' trip_assumptions: description: 'Допущения при планировании. Предназначены для корректировки логики планирования с помощью массового изменения входных данных. ' type: object additionalProperties: false properties: transport_speed_multipliers: $ref: '#/components/schemas/transport_speed_multiplier_list' transport_capacity_multipliers: $ref: '#/components/schemas/transport_capacity_multiplier_list' disable_compatibility: description: 'Отключить учет совместимостей. Если указано `true` - все становится совместимо со всем. ' type: boolean default: false example: true disable_capacity: description: 'Отключить учет вместимостей. Если указано `true` - весь транспорт вмещает неограниченное количество грузов. ' type: boolean default: false example: true same_order_time_window: description: 'Использовать для расчетов одинаковое (указанное) временное окно для заказов и заявок. Временное окно берется от начала самого раннего до конца самого позднего окна из всех заказов и заявок. ' type: boolean default: false example: true expand_shift_time_window: description: 'Расширить временное окно для смен исполнителей и транспорта. Левая граница первой смены одной сущности расширяется до левой границы указанного окна, правая до правой границы или начала следующего окна на эту же сущность. Каждая следующая смена сдвигает правую границу до следующей смены или до правой границы указанного окна. ' type: boolean default: false example: true compatibility_tag: description: Тег, используемый для определения [совместимости](#section/Opisanie/Ispolzuemye-sovmestimosti). type: string minLength: 1 maxLength: 256 example: B1 compatibility_penalty: description: Штраф за нарушение совместимости. type: object additionalProperties: false properties: tag: $ref: '#/components/schemas/compatibility_tag' penalty: description: 'Штраф за нарушение совместимости по указанному свойству. ' type: number format: double minimum: 0 maximum: 1000000 example: 2000 required: - tag - penalty compatibility_penalty_list: description: 'Штрафы за нарушение совместимости. При учете нарушения совместимости транспорт-локация штраф применяется за каждую остановку и не может превышать `max_penalty_cost` исполнителя, назначенного на рейс. Штрафуется только отсутствие свойства, временные окна жизни свойства нельзя нарушать за штраф. ' type: array uniqueItems: true minItems: 0 maxItems: 1000000 default: [] items: $ref: '#/components/schemas/compatibility_penalty' trip_penalties: description: 'Штрафы при планировании - возможность нарушить часть бизнес-правил. ' type: object additionalProperties: false properties: compatibilities: $ref: '#/components/schemas/compatibility_penalty_list' max_locations_limits_penalty: description: Максимально допустимая сумма штрафов за нарушение пропускной способности локаций. type: number format: double minimum: 0 maximum: 1000000000 example: 25000 default: 0 trips_settings: description: Настройки создания рейсов. type: object additionalProperties: false properties: configuration: $ref: '#/components/schemas/plan_configuration' expectations: $ref: '#/components/schemas/trip_expectations' assumptions: $ref: '#/components/schemas/trip_assumptions' penalties: $ref: '#/components/schemas/trip_penalties' geo_provider: description: "Поставщик геоданных:\n * `VRT` - гео-данные и пробки от Veeroute,\ \ работают по всему миру.\n\nМожет быть указан специфичный поставщик для определенного\ \ региона, доступность зависит от настроек клиента.\n" type: string default: VRT minLength: 3 maxLength: 256 example: VRT geo_settings: description: 'Настройки использования гео-данных. ' type: object additionalProperties: false properties: geo_provider: $ref: '#/components/schemas/geo_provider' toll_roads: description: Использовать платные дороги. type: boolean default: true example: false ferry_crossing: description: Использовать паромные переправы. type: boolean default: true example: false traffic_jams: description: Учет пробок при планировании маршрутов. type: boolean default: true example: false flight_distance: description: 'Использовать для расчетов расстояния по прямой. Если указано `false` - расстояния рассчитываются по дорогам. При включении данного параметра не используется поставщик гео-данных и автоматически выключается учет пробок (`traffic_jams`). ' type: boolean default: false example: true timezone: description: Временная зона. type: integer format: int32 minimum: -12 maximum: 12 default: 0 example: 3 calculation_settings: description: Настройки процесса расчета. type: object additionalProperties: false properties: max_calculation_time: description: 'Максимальное время расчета. Старт отсчета начинается от времени завершения загрузки данных на сервер и начала расчета. ' type: string format: duration x-custom-format: duration pattern: ^P(?!$)((\d+Y)|(\d+\.\d+Y$))?((\d+M)|(\d+\.\d+M$))?((\d+W)|(\d+\.\d+W$))?((\d+D)|(\d+\.\d+D$))?(T(?=\d)((\d+H)|(\d+\.\d+H$))?((\d+M)|(\d+\.\d+M$))?(\d+(\.\d+)?S)?)??$ minLength: 3 maxLength: 16 default: PT20M example: PT12M35S max_waiting_time: description: 'Максимальное время нахождения расчета в очереди. Старт отсчета начинается от времени завершения загрузки данных на сервер. ' type: string format: duration x-custom-format: duration pattern: ^P(?!$)((\d+Y)|(\d+\.\d+Y$))?((\d+M)|(\d+\.\d+M$))?((\d+W)|(\d+\.\d+W$))?((\d+D)|(\d+\.\d+D$))?(T(?=\d)((\d+H)|(\d+\.\d+H$))?((\d+M)|(\d+\.\d+M$))?(\d+(\.\d+)?S)?)??$ minLength: 3 maxLength: 16 default: PT20M example: PT2H result_ttl: description: 'Время жизни результата расчета. Старт отсчета начинается от времени завершения расчета. ' type: string format: duration x-custom-format: duration pattern: ^P(?!$)((\d+Y)|(\d+\.\d+Y$))?((\d+M)|(\d+\.\d+M$))?((\d+W)|(\d+\.\d+W$))?((\d+D)|(\d+\.\d+D$))?(T(?=\d)((\d+H)|(\d+\.\d+H$))?((\d+M)|(\d+\.\d+M$))?(\d+(\.\d+)?S)?)??$ minLength: 3 maxLength: 16 default: PT20M example: PT4M30S result_timezone: $ref: '#/components/schemas/timezone' description: Временная зона, в которой возвращается результат расчета. default: 0 treat_warnings_as_errors: description: 'Относится к предупреждениям как к ошибкам и не запускать расчет если хотя бы одна сущность содержит невалидные данные. ' type: boolean default: false example: true precision: description: 'Указание точности полей типа double в порядковом номере знака после запятой. По умолчанию 3, т.е. точность 0.001. ' type: integer format: int32 minimum: 0 maximum: 6 default: 3 example: 1 extension_settings: description: Настройки использования внешний расширений для корректировки расчета. type: object additionalProperties: false properties: enable_extension: description: Использовать сторонний корректировщик расчетов. type: boolean default: false example: true extension_url: description: Адрес внешнего сервиса, реализующего Universal Extension API. type: string nullable: true default: null example: https://universal-extension.veeroute.cloud plan_settings: description: Настройки планирования. type: object additionalProperties: false properties: trips_settings: $ref: '#/components/schemas/trips_settings' geo_settings: $ref: '#/components/schemas/geo_settings' calculation_settings: $ref: '#/components/schemas/calculation_settings' extension_settings: $ref: '#/components/schemas/extension_settings' replan_strategy: description: Стратегия перепланирования. type: object additionalProperties: false properties: reorder: description: Возможность изменять существующий порядок выполнения заказов. type: boolean default: false example: true plan_new_orders: description: Возможность планировать новые заказы в существующие или новые (если включена опция `create_new_trips`) рейсы. type: boolean default: false example: true create_new_trips: description: Возможность создавать новые рейсы в дополнение к существующим. type: boolean default: false example: true replan_settings: description: Настройки перепланирования. type: object additionalProperties: false properties: replan_strategy: $ref: '#/components/schemas/replan_strategy' actualize_settings: description: 'Настройки актуализации. ' type: object additionalProperties: false properties: current_time: description: 'Указание даты и времени, которое для актуализации будет являться текущим, в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). Если не указано - берется текущее время получения запроса сервером. ' type: string format: date-time nullable: true example: '2024-11-21T09:30:00+03:00' max_delay_duration: description: 'Допустимое опоздание. Влияет на сдвиг правых границ жестких временных окон заказов и временных окон рабочих смен исполнителей и транспортов. ' type: string format: duration x-custom-format: duration pattern: ^P(?!$)((\d+Y)|(\d+\.\d+Y$))?((\d+M)|(\d+\.\d+M$))?((\d+W)|(\d+\.\d+W$))?((\d+D)|(\d+\.\d+D$))?(T(?=\d)((\d+H)|(\d+\.\d+H$))?((\d+M)|(\d+\.\d+M$))?(\d+(\.\d+)?S)?)??$ minLength: 3 maxLength: 16 default: PT3H example: PT1H30M experiment_settings: description: Настройки эксперимента. type: object additionalProperties: false properties: plan_settings: $ref: '#/components/schemas/plan_settings' replan_settings: $ref: '#/components/schemas/replan_settings' actualize_settings: $ref: '#/components/schemas/actualize_settings' required: - plan_settings - replan_settings - actualize_settings indicators: description: Список индикаторов. type: array uniqueItems: false minItems: 0 maxItems: 100 items: description: Ключ индикатора. type: string minLength: 2 maxLength: 256 example: - total_statistics_cost - total_statistics_measurements_waiting_time time_window: description: Временное окно. type: object additionalProperties: false nullable: true properties: from: description: Дата и время в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). type: string format: date-time example: '2024-11-21T09:30:00+03:00' to: description: Дата и время в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). type: string format: date-time example: '2024-11-21T19:45:00Z' required: - from - to time_duration: description: Продолжительность временного отрезка в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). type: string format: duration x-custom-format: duration pattern: ^P(?!$)((\d+Y)|(\d+\.\d+Y$))?((\d+M)|(\d+\.\d+M$))?((\d+W)|(\d+\.\d+W$))?((\d+D)|(\d+\.\d+D$))?(T(?=\d)((\d+H)|(\d+\.\d+H$))?((\d+M)|(\d+\.\d+M$))?(\d+(\.\d+)?S)?)??$ minLength: 3 maxLength: 16 default: PT0S example: PT1H45M measurements: description: 'Измерения времен и дистанций для работ на локации, отдельных рейсов и планирования в целом. ' type: object additionalProperties: false properties: time_window: $ref: '#/components/schemas/time_window' driving_time: $ref: '#/components/schemas/time_duration' waiting_time: $ref: '#/components/schemas/time_duration' working_time: $ref: '#/components/schemas/time_duration' break_time: $ref: '#/components/schemas/time_duration' rest_time: $ref: '#/components/schemas/time_duration' arriving_time: $ref: '#/components/schemas/time_duration' departure_time: $ref: '#/components/schemas/time_duration' total_time: $ref: '#/components/schemas/time_duration' distance: description: Расстояние в метрах. type: integer format: int32 minimum: 0 maximum: 4000000000 example: 5200 required: - time_window - driving_time - waiting_time - working_time - break_time - rest_time - arriving_time - departure_time - total_time - distance capacity_statistics_sum: description: Статистика по характеристикам вместимости. type: object additionalProperties: false properties: mass: description: Суммарная масса в килограммах. type: number format: double minimum: 0 maximum: 1000000000 example: 105500 volume: description: Суммарный объем в кубических метрах. type: number format: double minimum: 0 maximum: 1000000000 example: 220034 capacity_a: description: Сумма по дополнительному параметру (A) для измерения грузов в альтернативных единицах измерения. type: number format: double minimum: 0 maximum: 1000000000 example: 100000 capacity_b: description: Сумма по дополнительному параметру (B) для измерения грузов в альтернативных единицах измерения. type: number format: double minimum: 0 maximum: 1000000000 example: 200000 capacity_c: description: Сумма по дополнительному параметру (C) для измерения грузов в альтернативных единицах измерения. type: number format: double minimum: 0 maximum: 1000000000 example: 300000 required: - mass - volume - capacity_a - capacity_b - capacity_c capacity_statistics_ratio: description: Статистика по характеристикам вместимости (доля). Может быть больше единицы. type: object additionalProperties: false properties: mass: description: Загрузка по массе, в долях единицы. type: number format: double minimum: 0 maximum: 1000 example: 0.5 volume: description: Загрузка по обьему, в долях единицы. type: number format: double minimum: 0 maximum: 1000 example: 0.1 capacity_a: description: Загрузка по дополнительному параметру (A), в долях единицы. type: number format: double minimum: 0 maximum: 1000 example: 0.7 capacity_b: description: Загрузка по дополнительному параметру (B), в долях единицы. type: number format: double minimum: 0 maximum: 1000 example: 0.8 capacity_c: description: Загрузка по дополнительному параметру (C), в долях единицы. type: number format: double minimum: 0 maximum: 1000 example: 0.9 required: - mass - volume - capacity_a - capacity_b - capacity_c capacity_statistics_load: description: Статистика по характеристикам вместимости (доля). Не может быть больше единицы. type: object additionalProperties: false properties: mass: description: Загрузка по массе, в долях единицы. type: number format: double minimum: 0 maximum: 1 example: 0.5 volume: description: Загрузка по обьему, в долях единицы. type: number format: double minimum: 0 maximum: 1 example: 0.1 capacity_a: description: Загрузка по дополнительному параметру (A), в долях единицы. type: number format: double minimum: 0 maximum: 1 example: 0.7 capacity_b: description: Загрузка по дополнительному параметру (B), в долях единицы. type: number format: double minimum: 0 maximum: 1 example: 0.8 capacity_c: description: Загрузка по дополнительному параметру (C), в долях единицы. type: number format: double minimum: 0 maximum: 1 example: 0.9 required: - mass - volume - capacity_a - capacity_b - capacity_c attribute: description: Атрибут. type: object additionalProperties: false properties: key: description: Ключ атрибута. type: string minLength: 1 maxLength: 100 example: attribute_name value: description: Значение атрибута. type: string minLength: 0 maxLength: 2000 example: X51 required: - key - value attributes: description: Атрибуты. Используются для указания служебной информации. type: array minItems: 0 maxItems: 1000 uniqueItems: true default: [] items: $ref: '#/components/schemas/attribute' general_statistics: description: Суммарная статистика по одному или совокупности рейсов. type: object additionalProperties: false properties: cost: description: 'Суммарные затраты, которые считаются на базе тарифов исполнителей и транспорта. ' type: number format: double minimum: 0 maximum: 10000000000 example: 1231.1 reward: description: Суммарное вознаграждение за выполнение заказов. type: number format: double minimum: 0 maximum: 10000000000 example: 2343.3 profit: description: 'Суммарный доход - разница между суммарным вознаграждением (`reward`) и затратами (`cost`). ' type: number format: double minimum: -10000000000 maximum: 10000000000 example: 1231.1 measurements: $ref: '#/components/schemas/measurements' description: "Измерения времен и дистанций для совокупности и отдельных\ \ рейсов:\n\n * `time_window` - время начала первого рейса и время окончания\ \ последнего, если рейсов нет - возвращается время левой границы горизонта\ \ планирования, при этом поля from\\to имеют одинаковое значение\n *\ \ `driving_time` - продолжительность времени вождения\n * `waiting_time`\ \ - суммарное время ожидания по всем локациям\n * `working_time` - суммарное\ \ время выполнения работ на всех локациях, входящих в рейс\n * `break_time`\ \ - суммарное время перерывов по всем локациям\n * `rest_time` - суммарное\ \ время отдыхов по всем локациям\n * `arriving_time` - суммарное время\ \ на подъезд/парковку на локациях\n * `departure_time` - суммарное время\ \ на отъезд от локаций\n * `total_time` - суммарное время, складывается\ \ из `driving_time` + `waiting_time` + `working_time` + `break_time` +\ \ `rest_time` + `arriving_time` + `departure_time`\n * `distance` - суммарная\ \ протяжённость кругорейса/рейса/совокупности рейсов, в метрах\n" trips_count: description: Суммарное количество запланированных рейсов. type: integer format: int32 minimum: 0 maximum: 15001 example: 250 performers_count: description: Суммарное количество исполнителей, задействованных в выполнении заказов. type: integer format: int32 minimum: 0 maximum: 15001 example: 157 orders_count: description: Суммарное количество запланированных и назначенных заказов. type: integer format: int32 minimum: 0 maximum: 15001 example: 1700 plan_orders_count: description: Суммарное количество запланированных заказов. type: integer format: int32 minimum: 0 maximum: 15001 example: 1003 waitlist_orders_count: description: Суммарное количество назначенных заказов. type: integer format: int32 minimum: 0 maximum: 15001 example: 697 stops_count: description: Суммарное количество остановок (неуникальных локаций). type: integer format: int32 minimum: 0 maximum: 15001000 example: 87 locations_count: description: Суммарное количество уникальный локаций в рамках одного рейса. type: integer format: int32 minimum: 0 maximum: 15001000 example: 45 cargo_capacity_sum: $ref: '#/components/schemas/capacity_statistics_sum' description: Суммарные аддитивные меры перевезенного груза. cargo_capacity_ratio: $ref: '#/components/schemas/capacity_statistics_ratio' description: 'Отношение суммарных аддитивных мер перевезенного груза к суммарной вместимости отсеков. В долях единицы. Может быть больше единицы. ' max_transport_load: $ref: '#/components/schemas/capacity_statistics_load' description: 'Отношение максимальной загрузки отсеков к суммарной вместимости отсеков. В долях единицы. Не может быть больше единицы. ' average_speed: description: Средняя скорость - отношение общей дистанции к общему время движения, км/ч. type: number format: double minimum: 0 example: 43.1 round_trips_count: description: Количество кругорейсов внутри рейса. type: integer format: int32 minimum: 0 maximum: 15001 example: 2 average_roundtrip_distance: description: Средний пробег на кругорейс - отношение суммарного пробега к количеству кругорейсов, в метрах. type: number format: double minimum: 0 example: 23.4 average_roundtrip_time: $ref: '#/components/schemas/time_duration' description: Среднее время на кругорейс - отношение суммарного времени к количеству кругорейсов. attributes: $ref: '#/components/schemas/attributes' required: - cost - reward - profit - measurements - trips_count - performers_count - orders_count - plan_orders_count - waitlist_orders_count - stops_count - locations_count - cargo_capacity_sum - cargo_capacity_ratio - max_transport_load - average_speed - round_trips_count - average_roundtrip_distance - average_roundtrip_time task_statistics: description: 'Общая статистика по входным данным. ' type: object additionalProperties: false nullable: true properties: planning_horizon: $ref: '#/components/schemas/time_window' description: "Горизонт планирования - временное окно, где:\n * `from` -\ \ левая граница временных окон всех сущностей из входных данных\n * `to`\ \ - правая граница временных окон всех сущностей из входных данных\n" required: - planning_horizon time_window_violation_detail: description: Детальная информация о нарушении временных окон. type: object additionalProperties: false properties: demand_keys: description: Список ключей заказов. type: array uniqueItems: true minItems: 0 maxItems: 15001 items: description: Ключ заявки. type: string minLength: 1 maxLength: 1024 example: - obj1 count: description: Суммарное количество заявок. type: integer format: int32 minimum: 0 maximum: 15001 example: 1700 required: - demand_keys - count time_window_violations: description: "Статистика по нарушениям временных окон. \n" type: object additionalProperties: false properties: before: $ref: '#/components/schemas/time_window_violation_detail' description: Количество и ключи заявок, которые запланированы до наступления разрешенного временного окна. after: $ref: '#/components/schemas/time_window_violation_detail' description: Количество и ключи заявок, которые запланированы после наступления разрешенного временного окна. required: - before - after quality: description: 'Метрики качества. ' type: object additionalProperties: false nullable: true properties: locations_limits_penalty: description: Сумма штрафов за нарушение пропускной способности локаций. type: number format: double minimum: 0 maximum: 1000000000 example: 25000 soft_time_window_violations: $ref: '#/components/schemas/time_window_violations' description: Статистика по нарушению мягких временных окон. hard_time_window_violations: $ref: '#/components/schemas/time_window_violations' description: Статистика по нарушению жестких временных окон. required: - locations_limits_penalty - soft_time_window_violations - hard_time_window_violations table_data_stats: description: Статистика по данным. type: object additionalProperties: false readOnly: true properties: locations: description: Количество локаций. type: integer format: int32 minimum: 0 maximum: 15001 example: 1 orders: description: Количество заказов. type: integer format: int32 minimum: 0 maximum: 15001 example: 1 performers: description: Количество исполнителей. type: integer format: int32 minimum: 0 maximum: 15001 example: 1 transports: description: Количество транспорта. type: integer format: int32 minimum: 0 maximum: 15001 example: 1 hardlinks: description: Количество связей. type: integer format: int32 minimum: 0 maximum: 15001 example: 1 trips: description: Количество рейсов. type: integer format: int32 minimum: 0 maximum: 15001 example: 1 facts: description: Количество фактов. type: integer format: int32 minimum: 0 maximum: 15001 example: 1 external_routing: description: Использование внешних матриц времен и расстояний. type: boolean example: false required: - locations - orders - performers - transports - hardlinks - trips - facts - external_routing item_keys: description: Список ключей сущностей. type: array uniqueItems: true minItems: 0 maxItems: 15001 items: description: Ключ, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: essence_key_01 item_keys_count: description: Количество сущностей. type: integer format: int32 minimum: 0 maximum: 15001 default: 0 example: 99 unplanned_items: description: Информация о незапланированных сущностях. type: object additionalProperties: false properties: order_keys: $ref: '#/components/schemas/item_keys' description: Список ключей незапланированных заказов. order_keys_count: $ref: '#/components/schemas/item_keys_count' description: Количество незапланированных заказов. performer_keys: $ref: '#/components/schemas/item_keys' description: Список ключей исполнителей, не участвующих ни в одном рейсе. performer_keys_count: $ref: '#/components/schemas/item_keys_count' description: Количество незапланированных исполнителей. transport_keys: $ref: '#/components/schemas/item_keys' description: Список ключей транспорта, не участвующих ни в одном рейсе. transport_keys_count: $ref: '#/components/schemas/item_keys_count' description: Количество незапланированного транспорта. hardlink_keys: $ref: '#/components/schemas/item_keys' description: Список ключей назначений, не участвующих ни в одном рейсе. hardlink_keys_count: $ref: '#/components/schemas/item_keys_count' description: Количество незапланированных назначений. experiment_statistics: description: Статистика эксперимента. type: object additionalProperties: false properties: indicators: $ref: '#/components/schemas/indicators' total_statistics: $ref: '#/components/schemas/general_statistics' task_statistics: $ref: '#/components/schemas/task_statistics' quality: $ref: '#/components/schemas/quality' data_statistics: $ref: '#/components/schemas/table_data_stats' unplanned_items: $ref: '#/components/schemas/unplanned_items' required: - indicators - total_statistics - task_statistics - quality - data_statistics calculation_progress: description: 'Прогресс расчета в процентах. Прогресс отражает текущее количество завершенных шагов. ' type: integer format: int32 default: 0 minimum: 0 maximum: 100 example: 52 calculation_status: description: "Статус расчета:\n * `WAITING` - расчет ожидает запуска.\n *\ \ `IN_PROGRESS` - расчет в процессе.\n * `FINISHED_IN_TIME` - расчет корректно\ \ завершился раньше указанного максимального времени.\n * `FINISHED_OUT_OF_TIME`\ \ - расчет завершился, так как закончилось указанное время на расчет, может\ \ влиять на качество результата в худшую сторону.\n * `CANCELED` - расчет\ \ был отменен, так как была получена команда на отмену.\n * `CANCELED_BY_TIMEOUT`\ \ - расчет был отменен автоматически, так как превышено время ожидания в очереди.\n\ \ * `CANCELED_BY_QUOTA` - расчет был отменен, так как квота на этот тип расчета\ \ была превышена.\n * `FAILED` - расчет завершился с ошибкой.\n" type: string enum: - WAITING - IN_PROGRESS - FINISHED_IN_TIME - FINISHED_OUT_OF_TIME - CANCELED - CANCELED_BY_TIMEOUT - CANCELED_BY_QUOTA - FAILED example: FINISHED_IN_TIME calculation_info: description: Информация о расчете. type: object additionalProperties: false properties: status: $ref: '#/components/schemas/calculation_status' result_version: description: Версия текущего результата расчета. type: integer format: int32 minimum: 0 maximum: 1000000 example: 133 preparing_time: $ref: '#/components/schemas/time_duration' description: Время подготовки к расчету (конвертация данных), формат [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). business_validation_time: $ref: '#/components/schemas/time_duration' description: Время бизнес-проверки данных, формат [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). math_validation_time: $ref: '#/components/schemas/time_duration' description: Время математической проверки данных, формат [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). waiting_time: $ref: '#/components/schemas/time_duration' description: Время ожидания расчета в очереди, формат [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). calculation_time: $ref: '#/components/schemas/time_duration' description: Время фактического расчета, формат [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). required: - status - result_version - preparing_time - business_validation_time - math_validation_time - waiting_time - calculation_time calculation_state: description: Текущее состояние расчета. type: object additionalProperties: false nullable: true properties: tracedata: $ref: '#/components/schemas/tracedata' calculation_progress: $ref: '#/components/schemas/calculation_progress' calculation_info: $ref: '#/components/schemas/calculation_info' required: - tracedata - calculation_progress - calculation_info experiment_check: description: Результат проверки данных по эксперименту. type: object additionalProperties: false nullable: true properties: logical_errors: $ref: '#/components/schemas/entity_error_list' warnings: $ref: '#/components/schemas/entity_warning_list' basic_pristine: description: 'Флаг, показывающий производились ли изменения сущности относительно исходных данных. `true` - означает что данные исходные и не изменялись. ' type: boolean default: true example: false readOnly: true basic_sharing: description: 'Флаг совместного использования эксперимента. ' type: boolean default: false example: true readOnly: true experiment: description: Эксперимент. type: object additionalProperties: false properties: key: $ref: '#/components/schemas/unique_key' specification: $ref: '#/components/schemas/experiment_specification' settings: $ref: '#/components/schemas/experiment_settings' statistics: $ref: '#/components/schemas/experiment_statistics' progress: $ref: '#/components/schemas/calculation_progress' description: 'Прогресс расчета в процентах, отражает текущее количество завершенных шагов. Прогресс расчета эксперимента отличается от прогресса планирования, так как имеет большее количество шагов. ' calculation: $ref: '#/components/schemas/calculation_state' check: $ref: '#/components/schemas/experiment_check' pristine: $ref: '#/components/schemas/basic_pristine' sharing: $ref: '#/components/schemas/basic_sharing' edit_date: description: 'Дата и время последнего редактирования в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). ' type: string format: date-time example: '2024-11-21T19:45:00Z' creation_date: description: 'Дата и время создания в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). ' type: string format: date-time example: '2024-11-21T19:45:00Z' required: - key - specification - settings - pristine - statistics - edit_date - creation_date table_list_counters_detail: description: Детальные счетчики по списку. type: object additionalProperties: false properties: total: description: Количество. type: integer format: int32 minimum: 0 maximum: 100000 example: 1 required: - total table_list_counters: description: Счетчики по списку. type: object additionalProperties: false properties: overall: $ref: '#/components/schemas/table_list_counters_detail' description: Общая статистика, не зависит от фильтра. filter: $ref: '#/components/schemas/table_list_counters_detail' description: Статистика по отфильтрованным данным. required: - overall - filter experiment_list: description: Список экспериментов. type: object additionalProperties: false properties: experiments: description: Список экспериментов. type: array uniqueItems: false minItems: 0 maxItems: 101 items: $ref: '#/components/schemas/experiment' counters: $ref: '#/components/schemas/table_list_counters' required: - experiments - counters unique_key_list: description: Список уникальных ключей. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/unique_key' experiment_neighbors: description: Эксперимент. type: object additionalProperties: false properties: previous_experiment_key: description: Ключ предыдущего эксперимента в той же папке. type: string format: uuid nullable: true default: null example: 11111111-2222-3333-4444-555555555555 next_experiment_key: description: Ключ следующего эксперимента в той же папке. type: string format: uuid nullable: true default: null example: 11111111-2222-3333-4444-555555555555 calculation_history_element: description: Элемент истории расчета эксперимента. type: object additionalProperties: false properties: time: description: Дата и время получения статистики в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). type: string format: date-time example: '2024-11-21T09:30:00+03:00' total_statistics: $ref: '#/components/schemas/general_statistics' required: - time - total_statistics calculation_history: description: История расчета эксперимента. type: array uniqueItems: false minItems: 0 maxItems: 3000 items: $ref: '#/components/schemas/calculation_history_element' basic_process: description: "Название процесса обработки данных:\n * `PLAN` - планирование\n\ \ * `REPLAN` - перепланирование\n * `ACTUALIZE` - актуализация\n" type: string enum: - PLAN - REPLAN - ACTUALIZE default: PLAN example: ACTUALIZE file_xlsx: description: Файл с данными в формате [XLSX](https://ru.wikipedia.org/wiki/Microsoft_Excel). type: string format: byte geopoint: description: Географическая точка. type: object additionalProperties: false properties: latitude: description: Широта в градусах. type: number format: double minimum: -90 maximum: 90 example: 55.692789 longitude: description: Долгота в градусах. type: number format: double minimum: -180 maximum: 180 example: 37.554554 required: - latitude - longitude capacity_limit: description: Ограничения вместимости. type: object additionalProperties: false nullable: true properties: mass: description: Масса в килограммах. type: number format: double minimum: 0 maximum: 1000000000 example: 10 volume: description: Объем в кубических метрах. type: number format: double minimum: 0 maximum: 1000000000 example: 2 capacity_a: description: Дополнительный параметр (A) для измерения грузов и отсеков в альтернативных единицах измерения. type: number format: double minimum: 0 maximum: 1000000000 example: 1 capacity_b: description: Дополнительный параметр (B) для измерения грузов и отсеков в альтернативных единицах измерения. type: number format: double minimum: 0 maximum: 1000000000 example: 2 capacity_c: description: Дополнительный параметр (C) для измерения грузов и отсеков в альтернативных единицах измерения. type: number format: double minimum: 0 maximum: 1000000000 example: 3 required: - mass - volume - capacity_a - capacity_b - capacity_c capacity_cost: description: Стоимость за элемент вместимости. type: object additionalProperties: false nullable: true properties: mass: description: Стоимость за килограмм, в условных денежных единицах. type: number format: double minimum: 0 maximum: 1000000 example: 11 volume: description: Стоимость за кубический метр, в условных денежных единицах. type: number format: double minimum: 0 maximum: 1000000 example: 22 capacity_a: description: Стоимость за единицу дополнительного параметра (A), в условных денежных единицах. type: number format: double minimum: 0 maximum: 1000000 example: 11 capacity_b: description: Стоимость за единицу дополнительного параметра (B), в условных денежных единицах. type: number format: double minimum: 0 maximum: 1000000 example: 22 capacity_c: description: Стоимость за единицу дополнительного параметра (C), в условных денежных единицах. type: number format: double minimum: 0 maximum: 1000000 example: 31 required: - mass - volume - capacity_a - capacity_b - capacity_c location_cargos_limit: description: 'Ограничение способности локации обрабатывать грузы. ' type: object additionalProperties: false nullable: false properties: capacity: $ref: '#/components/schemas/capacity_limit' description: Значение пропускной способности. penalty: $ref: '#/components/schemas/capacity_cost' description: Штраф за нарушение `capacity`. required: - capacity - penalty location_cargos_limit_function: description: 'Функция, описывающее ограничение способности локации обрабатывать грузы и штрафы за нарушение ограничений. Штрафы суммируются независимо за каждую подходящую часть функции. ' type: array uniqueItems: false nullable: false minItems: 0 maxItems: 5 items: $ref: '#/components/schemas/location_cargos_limit' location_transports_limit: description: 'Ограничение способности локации обслуживать транспорт. ' type: object additionalProperties: false nullable: false properties: count: description: Количество транспорта, в среднем обслуживаемого за указанное временное окно. type: number format: double minimum: 0 maximum: 15001 example: 2 penalty: description: Штраф за нарушение `count`. type: number format: double minimum: 0 maximum: 1000000 example: 2000 required: - count - penalty location_transports_limit_function: description: 'Функция, описывающее ограничение способности локации обслуживать транспорт и штрафы за нарушение ограничений. Штрафы суммируются независимо за каждую подходящую часть функции. ' type: array uniqueItems: false nullable: false minItems: 0 maxItems: 5 items: $ref: '#/components/schemas/location_transports_limit' location_limit: description: 'Ограничение на пропускную способность локации в определенный временной промежуток. ' type: object additionalProperties: false properties: key: description: Ключ ограничения, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: location_limit_constraint_01 time_window: $ref: '#/components/schemas/time_window' description: Временное окно действия ограничения. min_cargos: $ref: '#/components/schemas/location_cargos_limit_function' description: 'Минимальная пропускная способность перемещения грузов, которую необходимо обеспечить. Несоблюдение параметра штрафуется. ' max_cargos: $ref: '#/components/schemas/location_cargos_limit_function' description: 'Максимальная пропускная способность перемещения грузов. Превышение параметра штрафуется. ' min_transports: $ref: '#/components/schemas/location_transports_limit_function' description: 'Минимально допустимое количество транспорта, в среднем обслуживаемого за указанное временное окно. Несоблюдение параметра штрафуется. ' max_transports: $ref: '#/components/schemas/location_transports_limit_function' description: 'Максимально допустимое количество транспорта, в среднем обслуживаемого за указанное временное окно. Превышение параметра штрафуется. ' required: - key - time_window location_limit_list: description: 'Список ограничений пропускной способности внутри рабочего окна локации. Временные окна ограничений не могут пересекаться и суммарно должны равняться `work_window`. ' type: array uniqueItems: false minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/location_limit' location_timetable_element: description: 'Локация - уникальное географическое местоположение объекта с параметрами доступности. ' type: object additionalProperties: false properties: work_window: $ref: '#/components/schemas/time_window' description: Временное окно доступности локации. limits: $ref: '#/components/schemas/location_limit_list' required: - work_window location_timetable: description: 'Расписание работы локации - временные окна доступности и ограничения на пропускную способность. Если список пустой или не указан - локация работает без ограничений. ' type: array uniqueItems: false minItems: 0 maxItems: 30 items: $ref: '#/components/schemas/location_timetable_element' compatibility_tag_list: description: 'Список тегов которые определяют свойство или требование. ' type: array minItems: 0 maxItems: 1000 uniqueItems: true default: [] items: $ref: '#/components/schemas/compatibility_tag' location_compatibilities: description: '[Совместимости](#section/Opisanie/Ispolzuemye-sovmestimosti) локации с транспортом. ' type: object additionalProperties: false nullable: true properties: transport_restrictions: description: 'Список необходимых требований к транспорту. Используется для проверки совместимости транспорта с локацией. ' $ref: '#/components/schemas/compatibility_tag_list' name: description: Название, информационное поле. type: string minLength: 0 maxLength: 128 default: '' example: X1-ABC location: description: 'Локация - уникальное географическое местоположение объекта с параметрами доступности. ' type: object additionalProperties: false properties: key: description: Ключ локации, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: location_01 geopoint: $ref: '#/components/schemas/geopoint' arrival_duration: $ref: '#/components/schemas/time_duration' description: Время на подъезд (парковку) на локации, в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). departure_duration: $ref: '#/components/schemas/time_duration' description: Время на отъезд от локации, в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). timetable: $ref: '#/components/schemas/location_timetable' compatibilities: $ref: '#/components/schemas/location_compatibilities' name: $ref: '#/components/schemas/name' attributes: $ref: '#/components/schemas/attributes' required: - key - geopoint location_list: description: Список локаций, которые используются в заказах и сменах. type: array uniqueItems: true minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/location' demand_type: description: "Тип заявки:\n * `PICKUP` - загрузка\n * `DROP` - выгрузка\n\ \ * `WORK` - работа на локации\n * `PICKUP_TO_BOX` - загрузка в кузов\n\ \ * `DROP_FROM_BOX` - выгрузка из кузова\n" nullable: false type: string enum: - PICKUP - DROP - WORK - PICKUP_TO_BOX - DROP_FROM_BOX example: WORK cargo_list: description: "Список ключей грузов, зависит от типа заявки, в которой находятся\ \ грузы:\n * `PICKUP` - список ключей\n * `DROP` - один ключ\n * `WORK`\ \ - пустой список\n * `PICKUP_TO_BOX` - один ключ\n * `DROP_FROM_BOX` -\ \ один ключ\n" type: array minItems: 0 maxItems: 1000 uniqueItems: true items: description: Ключ груза. type: string minLength: 1 maxLength: 1024 example: - cargo01 possible_event: description: 'Возможное событие. Объединяет географическую локацию и временное окно, в которое возможно выполнение заявки. ' type: object additionalProperties: false properties: key: description: Ключ события, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: event_1 location_key: description: Ключ локации, в которой возможно данное событие. type: string minLength: 1 maxLength: 1024 example: location_01 duration: $ref: '#/components/schemas/time_duration' description: Длительность выполнения события, в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). reward: description: Вознаграждение за выполнение данного события. type: number format: double minimum: 0 maximum: 2000000000 default: 1000.1 example: 199.9 hard_time_window: $ref: '#/components/schemas/time_window' description: 'Жесткое временное окно, внутри которого должно произойти событие. Длительность окна не может быть меньше длительности выполнения события `duration`. Не может быть нарушено при планировании. ' soft_time_window: $ref: '#/components/schemas/time_window' default: null description: 'Мягкое временное окно, внутри которого желательно выполнение события. Длительность окна не может быть меньше длительности выполнения события `duration`. Не должно выходить за пределы жесткого временного окна `hard_time_window`. Если не задано или равно `null` - считается равным жесткому временному окну. Может быть нарушено при планировании. ' required: - key - location_key - hard_time_window demand: description: Заявка на единичное действие с грузом (загрузка / выгрузка) или работу на локации. type: object additionalProperties: false properties: key: description: Ключ заявки, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: demand_1 demand_type: $ref: '#/components/schemas/demand_type' target_cargos: $ref: '#/components/schemas/cargo_list' precedence_in_trip: description: Приоритет внутри рейса, 0 - приоритет не учитывается. type: integer format: int32 minimum: 0 maximum: 15001 example: 1 default: 0 precedence_in_order: description: Приоритет внутри заказа, 0 - приоритет не учитывается. type: integer format: int32 minimum: 0 maximum: 15001 example: 1 default: 0 possible_events: description: Список временных окон и ключей локаций, в которых возможно выполнение заявки. type: array uniqueItems: true minItems: 1 maxItems: 25 items: $ref: '#/components/schemas/possible_event' name: $ref: '#/components/schemas/name' attributes: $ref: '#/components/schemas/attributes' required: - key - demand_type - possible_events capacity: description: Характеристики вместимости. type: object additionalProperties: false nullable: true properties: mass: description: Масса в килограммах. type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 10 volume: description: Объем в кубических метрах. type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 2 capacity_a: description: 'Дополнительный параметр (A) для измерения грузов и отсеков в альтернативных единицах измерения. Например, для учета грузов в штуках (у груза данный параметр равен единице, у отсека - максимальному количеству вмещаемых грузов). ' type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 1 capacity_b: description: 'Дополнительный параметр (B) для измерения грузов и отсеков в альтернативных единицах измерения. ' type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 2 capacity_c: description: 'Дополнительный параметр (C) для измерения грузов и отсеков в альтернативных единицах измерения. ' type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 3 cargo_rotation_type: description: "Способность груза вращаться с шагом в 90 градусов вокруг осей:\n\ \ * `ALL` - любых осей.\n * `YAW` - вокруг оси Z.\n * `PITCH` - вокруг\ \ оси Y.\n * `ROLL` - вокруг оси X.\n" type: string enum: - ALL - YAW - PITCH - ROLL default: ALL example: ALL cargo_rotation: description: "Список способностей объекта вращаться (с шагом в 90 градусов):\n\ \ * `ALL` - можно поворачивать по любой оси любое количество раз\n * `YAW`\ \ - можно повернуть один раз по вертикальной оси (вокруг своей оси)\n * `PITCH`\ \ - можно повернуть один раз по поперечной оси (поставить вертикально)\n \ \ * `ROLL` - можно повернуть один раз по продольной оси (положить на бок)\n\ \nЕсли список пустой - объект вращать запрещено.\n\nПодробнее про [размещение\ \ грузов в кузове](#section/Opisanie/Razmeshenie-gruzov-v-kuzove)." type: array minItems: 0 maxItems: 4 uniqueItems: true default: [] items: $ref: '#/components/schemas/cargo_rotation_type' example: - ALL cargo_compatibilities: description: '[Совместимости](#section/Opisanie/Ispolzuemye-sovmestimosti) груза с отсеком транспорта и другими грузами. ' type: object additionalProperties: false nullable: true properties: width: description: Ширина в метрах, используется для проверки вместимости в отсек транспорта. type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 1 height: description: Высота в метрах, используется для проверки вместимости в отсек транспорта. type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 0.3 length: description: Длина в метрах, используется для проверки вместимости в отсек транспорта. type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 2.2 rotation: $ref: '#/components/schemas/cargo_rotation' box_restrictions: description: 'Список необходимых требований к отсеку транспорта, в котором может перевозиться этот груз. ' $ref: '#/components/schemas/compatibility_tag_list' cargo_features: description: 'Список свойств груза. Используется для проверки совместимости груза с другими грузами. Несовместимые грузы не могу находится одновременно в одном отсеке транспорта. ' $ref: '#/components/schemas/compatibility_tag_list' cargo_restrictions: description: 'Список необходимых требований к грузу. Используется для проверки совместимости груза с другими грузами. Несовместимые грузы не могу находится одновременно в одном отсеке транспорта. ' $ref: '#/components/schemas/compatibility_tag_list' cargo: description: 'Груз. Вне зависимости от размеров груз может перемещаться только внутри отсека транспорта. ' type: object additionalProperties: false properties: key: description: Ключ груза, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: cargo01 capacity: $ref: '#/components/schemas/capacity' description: Аддитивные меры груза. compatibilities: $ref: '#/components/schemas/cargo_compatibilities' target_box_key: description: 'Ключ отсека транспорта, в котором уже находится груз. Применимо только для груза, который находится в заявке с типом `DROP_FROM_BOX`. Для других типов заявок ключ должен быть пустым. ' type: string minLength: 1 maxLength: 1024 nullable: true default: null example: box01 required: - key order_compatibilities: description: '[Совместимости](#section/Opisanie/Ispolzuemye-sovmestimosti) заказа с исполнителями и другими заказами. ' type: object additionalProperties: false nullable: true properties: order_features: description: 'Список свойств заказа. Используется для проверки совместимости заказа с другими заказами. Несовместимые заказы не могу находится в одном рейсе. ' $ref: '#/components/schemas/compatibility_tag_list' order_restrictions: description: 'Список требований к заказу, выполняемому в этом же рейсе. Используется для проверки совместимости заказа с другими заказами. Несовместимые заказы не могу находится в одном рейсе. ' $ref: '#/components/schemas/compatibility_tag_list' performer_restrictions: description: 'Список необходимых требований к исполнителю, который может выполнить данный заказ. ' $ref: '#/components/schemas/compatibility_tag_list' performer_blacklist: description: 'Список требований, наличие которых у исполнителя не допустимо. Данный список не должен пересекаться с `performer_restrictions`. ' $ref: '#/components/schemas/compatibility_tag_list' order: description: Заказ на перемещение груза, содержит список заявок. type: object additionalProperties: false properties: key: description: Ключ заказа, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: order01 demands: description: Список заявок. type: array uniqueItems: true minItems: 1 maxItems: 1000 items: $ref: '#/components/schemas/demand' cargos: description: 'Список грузов, на которые ссылаются заявки данного заказа. Список должен быть пустой, если все заявки заказа имеют тип `WORK`. ' type: array uniqueItems: true minItems: 0 maxItems: 1000 default: [] items: $ref: '#/components/schemas/cargo' compatibilities: $ref: '#/components/schemas/order_compatibilities' name: $ref: '#/components/schemas/name' attributes: $ref: '#/components/schemas/attributes' required: - key - demands order_list: description: Список заказов, которые необходимо выполнить. type: array uniqueItems: true minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/order' performer_tariff_constraint: description: Оплачиваемый промежуток времени - составная часть тарифа. type: object additionalProperties: false properties: stage_length: description: Длина оплачиваемого периода, в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). type: string format: duration x-custom-format: duration pattern: ^P(?!$)((\d+Y)|(\d+\.\d+Y$))?((\d+M)|(\d+\.\d+M$))?((\d+W)|(\d+\.\d+W$))?((\d+D)|(\d+\.\d+D$))?(T(?=\d)((\d+H)|(\d+\.\d+H$))?((\d+M)|(\d+\.\d+M$))?(\d+(\.\d+)?S)?)??$ minLength: 3 maxLength: 16 default: P30D example: P1DT8H30M20S cost_per_unit: description: 'Стоимость внутри оплачиваемого периода, денежная единица за секунду работы. ' type: number format: double minimum: 0.001 maximum: 10000 default: 0.001 example: 5.05 performer_tariff: description: Тариф, определяет стоимость и временные ограничения смены. type: object additionalProperties: false properties: cost_per_shift: description: Цена за использование смены, денежная единица. type: number format: double minimum: 0.001 maximum: 1000000 default: 0.001 example: 2000 constraints: description: Список составных частей тарифа. type: array minItems: 1 maxItems: 100 uniqueItems: false items: $ref: '#/components/schemas/performer_tariff_constraint' default: - stage_length: PT30D cost_per_unit: 0.001 max_penalty_cost: description: 'Максимальная сумма штрафов, которую может получить исполнитель в рамках данной смены, денежная единица. Если параметр не указан или указан как null - исполнитель может нарушать без ограничений. ' type: number format: double nullable: true default: null minimum: 0 maximum: 1000000 example: 2000 time_duration_null: description: Продолжительность временного отрезка в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). type: string format: duration x-custom-format: duration pattern: ^P(?!$)((\d+Y)|(\d+\.\d+Y$))?((\d+M)|(\d+\.\d+M$))?((\d+W)|(\d+\.\d+W$))?((\d+D)|(\d+\.\d+D$))?(T(?=\d)((\d+H)|(\d+\.\d+H$))?((\d+M)|(\d+\.\d+M$))?(\d+(\.\d+)?S)?)??$ minLength: 3 maxLength: 16 nullable: true default: null example: PT2H12M34.3S rest: description: Условие наступления и характеристики отдыха. type: object additionalProperties: false nullable: true properties: relocating_duration_sum: $ref: '#/components/schemas/time_duration' description: Суммарное время перемещения между локациями, не позже которого необходимо остановиться на длительных отдых, в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). operating_duration_sum: $ref: '#/components/schemas/time_duration_null' description: Суммарное время выполнения рейса (без учета ожидания), не позже которого необходимо остановиться на длительных отдых, в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). duration: $ref: '#/components/schemas/time_duration' description: Продолжительность перерыва, в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). required: - relocating_duration_sum - duration rest_rules: description: Правила учета отдыха. type: object additionalProperties: false nullable: true properties: consecutive: $ref: '#/components/schemas/rest' description: Условие наступления и характеристики последовательных остановок на отдых. required: - consecutive break: description: Условие наступления и характеристики перерыва. type: object additionalProperties: false nullable: true properties: relocating_duration_sum: $ref: '#/components/schemas/time_duration' description: Суммарное время перемещения между локациями, не позже которого необходимо сделать перерыв, в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). operating_duration_sum: $ref: '#/components/schemas/time_duration_null' description: Суммарное время выполнения рейса (без учета ожидания), не позже которого необходимо сделать перерыв, в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). duration: $ref: '#/components/schemas/time_duration' description: Продолжительность перерыва, в формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). required: - relocating_duration_sum - duration break_rules: description: Правила учета перерывов. type: object additionalProperties: false nullable: true properties: first: description: Условие наступления и характеристики первого перерыва. $ref: '#/components/schemas/break' consecutive: description: Условие наступления и характеристики последующих за первым перерывов. $ref: '#/components/schemas/break' relocating_duration_type: description: Тип учета времени перемещения между локациями (суммарная или непрерывная). type: string nullable: false enum: - TOTAL - CONTINUOUS default: TOTAL example: CONTINUOUS required: - first work_and_rest_rules: description: 'Режим труда и отдыха исполнителя. ' type: object additionalProperties: false nullable: true properties: rest_rules: $ref: '#/components/schemas/rest_rules' break_rules: $ref: '#/components/schemas/break_rules' reset_location_keys: description: Список ключей локаций, при нахождении в которых сбрасываются счетчики для перерывов и отдыхов. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: description: Ключ локации, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: location_01 ignore_location_keys: description: Список ключей локаций, пребывание на которых не учитывается в счетчике суммарного времени выполнения рейса. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: description: Ключ локации, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: location_01 performer_shift: description: 'Рабочая смена исполнителя, которая определяет доступность ресурса для планирования внутри его временного окна доступности. ' type: object additionalProperties: false properties: key: description: Ключ смены, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: shift01 availability_time: $ref: '#/components/schemas/time_window' description: Временное окно смены, в которое исполнитель может выполнять работу на локациях и осуществлять перемещение между локациями. working_time: $ref: '#/components/schemas/time_window' description: Рабочее временное окно, в которые исполнитель может выполнять работу на локациях, должно быть внутри временного окна смены. start_location_key: description: 'Ключ начальной локациями. Если ключ не задан - то рейс начинается на первом заказе. ' type: string minLength: 1 maxLength: 1024 nullable: true default: null example: start_location_01 finish_location_key: description: 'Ключ финальной локации. Если ключ не задан - то рейс завершается на последнем заказе. ' type: string minLength: 1 maxLength: 1024 nullable: true default: null example: finish_location_01 max_locations: description: 'Ограничение количества уникальных локаций в одном рейсе, включая локации старта и финиша. Если параметр не указан или указан как null - то количество локаций не ограничено. ' type: integer format: int32 minimum: 1 maximum: 1000 nullable: true default: null example: 15 max_stops: description: 'Ограничение количества остановок в одном рейсе, включая локации старта и финиша. Если параметр не указан или указан как null - то количество остановок не ограничено. ' type: integer format: int32 minimum: 1 maximum: 1000 nullable: true default: null example: 15 tariff: $ref: '#/components/schemas/performer_tariff' work_and_rest_rules: $ref: '#/components/schemas/work_and_rest_rules' name: $ref: '#/components/schemas/name' attributes: $ref: '#/components/schemas/attributes' required: - key - availability_time - working_time feature_lifetime: description: Время жизни тега. type: object additionalProperties: false properties: feature: $ref: '#/components/schemas/compatibility_tag' time_windows: description: 'Список временных окон, внутри которых существует указанный тег. Если на совместимость влияют несколько свойств с разными окнами - сущности будут считаться совместимыми внутри пересечения окон. Пересечений указанных окон по всем тегам для одного исполнителя не может быть больше 4-х. ' type: array minItems: 1 maxItems: 4 uniqueItems: true items: $ref: '#/components/schemas/time_window' required: - feature - time_windows feature_lifetime_list: description: 'Список ограничения на время жизни тегов. ' type: array minItems: 0 maxItems: 100 default: [] uniqueItems: true items: $ref: '#/components/schemas/feature_lifetime' performer_compatibilities: description: '[Совместимости](#section/Opisanie/Ispolzuemye-sovmestimosti) исполнителя с транспортом и заказами. ' type: object additionalProperties: false nullable: true properties: performer_features: $ref: '#/components/schemas/compatibility_tag_list' description: 'Список свойств исполнителя. Используется для проверки совместимости исполнителя с заказами. ' performer_features_lifetimes: $ref: '#/components/schemas/feature_lifetime_list' description: 'Ограничения на время жизни свойств исполнителя. Влияет на совместимость Исполнитель-Заказ. Совместимость действует во временные окна, которые являются результатом пересечения временных окон всех указанных свойств. ' transport_restrictions: $ref: '#/components/schemas/compatibility_tag_list' description: 'Список необходимых требований к транспорту. Используется для проверки совместимости транспорта с исполнителем. ' demand_extra_duration: description: 'Дополнительное время выполнения заявки определенным исполнителем. ' type: object additionalProperties: false properties: demand_key: description: Ключ заявки, для событий которой необходимо увеличить время выполнения. type: string minLength: 1 maxLength: 1024 example: demand01.1 additional_duration: description: 'Дополнительное время выполнения всех событий указанной заявки для всех смен указанного исполнителя. В формате [ISO 8601 duration](https://ru.wikipedia.org/wiki/ISO_8601#Durations). ' $ref: '#/components/schemas/time_duration' required: - demand_key - additional_duration performer_limits: description: 'Ограничение на рабочую загрузку исполнителя. ' type: object additionalProperties: false nullable: true properties: max_work_shifts: description: Ограничение количества смен исполнителя в одном планировании. type: integer format: int32 minimum: 1 maximum: 31 default: 31 example: 3 demand_extra_durations: description: 'Список заявок, на которые исполнитель потратит больше времени, чем указано в заявке. Действует для указанной пары исполнитель-заявка для всех смен исполнителя и всех вариантов исполнения заявки. ' type: array minItems: 0 maxItems: 15001 uniqueItems: true items: $ref: '#/components/schemas/demand_extra_duration' performer: description: 'Исполнитель. Выполняет заказы, используя транспорт. ' type: object additionalProperties: false properties: key: description: Ключ исполнителя, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: performer0001 shifts: description: Список рабочих смен исполнителя. type: array uniqueItems: true minItems: 1 maxItems: 15001 items: $ref: '#/components/schemas/performer_shift' own_transport_type: $ref: '#/components/schemas/transport_type' description: Тип личного транспорта, на котором исполнитель будет добираться до назначенного на него рабочего транспорта. compatibilities: $ref: '#/components/schemas/performer_compatibilities' limits: $ref: '#/components/schemas/performer_limits' name: $ref: '#/components/schemas/name' attributes: $ref: '#/components/schemas/attributes' required: - key - shifts performer_list: description: 'Список доступных исполнителей. Исполнитель выполняет заказы используя транспорт. ' type: array uniqueItems: true minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/performer' transport_tariff_constraint: description: Оплачиваемый пробег - составная часть тарифа. type: object additionalProperties: false properties: stage_length: description: Длина оплачиваемой части пути, в метрах. type: integer format: int32 minimum: 1 maximum: 100000000 default: 100000000 example: 200000 cost_per_unit: description: 'Стоимость внутри оплачиваемой части пути, денежная единица за один метр. ' type: number format: double minimum: 0.001 maximum: 10000 default: 0.001 example: 5.05 transport_tariff: description: Тариф, определяет стоимость работы транспорта и ограничения по пробегу за смену. type: object additionalProperties: false properties: cost_per_shift: description: Цена за использование смены, денежная единица. type: number format: double minimum: 0.001 maximum: 1000000 default: 0.001 example: 2000 constraints: description: Список составных частей тарифа. type: array minItems: 1 maxItems: 100 uniqueItems: false items: $ref: '#/components/schemas/transport_tariff_constraint' default: - stage_length: 100000000 cost_per_unit: 0.001 transportation_cost: $ref: '#/components/schemas/capacity_cost' description: Стоимость перемещения 1 единицы меры груза на 1 метр (по каждому полю capacity соответственно), в условных денежных единицах. default: null transport_shift: description: 'Рабочая смена транспорта. Определяет доступность транспорта для планирования. Конец смены обнуляет оставшийся в кузове груз после выполнения заявок типов `DROP_FROM_BOX` и `PICKUP_TO_BOX`. ' type: object additionalProperties: false properties: key: description: Ключ смены, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: shift01 availability_time: $ref: '#/components/schemas/time_window' description: Временное окно смены, в которое транспорт может осуществлять перемещение между локациями и использоваться исполнителем в работах на локациях. start_location_key: description: 'Ключ начальной локациями. Если ключ не задан - то путь транспорта начинается на первом заказе. ' type: string minLength: 1 maxLength: 1024 nullable: true default: null example: start_location_01 finish_location_key: description: 'Ключ финальной локации. Если ключ не задан - то путь транспорта завершается на последнем заказе. ' type: string minLength: 1 maxLength: 1024 nullable: true default: null example: finish_location_01 tariff: $ref: '#/components/schemas/transport_tariff' name: $ref: '#/components/schemas/name' attributes: $ref: '#/components/schemas/attributes' required: - key - availability_time box_compatibilities: description: '[Совместимости](#section/Opisanie/Ispolzuemye-sovmestimosti) отсека транспорта. ' type: object additionalProperties: false nullable: true properties: width: description: Ширина в метрах. type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 1 height: description: Высота в метрах. type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 3.1 length: description: Длина в метрах. type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 2.1 box_features: description: 'Список свойств отсека. Используется для проверки совместимости груза с отсеком. ' $ref: '#/components/schemas/compatibility_tag_list' box_limits: description: 'Ограничения на отсек кузова. ' type: object additionalProperties: false nullable: true properties: max_one_cargo_capacity: $ref: '#/components/schemas/capacity' description: Ограничение на максимальный размер одного груза. box: description: 'Отсек транспорта, который способен вмещать грузы. ' type: object additionalProperties: false properties: key: description: Ключ отсека, уникальный идентификатор, используется для идентификации размещения грузов по отсекам. type: string minLength: 1 maxLength: 1024 example: box01 capacity: $ref: '#/components/schemas/capacity' description: Вместимость отсека, которая ограничивает максимальную сумму по всем полям `capacity` у *всех* грузов. compatibilities: $ref: '#/components/schemas/box_compatibilities' limits: $ref: '#/components/schemas/box_limits' required: - key transport_compatibilities: description: '[Совместимости](#section/Opisanie/Ispolzuemye-sovmestimosti) транспорта с исполнителями и локациями. ' type: object additionalProperties: false nullable: true properties: transport_features: description: 'Список свойств транспорта. Используется для проверки совместимости транспорта с локациями и исполнителями. ' $ref: '#/components/schemas/compatibility_tag_list' transport_features_lifetimes: description: 'Ограничения на время жизни свойств транспорта. Влияет на совместимость Транспорт-Локация. Совместимость действует во временные окна, которые являются результатом пересечения временных окон всех указанных свойств. ' $ref: '#/components/schemas/feature_lifetime_list' performer_restrictions: description: 'Список необходимых требований к исполнителю для использования данного транспорта. ' $ref: '#/components/schemas/compatibility_tag_list' transport_limits: description: 'Ограничения на загрузку транспорт. ' type: object additionalProperties: false nullable: true properties: max_boxes: description: 'Ограничение максимального количества используемых отсеков транспорта в одном рейсе. Если параметр не указан или указан как null - то количество отсеков не ограничено. Ограничение не должно превышать количество отсеков. ' type: integer format: int32 nullable: true default: null minimum: 0 maximum: 100 example: 2 max_capacity: $ref: '#/components/schemas/capacity' description: 'Параметр дополнительно ограничивает максимально возможную загрузку транспорта в целом суммарно по всем отсекам. Если параметр не задан - загрузка ограничивается только каждым отсеком. Применимо только если у транспорта больше одного отсека. Параметр не должен быть меньше вместимости любого отсека. ' transport: description: 'Транспорт. Исполнитель использует транспорт для перемещения и перевозки грузов. ' type: object additionalProperties: false properties: key: description: Ключ транспорта, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: transport001 shifts: description: Список рабочих смен транспорта. type: array uniqueItems: true minItems: 1 maxItems: 15001 items: $ref: '#/components/schemas/transport_shift' transport_type: $ref: '#/components/schemas/transport_type' boxes: description: Список отсеков транспорта, которые могут вмещать груз. type: array minItems: 0 maxItems: 100 uniqueItems: true default: [] items: $ref: '#/components/schemas/box' compatibilities: $ref: '#/components/schemas/transport_compatibilities' limits: $ref: '#/components/schemas/transport_limits' name: $ref: '#/components/schemas/name' attributes: $ref: '#/components/schemas/attributes' required: - key - shifts transport_list: description: 'Список доступного транспорта. Транспорт используется исполнителем рейса для выполнения заказов. ' type: array uniqueItems: true minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/transport' hardlink_element_type: description: 'Тип сущности-цели, которая связана назначением с другими сущностями. Может быть заказом, сменой исполнителя, сменой транспорта. ' type: string enum: - ORDER - PERFORMER_SHIFT - TRANSPORT_SHIFT example: ORDER hardlink_element: description: Элемент группы назначения. type: object additionalProperties: false properties: type: $ref: '#/components/schemas/hardlink_element_type' entity_key: description: Ключ сущности-цели (соответственно заказа или смены). type: string minLength: 1 maxLength: 1024 example: ord0001 required: - type - entity_key hardlink: description: "Назначение, необходимое чтобы связать сущности в одну группу.\ \ Может состоять из двух сущностей или более. Пример применения:\n * назначение\ \ водителя на транспорт (связь смен исполнителя и траспорта).\n * назначение\ \ заказа на исполнителя (связь заказа со сменой исполнителя).\n * указание\ \ необходимости выполнять несколько заказов в одном рейсе (связь заказов между\ \ собой).\n" type: object additionalProperties: false properties: key: description: Ключ назначения. type: string minLength: 1 maxLength: 1024 example: group01 links: description: Список элементов группы назначения. type: array minItems: 2 maxItems: 1000 items: $ref: '#/components/schemas/hardlink_element' attributes: $ref: '#/components/schemas/attributes' required: - key - links hardlink_list: description: Список назначений. type: array uniqueItems: true minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/hardlink' assigned_performer: description: Назначенная на определенное время (`shift_time`) смена исполнителя. type: object additionalProperties: false properties: performer_key: description: Ключ исполнителя, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: performer0001 shift_key: description: Ключ смены исполнителя. type: string minLength: 1 maxLength: 1024 example: performer0001_shift01 shift_time: $ref: '#/components/schemas/time_window' required: - performer_key - shift_key - shift_time assigned_transport: description: Назначенная на определенное время (`shift_time`) смена транспорта. type: object additionalProperties: false properties: transport_key: description: Ключ транспорта, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: transport001 shift_key: description: Ключ смены транспорта. type: string minLength: 1 maxLength: 1024 example: performer01 shift_time: $ref: '#/components/schemas/time_window' required: - transport_key - shift_key - shift_time trip_state_flag: description: 'Логический [флаг состояния](#section/Opisanie/Model-reisa) в рамках рейса. ' type: string enum: - AROUND_LOCATION - INSIDE_LOCATION - INSIDE_LOCATION_WINDOW - INSIDE_WORKING_WINDOW - INSIDE_EVENT_HARD_WINDOW - INSIDE_EVENT_SOFT_WINDOW - ON_DEMAND - WAITING - RELOCATING - BREAK - REST - DEPARTURE - ARRIVAL - DURING_ROUNDTRIP example: RELOCATING cargo_action_type: description: "Типы действий с грузом:\n * `ADD` - перемещение груза в отсек\n\ \ * `REMOVE` - перемещение груза из отсека\n" type: string enum: - ADD - REMOVE example: ADD cargo_action: description: Действие с грузом. type: object additionalProperties: false properties: box_key: description: Ключ отсека. type: string minLength: 1 maxLength: 1024 example: box01 cargo_key: description: Ключ груза. type: string minLength: 1 maxLength: 1024 example: cargo01 cargo_action_type: $ref: '#/components/schemas/cargo_action_type' required: - box_key - cargo_key - cargo_action_type cargo_action_list: description: Список действий с грузами в транспорте на начало состояния. type: array uniqueItems: false minItems: 0 maxItems: 1000 items: $ref: '#/components/schemas/cargo_action' trip_state: description: Состояние рейса. type: object additionalProperties: false properties: time: description: Время начала действия в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). type: string format: date-time example: '2024-11-21T09:30:00+03:00' order_key: description: Ключ заказа, с которым производится действие. type: string nullable: true default: null minLength: 1 maxLength: 1024 example: order01 demand_key: description: Ключ заявки, с которой производится действие. type: string nullable: true default: null minLength: 1 maxLength: 1024 example: demand01.1 event_key: description: Ключ события, с которым производится действие. type: string nullable: true default: null minLength: 1 maxLength: 1024 example: event01 location_key: description: Ключ локации, в которой производится действие. type: string nullable: true default: null minLength: 1 maxLength: 1024 example: location_01 flags: description: "Список флагов, совокупность которых описывает текущее состояние.\n\ Значения флагов, отвечающих за географическое положение (одновременно\ \ может быть несколько флагов):\n * `AROUND_LOCATION` - исполнитель находится\ \ рядом с локацией - в процессе парковки или выезда с нее.\n * `INSIDE_LOCATION`\ \ - исполнитель находится на локации.\n\nЗначения флагов, отвечающих за\ \ нахождения во временных окнах (одновременно может быть несколько флагов):\n\ \ * `INSIDE_WORKING_WINDOW` - исполнитель находится внутри рабочего временного\ \ окна.\n * `INSIDE_LOCATION_WINDOW` - исполнитель находится внутри времени\ \ работы локации.\n * `INSIDE_EVENT_HARD_WINDOW` - исполнитель находится\ \ внутри жесткого временного окна.\n * `INSIDE_EVENT_SOFT_WINDOW` - исполнитель\ \ находится внутри мягкого временного окна.\n\nЗначения флагов, отвечающих\ \ за действия (одновременно может быть только один флаг):\n * `ON_DEMAND`\ \ - исполнитель начал работу над заявкой.\n * `WAITING` - исполнитель\ \ начал ожидание.\n * `RELOCATING` - исполнитель начал перемещаться к\ \ следующей остановке.\n * `BREAK` - исполнитель начал на перерыв.\n\ \ * `REST` - исполнитель начал длительный отдых.\n * `ARRIVAL` - исполнитель\ \ начал парковку.\n * `DEPARTURE` - исполнитель завершил выезд с парковки.\n\ \nЗначения флагов, отвечающих за логическое состояние:\n * `DURING_ROUNDTRIP`\ \ - исполнитель выполняет кругорейс.\n" type: array uniqueItems: true minItems: 0 maxItems: 9 items: $ref: '#/components/schemas/trip_state_flag' cargo_actions: $ref: '#/components/schemas/cargo_action_list' distance: description: Суммарное расстояние в метрах. type: integer format: int32 default: 0 minimum: 0 maximum: 4000000000 example: 5200 cost: description: Суммарные затраты, которые считаются на базе тарифов исполнителей и транспорта. type: number format: double minimum: 0 maximum: 10000000000 default: 0 example: 1231.1 reward: description: Суммарное вознаграждение за выполнение заказов. type: number format: double minimum: 0 maximum: 10000000000 default: 0 example: 2343.3 attributes: $ref: '#/components/schemas/attributes' required: - time - flags trip_state_list: description: Список состояний исполнителя. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/trip_state' trip_waitlist: description: 'Список ключей заказов, назначенных на исполнителя, но не запланированных на определенное время и не учтенных в загрузке транспорта. ' type: array minItems: 0 maxItems: 15001 uniqueItems: true items: description: Ключ заказа. type: string minLength: 1 maxLength: 1024 example: - order02 trip: description: 'Рейс - это совокупность работ, запланированных на выполнение конкретным исполнителем на конкретном транспорте, выраженных через [изменение состояний](#section/Opisanie/Model-rejsa) исполнителя. ' type: object additionalProperties: false properties: key: description: Уникальный идентификатор рейса. type: string minLength: 1 maxLength: 1024 example: trip-0000-9999 performer: $ref: '#/components/schemas/assigned_performer' transport: $ref: '#/components/schemas/assigned_transport' states: $ref: '#/components/schemas/trip_state_list' waitlist: $ref: '#/components/schemas/trip_waitlist' name: $ref: '#/components/schemas/name' attributes: $ref: '#/components/schemas/attributes' required: - key - performer - transport - states trip_list: description: 'Список рейсов. Рейс - это совокупность работ, запланированных на выполнение конкретным исполнителем на конкретном транспорте, выраженных через [изменение состояний](#section/Opisanie/Model-rejsa) исполнителя. ' type: array uniqueItems: true minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/trip' fact_time: description: Дата и время создания факта в формате [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). type: string format: date-time example: '2024-11-21T09:30:00+03:00' fact_type: description: "Возможные типы фактов:\n * `NEW_LOCATION` - исполнитель изменил\ \ свое местоположение в процессе выполнения рейса\n * `ORDER_DONE` - исполнитель\ \ закончил выполнять заказ (или заказ был отменен), связанный с заказом груз\ \ более не находится в отсеках транспорта\n * `DEMAND_START` - исполнитель\ \ начал выполнять заявку \n * `DEMAND_DONE` - исполнитель закончил выполнять\ \ заявку\n" type: string enum: - NEW_LOCATION - ORDER_DONE - DEMAND_START - DEMAND_DONE example: NEW_LOCATION fact: description: 'Факт о заказе - совершенное действие с заказом или его частью (заявкой). ' type: object additionalProperties: false properties: key: description: Ключ факта. type: string minLength: 1 maxLength: 1024 example: fact_01 time: $ref: '#/components/schemas/fact_time' type: $ref: '#/components/schemas/fact_type' trip_key: description: Ключ рейса, к которому относится факт. type: string minLength: 1 maxLength: 1024 example: trip_01 order_key: description: Ключ заказа, обязателен для фактов с типом `ORDER_DONE`. type: string minLength: 1 maxLength: 1024 nullable: true default: null example: order_01 demand_key: description: Ключ заявки, обязателен для фактов с типами `DEMAND_DONE` и `DEMAND_START`. type: string minLength: 1 maxLength: 1024 nullable: true default: null example: order_01_demand_01 performer_key: description: Ключ исполнителя, обязателен для фактов с типом `NEW_LOCATION`. type: string minLength: 1 maxLength: 1024 nullable: true default: null example: performer_01 location_key: description: Ключ локации, обязателен для фактов с типом `NEW_LOCATION`. type: string minLength: 1 maxLength: 1024 nullable: true default: null example: location_01 attributes: $ref: '#/components/schemas/attributes' required: - key - time - type - trip_key fact_list: description: 'Список фактов. Факт - это произошедшее событие, которое влияет на дальнейшие выполнение рейсов. ' type: array uniqueItems: true minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/fact' transport_load: description: Суммарная загрузка транспорта. type: object additionalProperties: false properties: count: description: Количество грузов. type: integer format: int32 minimum: 0 maximum: 15001 example: 1460 capacity: $ref: '#/components/schemas/capacity_statistics_sum' required: - count - capacity load_statistics: description: 'Статистика загрузке транспорта. ' type: object additionalProperties: false properties: total_load: $ref: '#/components/schemas/transport_load' description: Суммарная загрузка транспорта за все время рейса. max_load: $ref: '#/components/schemas/transport_load' description: Максимальная загрузка транспорта за все время рейса (по каждому измерению) - и в движении и на точках погрузки\разгрузки. max_transfer_load: $ref: '#/components/schemas/transport_load' description: Максимальная загрузка транспорта за все время рейса (по каждому измерению) в движении. required: - total_load - max_load - max_transfer_load stop_demand: description: Заявка, выполненная по конкретной остановке. type: object additionalProperties: false properties: demand_key: description: Ключ заявки. type: string minLength: 1 maxLength: 1024 example: demand_key_01 event_key: description: Ключ события. type: string minLength: 1 maxLength: 1024 example: event_key_01 demand_time_window: $ref: '#/components/schemas/time_window' description: Временное окно выполнения заявки. required: - demand_key - event_key - demand_time_window stop_statistics: description: 'Статистика по конкретной остановке в рейсе. ' type: object additionalProperties: false properties: location_key: description: Ключ локации, на которой происходит остановка. type: string minLength: 1 maxLength: 1024 example: location_01 stop_demands: description: Список заявок, выполненных на этой остановке. type: array minItems: 0 maxItems: 15001 uniqueItems: false items: $ref: '#/components/schemas/stop_demand' stop_time_window: $ref: '#/components/schemas/time_window' description: 'Временное окно остановки - от начала парковки до полного отъезда с локации. Продолжительность окна складывается из `waiting_time` + `break_time` + `rest_time` + `working_time` + `arriving_time` + `departure_time`. ' measurements: $ref: '#/components/schemas/measurements' description: "Измерения времен и дистанций для работ на остановке:\n\n \ \ * `time_window` - временное окно от начала движения к остановке до окончания\ \ отъезда с остановки\n * `driving_time` - время движения от предыдущей\ \ остановки до текущей локации\n * `waiting_time` - продолжительность\ \ ожидания исполнения работы на локации\n * `working_time` - время, затраченное\ \ на непосредственное выполнение работ на локации\n * `break_time` -\ \ продолжительность перерыва исполнителя\n * `rest_time` - продолжительность\ \ отдыха исполнителя\n * `arriving_time` - время, затраченное на подъезд/парковку\ \ на локации\n * `departure_time` - время, затраченное на отъезд от локации\n\ \ * `total_time` - суммарное время на остановку, складывается из `driving_time`\ \ + `waiting_time` + `working_time` + `break_time` + `rest_time` + `arriving_time`\ \ + `departure_time`\n * `distance` - расстояние от предыдущей остановки\ \ до текущей\n" upload: $ref: '#/components/schemas/transport_load' description: Суммарная загрузка товаров в транспорт на этой остановке. download: $ref: '#/components/schemas/transport_load' description: Суммарная выгрузка товаров из транспорта на этой остановке. max_load: $ref: '#/components/schemas/transport_load' description: Максимальная загрузка транспорта в процессе загрузки/выгрузки на остановке. arrival_load: $ref: '#/components/schemas/transport_load' description: Загрузка транспорта в момент его прибытия в данную остановку. departure_load: $ref: '#/components/schemas/transport_load' description: Загрузка транспорта в момент его отъезда от данной остановки. required: - location_key - stop_demands - stop_time_window - measurements - upload - download - max_load - arrival_load - departure_load stop_statistics_list: description: Статистика по каждой остановке в рейсе. type: array minItems: 0 maxItems: 15001 uniqueItems: false items: $ref: '#/components/schemas/stop_statistics' roundtrip_statistics: description: 'Статистика по кругорейсу. ' type: object additionalProperties: false properties: roundtrip_key: description: Ключ кругорейса. type: string minLength: 1 maxLength: 1024 example: trip_01_round_02 general_statistics: $ref: '#/components/schemas/general_statistics' description: Общая статистика по кругорейсу. required: - roundtrip_key - general_statistics roundtrip_statistics_list: description: Статистика по кругорейсам внутри рейса. type: array minItems: 0 maxItems: 15001 uniqueItems: false items: $ref: '#/components/schemas/roundtrip_statistics' trip_statistics: description: 'Статистика по конкретному рейсу. ' type: object additionalProperties: false properties: trip_key: description: Ключ рейса, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: trip01 general_statistics: $ref: '#/components/schemas/general_statistics' description: Общая статистика по рейсу. load_statistics: $ref: '#/components/schemas/load_statistics' stop_statistics: $ref: '#/components/schemas/stop_statistics_list' roundtrip_statistics: $ref: '#/components/schemas/roundtrip_statistics_list' attributes: $ref: '#/components/schemas/attributes' required: - trip_key - general_statistics - load_statistics - stop_statistics - roundtrip_statistics trip_statistics_list: description: 'Список статистик по каждому запланированному рейсу отдельно. ' type: array uniqueItems: true minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/trip_statistics' location_limit_statistics: description: 'Статистика по выполнению ограничения пропускной способности локации внутри одного временного окна. ' type: object additionalProperties: false properties: location_limit_key: description: Ключ ограничения, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: location_limit_constraint_01 cargos_statistics: $ref: '#/components/schemas/location_cargos_limit' description: Для временного отрезка - сумма мер перемещенных грузов и сумма штрафов за нарушение ограничений по перемещению грузов. transports_statistics: $ref: '#/components/schemas/location_transports_limit' description: Для временного отрезка - количество транспорта, в среднем обслуживаемого за указанное временное окно и сумма штрафов за нарушение ограничений по обслуживанию транспорта. location_limit_penalty: description: Сумма всех штрафов за нарушение пропускной способности локации внутри ограничения. type: number format: double minimum: 0 maximum: 1000000000 example: 25000 required: - location_limit_key - location_limit_penalty - cargos_statistics - transports_statistics location_statistics: description: 'Статистика по загрузке локации. ' type: object additionalProperties: false nullable: true properties: location_key: description: Ключ локации. type: string minLength: 1 maxLength: 1024 example: location_01 location_limits_penalty: description: Сумма всех штрафов за нарушение пропускной способности локации. type: number format: double minimum: 0 maximum: 1000000000 example: 25000 total_cargos_statistics: $ref: '#/components/schemas/location_cargos_limit' description: Для локации - сумма мер перемещенных грузов и сумма штрафов за нарушение ограничений по перемещению грузов. total_transports_statistics: $ref: '#/components/schemas/location_transports_limit' description: Для локации - количество транспорта, в среднем обслуживаемого за указанное временное окно и сумма штрафов за нарушение ограничений по обслуживанию транспорта. limits_statistics: description: Статистика по выполнению ограничения пропускной способности локации. type: array uniqueItems: false minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/location_limit_statistics' required: - location_key - location_limits_penalty - total_cargos_statistics - total_transports_statistics - limits_statistics location_statistics_list: description: Статистика по загрузке локаций, для которых установлены ограничения пропускной способности. type: array minItems: 0 maxItems: 15001 uniqueItems: false items: $ref: '#/components/schemas/location_statistics' plan_statistics: description: 'Общая статистика по результату расчета. ' type: object additionalProperties: false nullable: true properties: total_statistics: $ref: '#/components/schemas/general_statistics' trips_statistics: $ref: '#/components/schemas/trip_statistics_list' locations_statistics: $ref: '#/components/schemas/location_statistics_list' task_statistics: $ref: '#/components/schemas/task_statistics' quality: $ref: '#/components/schemas/quality' required: - total_statistics - trips_statistics - locations_statistics - task_statistics - quality routing_matrix_waypoint: description: 'Точка пути в матрице маршрутизации. ' type: object additionalProperties: false properties: geopoint: $ref: '#/components/schemas/geopoint' name: description: 'Название точки. Может использоваться как идентификатор для сопоставления задачи и результата расчета. ' type: string nullable: true default: null minLength: 0 maxLength: 1024 example: waypoint_1 required: - geopoint routing_matrix_line: description: Линия значений в матрице расстояний (в метрах) или продолжительностей (в секундах) маршрутов между точками. type: array minItems: 2 maxItems: 15001 uniqueItems: false items: description: 'Расстояние (в метрах) или продолжительность (в секундах) маршрута между точками. Отрицательное значение (-1) означает невозможность проезда между указанными точками. ' type: integer format: int64 minimum: -1 maximum: 10000000 example: 1500 routing_matrix: description: 'Матрица маршрутизации. Содержит времена и расстояний между точками. ' type: object additionalProperties: false properties: waypoints: description: Массив географических точек, между которыми вычислены расстояния и времена. type: array minItems: 2 maxItems: 15001 uniqueItems: false items: $ref: '#/components/schemas/routing_matrix_waypoint' distances: description: 'Длины маршрутов между точками, в метрах. Значения в массиве упорядочены в соответствии с порядком элементов в параметре `waypoints`. Каждая строчка матрицы - массив расстояний из искомой точки до каждой другой точки. ' type: array minItems: 2 maxItems: 15001 uniqueItems: false items: $ref: '#/components/schemas/routing_matrix_line' durations: description: 'Массив продолжительностей маршрутов между точками, в секундах. Значения в массиве упорядочены в соответствии с порядком элементов в параметре `waypoints`. Каждая строчка матрицы - массив времен перемещений из искомой точки до каждой другой точки. ' type: array minItems: 2 maxItems: 15001 uniqueItems: false items: $ref: '#/components/schemas/routing_matrix_line' required: - waypoints - distances - durations routing_transport_matrix: description: Матрица времен и расстояний для определенного типа транспорта. type: object additionalProperties: false properties: transport_type: $ref: '#/components/schemas/transport_type' matrix: $ref: '#/components/schemas/routing_matrix' required: - transport_type - matrix routing_transport_matrix_list: description: 'Список матриц времен и расстояний для каждого типа транспорта, которые указаны в данных. Матрица должна описывать все локации для каждого типа транспорта из данных. При указании внешней матрицы маршрутизации `external_routing` не учитываются параметры `geo_settings`. ' type: array uniqueItems: true minItems: 0 maxItems: 16 default: [] items: $ref: '#/components/schemas/routing_transport_matrix' dataset_name: description: 'Название набора данных. Техническое поле, не влияющее на расчет. ' type: string minLength: 0 maxLength: 512 default: '' example: custom_dataset_one universal_data: description: 'Формат VRt.Universal JSON. Общий список данных и настроек, объединяет все данные для планирования, перепланирования и актуализации. ' type: object additionalProperties: false properties: locations: $ref: '#/components/schemas/location_list' orders: $ref: '#/components/schemas/order_list' performers: $ref: '#/components/schemas/performer_list' transports: $ref: '#/components/schemas/transport_list' hardlinks: $ref: '#/components/schemas/hardlink_list' trips: $ref: '#/components/schemas/trip_list' facts: $ref: '#/components/schemas/fact_list' statistics: $ref: '#/components/schemas/plan_statistics' external_routing: $ref: '#/components/schemas/routing_transport_matrix_list' plan_settings: $ref: '#/components/schemas/plan_settings' replan_settings: $ref: '#/components/schemas/replan_settings' actualize_settings: $ref: '#/components/schemas/actualize_settings' dataset_name: $ref: '#/components/schemas/dataset_name' import_source: description: Сервис - источник импорта данных. type: string enum: - ACCOUNT - ADMIN example: ACCOUNT import_sample: description: Выборка загружаемых данных - входная задача или входная задача + результат расчета. type: string enum: - TASK - FULL example: TASK basic_essence_key: description: Ключ, уникальный идентификатор. type: string nullable: true default: null minLength: 1 maxLength: 1024 example: key01 basic_enabled: description: Использование сущности в расчете. type: boolean default: true example: false readOnly: false basic_time_window: description: Временное окно. type: object additionalProperties: false nullable: true properties: from: description: 'Дата и время в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). Для левой границы временного окна выбирается самое ранее из левых границ временных окон дочерних сущностей. ' type: string format: date-time nullable: true example: '2024-11-21T08:45:00+03:00' to: description: 'Дата и время в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). Для правой границы временного окна выбирается самое позднее из правых границ временных окон дочерних сущностей. ' type: string format: date-time nullable: true example: '2024-11-21T19:45:00+03:00' basic_attributes: description: Атрибуты. type: string minLength: 0 maxLength: 1000000 default: '' example: key1:value1, key2:value2 customfield_datetime: description: 'Пользовательское поле, содержащее дату и время в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). Поддерживаемый тип фильтра `DATETIME_RANGE`. ' x-filter-type: DATETIME_RANGE type: string format: date-time nullable: true default: null example: '2024-11-21T18:00:00+03:00' customfield_int: description: 'Пользовательское поле, содержащее целочисленное значение. Поддерживаемый тип фильтра `INT_RANGE`. ' x-filter-type: INT_RANGE type: integer nullable: true default: null format: int32 minimum: -10000000000 maximum: 10000000000 example: 1 customfield_float: description: 'Пользовательское поле, содержащее значение с плавающей точкой. Поддерживаемый тип фильтра `FLOAT_RANGE`. ' x-filter-type: FLOAT_RANGE type: number format: double nullable: true default: null minimum: -10000000000 maximum: 10000000000 example: 2343.3 customfield_duration: description: 'Пользовательское поле, содержащее продолжительность временного отрезка. Поддерживаемый тип фильтра `DURATION_RANGE`. ' x-filter-type: DURATION_RANGE type: string format: duration x-custom-format: duration pattern: ^P(?!$)((\d+Y)|(\d+\.\d+Y$))?((\d+M)|(\d+\.\d+M$))?((\d+W)|(\d+\.\d+W$))?((\d+D)|(\d+\.\d+D$))?(T(?=\d)((\d+H)|(\d+\.\d+H$))?((\d+M)|(\d+\.\d+M$))?(\d+(\.\d+)?S)?)??$ minLength: 3 maxLength: 16 nullable: true default: null example: PT2H12M34.3S customfield_bool: description: 'Пользовательское поле, содержащее булево значение. Поддерживаемый тип фильтра `BOOL_LIST`. ' x-filter-type: BOOL_LIST type: boolean nullable: true default: null example: true customfield_string: description: 'Пользовательское поле, содержащее строковое значение. Поддерживаемый тип фильтра `STRING_SEARCH`. ' x-filter-type: STRING_SEARCH type: string nullable: true default: null minLength: 1 maxLength: 1024 example: key01 table_customfields: description: Пользовательские табличные поля. type: object additionalProperties: false properties: datetime_1: $ref: '#/components/schemas/customfield_datetime' datetime_2: $ref: '#/components/schemas/customfield_datetime' int_1: $ref: '#/components/schemas/customfield_int' int_2: $ref: '#/components/schemas/customfield_int' float_1: $ref: '#/components/schemas/customfield_float' float_2: $ref: '#/components/schemas/customfield_float' duration_1: $ref: '#/components/schemas/customfield_duration' duration_2: $ref: '#/components/schemas/customfield_duration' bool_1: $ref: '#/components/schemas/customfield_bool' bool_2: $ref: '#/components/schemas/customfield_bool' string_1: $ref: '#/components/schemas/customfield_string' string_2: $ref: '#/components/schemas/customfield_string' table_location_fields: description: Табличные поля локации. type: object additionalProperties: false readOnly: true properties: essence_type: description: Тип сущности. type: string nullable: false enum: - LOCATION - WORK_WINDOW default: LOCATION example: LOCATION essence_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true x-default-sort-direction: ASC enabled: $ref: '#/components/schemas/basic_enabled' x-filter-type: BOOL_LIST x-filter-enabled: false pristine: $ref: '#/components/schemas/basic_pristine' x-filter-type: BOOL_LIST x-filter-enabled: false working_time: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: true name: $ref: '#/components/schemas/name' x-filter-type: STRING_SEARCH x-filter-enabled: false attributes: $ref: '#/components/schemas/basic_attributes' x-filter-type: STRING_SEARCH x-filter-enabled: false customfields: $ref: '#/components/schemas/table_customfields' linked_essence: description: Ссылка на связанную сущность. type: object additionalProperties: false properties: essence_key: $ref: '#/components/schemas/basic_essence_key' essence_type: description: Тип сущности. type: string nullable: false enum: - LOCATION - ORDER - ASSIGNED_ORDER - PERFORMER - TRANSPORT - HARDLINK - TRIP - FACT example: LOCATION required: - essence_key - essence_type linked_essence_list: description: Список связанных сущностей. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/linked_essence' web_location: description: Web location. type: object additionalProperties: false properties: location: $ref: '#/components/schemas/location' location_statistics: $ref: '#/components/schemas/location_statistics' fields: $ref: '#/components/schemas/table_location_fields' linked_essences: $ref: '#/components/schemas/linked_essence_list' required: - location table_location_column_type: description: "Название колонки в таблице с локациями:\n * `ESSENCE_KEY` - ключ\ \ сущности\n * `ENABLED` - участие в расчете\n * `PRISTINE` - флаг изменения\ \ данных\n * `WORKING_TIME` - рабочее временное окно\n * `ATTRIBUTES` -\ \ список атрибутов одной строкой\n * `CUSTOMFIELDS` - пользовательские табличные\ \ поля\n" type: string enum: - ESSENCE_KEY - ENABLED - PRISTINE - WORKING_TIME - NAME - ATTRIBUTES - CUSTOMFIELDS example: ESSENCE_KEY table_customfields_column_type: description: 'Название дополнительной колонки в таблице. Используется для фильтров с типом `CUSTOMFIELDS`. ' type: string nullable: true default: null enum: - DATETIME_1 - DATETIME_2 - INT_1 - INT_2 - FLOAT_1 - FLOAT_2 - DURATION_1 - DURATION_2 - BOOL_1 - BOOL_2 - STRING_1 - STRING_2 example: NONE table_filter_type: description: "Тип фильтра:\n * `DATETIME_RANGE` - пересечение временного отрезка\n\ \ * `INT_RANGE` - попадание числа внутрь целочисленного отрезка\n * `FLOAT_RANGE`\ \ - попадание числа внутрь float отрезка\n * `DURATION_RANGE` - вхождение\ \ длительности внутрь временного отрезка\n * `BOOL_LIST` - точное совпадение\ \ булевых значений\n * `ENUM_LIST` - точное совпадение строковых значений\ \ из заранее определенного списка\n * `STRING_LIST` - частичное или точное\ \ совпадение списка строковых значений\n * `STRING_SEARCH` - частичное или\ \ точное совпадение строки\n" type: string enum: - DATETIME_RANGE - INT_RANGE - FLOAT_RANGE - DURATION_RANGE - BOOL_LIST - ENUM_LIST - STRING_LIST - STRING_SEARCH example: STRING_SEARCH table_filter_datetime_range: description: Временное окно. type: object additionalProperties: false nullable: true properties: from: description: 'Дата и время в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). ' type: string format: date-time nullable: true example: '2024-11-21T08:45:00+03:00' to: description: 'Дата и время в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). ' type: string format: date-time nullable: true example: '2024-11-21T19:45:00+03:00' table_filter_int_range: description: Числовой диапазон. type: object additionalProperties: false nullable: true properties: from: description: Левая граница. type: integer format: int32 minimum: -10000000000 maximum: 10000000000 default: -999999999 example: 1 to: description: Правая граница. type: integer format: int32 minimum: -10000000000 maximum: 10000000000 default: 999999999 example: 100 table_filter_float_range: description: Числовой диапазон. type: object additionalProperties: false nullable: true properties: from: description: Левая граница. type: number format: double minimum: -10000000000 maximum: 10000000000 default: -9999999999.9 example: 1 to: description: Правая граница. type: number format: double minimum: -10000000000 maximum: 10000000000 default: 9999999999.9 example: 100 table_filter_duration_range: description: Диапазон длительности. type: object additionalProperties: false nullable: true properties: from: description: Левая граница. example: PT10M $ref: '#/components/schemas/time_duration' to: description: Правая граница. example: PT30M $ref: '#/components/schemas/time_duration' table_filter_bool_list: description: Фильтр по списку булевых значений. type: object additionalProperties: false nullable: true properties: elements: description: Список булевых значений. type: array uniqueItems: false minItems: 0 maxItems: 2 items: description: Логическая переменная. type: boolean default: false example: false table_filter_enum_list: description: Фильтр по списку заранее известных текстовых значений. type: object additionalProperties: false nullable: true properties: elements: description: Список строк. type: array uniqueItems: false minItems: 0 maxItems: 101 items: description: Значение. type: string nullable: true default: null minLength: 1 maxLength: 1024 example: key01 table_filter_string_list: description: Фильтр по списку строк. type: object additionalProperties: false nullable: true properties: elements: description: Список строк. type: array uniqueItems: false minItems: 0 maxItems: 101 items: description: Строка для поиска. type: string nullable: true default: null minLength: 1 maxLength: 1024 example: key01 strict: description: Точное совпадение (`false`) или поиск по вхождению подмножества (`true`). type: boolean default: false example: false table_filter_string_search: description: Строковый фильтр. type: object additionalProperties: false nullable: true properties: text: description: Строка для поиска. type: string nullable: true default: null minLength: 1 maxLength: 1024 example: key01 strict: description: Точное совпадение (`false`) или поиск по вхождению подстроки (`true`). type: boolean default: false example: false table_location_filter: description: Универсальный фильтр для колонок в таблице. type: object additionalProperties: false readOnly: true properties: type: $ref: '#/components/schemas/table_filter_type' column: $ref: '#/components/schemas/table_location_column_type' custom_column: $ref: '#/components/schemas/table_customfields_column_type' datetime_range: $ref: '#/components/schemas/table_filter_datetime_range' int_range: $ref: '#/components/schemas/table_filter_int_range' float_range: $ref: '#/components/schemas/table_filter_float_range' duration_range: $ref: '#/components/schemas/table_filter_duration_range' bool_list: $ref: '#/components/schemas/table_filter_bool_list' enum_list: $ref: '#/components/schemas/table_filter_enum_list' string_list: $ref: '#/components/schemas/table_filter_string_list' string_search: $ref: '#/components/schemas/table_filter_string_search' required: - type - column table_location_filter_list: description: Список фильтров. type: object additionalProperties: false properties: filters: description: Список фильтров. type: array uniqueItems: false minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/table_location_filter' table_location: description: Локация. type: object additionalProperties: false properties: fields: $ref: '#/components/schemas/table_location_fields' elements: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_location_fields' required: - fields - elements table_location_list: description: Список локаций. type: object additionalProperties: false properties: essences: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_location' counters: $ref: '#/components/schemas/table_list_counters' required: - essences - counters web_location_geopoint: description: Геоточка для карты. type: object additionalProperties: false properties: geopoint: $ref: '#/components/schemas/geopoint' location_key: description: Ключ локации, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: location_01 linked: description: Флаг указывающий наличие ссылок на локацию. type: boolean default: false example: true required: - geopoint - location_key - linked web_location_geopoint_list: description: Геоточки для отображения на карте. type: object additionalProperties: false properties: geopoints: description: Список точек. type: array uniqueItems: false minItems: 0 maxItems: 60002 items: $ref: '#/components/schemas/web_location_geopoint' counters: description: Счетчики по списку сущностей. $ref: '#/components/schemas/table_list_counters' geopoints_counters: description: Счетчики по списку точек. $ref: '#/components/schemas/table_list_counters_detail' required: - geopoints - counters - geopoints_counters table_string_search_field: description: 'Строковое табличное поле. Для родительской сущности указывается список значений через запятую. ' type: string nullable: true default: null minLength: 1 maxLength: 1024 example: AAA table_performer_fields: description: Табличные поля исполнителя и его смены. type: object additionalProperties: false readOnly: true properties: essence_type: description: Тип сущности. type: string nullable: false enum: - PERFORMER - PERFORMER_SHIFT default: PERFORMER example: PERFORMER essence_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true x-default-sort-direction: ASC enabled: $ref: '#/components/schemas/basic_enabled' x-filter-type: BOOL_LIST x-filter-enabled: false pristine: $ref: '#/components/schemas/basic_pristine' x-filter-type: BOOL_LIST x-filter-enabled: false working_time: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: false availability_time: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: false trip_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: false trip_name: $ref: '#/components/schemas/name' x-filter-type: STRING_SEARCH x-filter-enabled: true location_keys: $ref: '#/components/schemas/table_string_search_field' description: Список ключей локаций через запятую, которые связаны с данной сущностью. x-filter-type: STRING_SEARCH x-filter-enabled: true example: location01,location02 performer_features: $ref: '#/components/schemas/table_string_search_field' x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 transport_restrictions: $ref: '#/components/schemas/table_string_search_field' x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 trips_count: description: Количество рейсов, в которых участвует исполнитель (для смены - 0 или 1). x-filter-type: INT_RANGE x-filter-enabled: true type: integer format: int32 minimum: 0 maximum: 15001 default: 0 example: 1 name: $ref: '#/components/schemas/name' x-filter-type: STRING_SEARCH x-filter-enabled: false attributes: $ref: '#/components/schemas/basic_attributes' x-filter-type: STRING_SEARCH x-filter-enabled: false customfields: $ref: '#/components/schemas/table_customfields' web_performer: description: Web Performer. type: object additionalProperties: false properties: performer: $ref: '#/components/schemas/performer' fields: $ref: '#/components/schemas/table_performer_fields' linked_essences: $ref: '#/components/schemas/linked_essence_list' required: - performer table_performer_column_type: description: "Название колонки в таблице с исполнителями:\n * `ESSENCE_KEY`\ \ - ключ сущности\n * `ENABLED` - участие в расчете\n * `PRISTINE` - флаг\ \ изменения данных\n" type: string enum: - ESSENCE_KEY - ENABLED - PRISTINE - WORKING_TIME - AVAILABILITY_TIME - TRIP_KEY - TRIP_NAME - LOCATION_KEYS - PERFORMER_FEATURES - TRANSPORT_RESTRICTIONS - TRIPS_COUNT - NAME - ATTRIBUTES - CUSTOMFIELDS example: ESSENCE_KEY table_performer_filter: description: Универсальный фильтр для колонок в таблице. type: object additionalProperties: false readOnly: true properties: type: $ref: '#/components/schemas/table_filter_type' column: $ref: '#/components/schemas/table_performer_column_type' custom_column: $ref: '#/components/schemas/table_customfields_column_type' datetime_range: $ref: '#/components/schemas/table_filter_datetime_range' int_range: $ref: '#/components/schemas/table_filter_int_range' float_range: $ref: '#/components/schemas/table_filter_float_range' duration_range: $ref: '#/components/schemas/table_filter_duration_range' bool_list: $ref: '#/components/schemas/table_filter_bool_list' enum_list: $ref: '#/components/schemas/table_filter_enum_list' string_list: $ref: '#/components/schemas/table_filter_string_list' string_search: $ref: '#/components/schemas/table_filter_string_search' required: - type - column table_performer_filter_list: description: Список фильтров. type: object additionalProperties: false properties: filters: description: Список фильтров. type: array uniqueItems: false minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/table_performer_filter' table_performer: description: Исполнитель. type: object additionalProperties: false properties: fields: $ref: '#/components/schemas/table_performer_fields' elements: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_performer_fields' required: - fields - elements table_performer_list: description: Список. type: object additionalProperties: false properties: essences: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_performer' counters: $ref: '#/components/schemas/table_list_counters' required: - essences - counters basic_essence_key_list: description: Список ключей сущностей. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/basic_essence_key' web_performer_geopoint: description: Геоточка для карты. type: object additionalProperties: false properties: geopoint: $ref: '#/components/schemas/geopoint' performer_key: description: Ключ исполнителя. type: string minLength: 1 maxLength: 1024 example: performer_01 shift_key: description: Ключ смены, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: shift01 point_type: description: Тип точки - начальная или конечная. nullable: false type: string enum: - START - FINISH example: START trip_key: $ref: '#/components/schemas/basic_essence_key' trip_name: $ref: '#/components/schemas/name' stop_number: description: Порядковый номер остановки в рейсе. type: integer format: int32 minimum: 0 maximum: 1000 default: 0 example: 10 required: - geopoint - performer_key - shift_key - point_type web_performer_geopoint_list: description: Геоточки для отображения на карте. type: object additionalProperties: false properties: geopoints: description: Список точек. type: array uniqueItems: false minItems: 0 maxItems: 60002 items: $ref: '#/components/schemas/web_performer_geopoint' counters: description: Счетчики по списку сущностей. $ref: '#/components/schemas/table_list_counters' geopoints_counters: description: Счетчики по списку точек. $ref: '#/components/schemas/table_list_counters_detail' required: - geopoints - counters - geopoints_counters table_transport_fields: description: Табличные поля транспорта и его смены. type: object additionalProperties: false readOnly: true properties: essence_type: description: Тип сущности. type: string nullable: false enum: - TRANSPORT - TRANSPORT_SHIFT default: TRANSPORT example: TRANSPORT essence_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true x-default-sort-direction: ASC enabled: $ref: '#/components/schemas/basic_enabled' x-filter-type: BOOL_LIST x-filter-enabled: false pristine: $ref: '#/components/schemas/basic_pristine' x-filter-type: BOOL_LIST x-filter-enabled: false availability_time: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: false transport_type: $ref: '#/components/schemas/transport_type' x-filter-type: ENUM_LIST x-filter-enabled: true trip_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: false trip_name: $ref: '#/components/schemas/name' x-filter-type: STRING_SEARCH x-filter-enabled: true location_keys: $ref: '#/components/schemas/table_string_search_field' description: Список ключей локаций через запятую, которые связаны с данной сущностью. x-filter-type: STRING_SEARCH x-filter-enabled: true example: location01,location02 transport_features: $ref: '#/components/schemas/table_string_search_field' x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 performer_restrictions: $ref: '#/components/schemas/table_string_search_field' x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 trips_count: description: Количество рейсов, в которых участвует транспорт (для смены - 0 или 1). x-filter-type: INT_RANGE x-filter-enabled: true type: integer format: int32 minimum: 0 maximum: 15001 default: 0 example: 1 name: $ref: '#/components/schemas/name' x-filter-type: STRING_SEARCH x-filter-enabled: false attributes: $ref: '#/components/schemas/basic_attributes' x-filter-type: STRING_SEARCH x-filter-enabled: false customfields: $ref: '#/components/schemas/table_customfields' web_transport: description: Web Transport. type: object additionalProperties: false properties: transport: $ref: '#/components/schemas/transport' fields: $ref: '#/components/schemas/table_transport_fields' linked_essences: $ref: '#/components/schemas/linked_essence_list' required: - transport table_transport_column_type: description: "Название колонки в таблице с транспортом:\n * `ESSENCE_KEY` -\ \ ключ сущности\n * `ENABLED` - участие в расчете\n * `PRISTINE` - флаг\ \ изменения данных\n" type: string enum: - ESSENCE_KEY - ENABLED - PRISTINE - AVAILABILITY_TIME - TRANSPORT_TYPE - TRIP_KEY - TRIP_NAME - LOCATION_KEYS - TRANSPORT_FEATURES - PERFORMER_RESTRICTIONS - TRIPS_COUNT - NAME - ATTRIBUTES - CUSTOMFIELDS example: ESSENCE_KEY table_transport_filter: description: Универсальный фильтр для колонок в таблице. type: object additionalProperties: false readOnly: true properties: type: $ref: '#/components/schemas/table_filter_type' column: $ref: '#/components/schemas/table_transport_column_type' custom_column: $ref: '#/components/schemas/table_customfields_column_type' datetime_range: $ref: '#/components/schemas/table_filter_datetime_range' int_range: $ref: '#/components/schemas/table_filter_int_range' float_range: $ref: '#/components/schemas/table_filter_float_range' duration_range: $ref: '#/components/schemas/table_filter_duration_range' bool_list: $ref: '#/components/schemas/table_filter_bool_list' enum_list: $ref: '#/components/schemas/table_filter_enum_list' string_list: $ref: '#/components/schemas/table_filter_string_list' string_search: $ref: '#/components/schemas/table_filter_string_search' required: - type - column table_transport_filter_list: description: Список фильтров. type: object additionalProperties: false properties: filters: description: Список фильтров. type: array uniqueItems: false minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/table_transport_filter' table_transport: description: Транспорт. type: object additionalProperties: false properties: fields: $ref: '#/components/schemas/table_transport_fields' elements: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_transport_fields' required: - fields - elements table_transport_list: description: Список. type: object additionalProperties: false properties: essences: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_transport' counters: $ref: '#/components/schemas/table_list_counters' required: - essences - counters web_transport_geopoint: description: Географическая точка для карты. type: object additionalProperties: false properties: geopoint: $ref: '#/components/schemas/geopoint' transport_key: description: Ключ транспорта. type: string minLength: 1 maxLength: 1024 example: transport_01 shift_key: description: Ключ смены, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: shift01 point_type: description: Тип точки - начальная или конечная. nullable: false type: string enum: - START - FINISH example: START trip_key: $ref: '#/components/schemas/basic_essence_key' trip_name: $ref: '#/components/schemas/name' stop_number: description: Порядковый номер остановки в рейсе. type: integer format: int32 minimum: 0 maximum: 1000 default: 0 example: 10 required: - geopoint - transport_key - shift_key - point_type web_transport_geopoint_list: description: Географические точки для отображения на карте. type: object additionalProperties: false properties: geopoints: description: Список точек. type: array uniqueItems: false minItems: 0 maxItems: 60002 items: $ref: '#/components/schemas/web_transport_geopoint' counters: description: Счетчики по списку сущностей. $ref: '#/components/schemas/table_list_counters' geopoints_counters: description: Счетчики по списку точек. $ref: '#/components/schemas/table_list_counters_detail' required: - geopoints - counters - geopoints_counters basic_state: description: 'Состояние сущности, определяющее ее отношение к расчету. ' type: string enum: - PLANNED - ASSIGNED - UNPLANNED - ERROR default: UNPLANNED example: PLANNED table_order_fields: description: Табличные поля заказа и заявок. type: object additionalProperties: false readOnly: true properties: essence_type: description: Тип сущности. type: string nullable: false enum: - ORDER - DEMAND default: ORDER example: ORDER essence_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true x-default-sort-direction: ASC enabled: $ref: '#/components/schemas/basic_enabled' x-filter-type: BOOL_LIST x-filter-enabled: false pristine: $ref: '#/components/schemas/basic_pristine' x-filter-type: BOOL_LIST x-filter-enabled: false state: $ref: '#/components/schemas/basic_state' x-filter-type: ENUM_LIST x-filter-enabled: true type: $ref: '#/components/schemas/table_string_search_field' description: Тип заявки, для заказа указывается список типов заявок через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: true example: WORK hard_time_window: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: false soft_time_window: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: false general_drop_time_window: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: false general_pickup_time_window: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: false general_work_time_window: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: false reward: description: Суммарное вознаграждение за выполнение заказов. x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 10000000000 default: 0 example: 2343.3 mass: description: Масса в килограммах. x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 10 volume: description: Объем в кубических метрах. x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 2 capacity_a: description: 'Дополнительный параметр вместимости (A) для измерения грузов и отсеков в альтернативных единицах измерения. Например, для учета грузов в штуках (у груза данный параметр равен единице, у отсека - максимальному количеству вмещаемых грузов). ' x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 1 capacity_b: description: 'Дополнительный параметр вместимости (B) для измерения грузов и отсеков в альтернативных единицах измерения. ' x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 2 capacity_c: description: 'Дополнительный параметр вместимости (C) для измерения грузов и отсеков в альтернативных единицах измерения. ' x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 3 order_features: $ref: '#/components/schemas/table_string_search_field' description: Теги заявки, для заказа указывается список тегов заявок через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 order_restrictions: $ref: '#/components/schemas/table_string_search_field' description: Теги заявки, для заказа указывается список тегов заявок через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 performer_restrictions: $ref: '#/components/schemas/table_string_search_field' description: Теги заявки, для заказа указывается список тегов заявок через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 performer_blacklist: $ref: '#/components/schemas/table_string_search_field' description: Теги заявки, для заказа указывается список тегов заявок через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 width: description: Ширина в метрах, используется для проверки вместимости в отсек транспорта. x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 1 height: description: Высота в метрах, используется для проверки вместимости в отсек транспорта. x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 0.3 length: description: Длина в метрах, используется для проверки вместимости в отсек транспорта. x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 2.2 rotation: $ref: '#/components/schemas/table_string_search_field' description: Тип разрешенного поворота груза, для заказа указывается список типов через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: false example: ALL box_restrictions: $ref: '#/components/schemas/table_string_search_field' description: Теги заявки, для заказа указывается список тегов заявок через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 cargo_features: $ref: '#/components/schemas/table_string_search_field' description: Теги заявки, для заказа указывается список тегов заявок через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 cargo_restrictions: $ref: '#/components/schemas/table_string_search_field' description: Теги заявки, для заказа указывается список тегов заявок через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: false example: A1 demands_count: description: Количество заявок. x-filter-type: INT_RANGE x-filter-enabled: false type: integer format: int32 minimum: 0 maximum: 15001 default: 0 example: 1 trip_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true trip_name: $ref: '#/components/schemas/name' x-filter-type: STRING_SEARCH x-filter-enabled: true name: $ref: '#/components/schemas/name' x-filter-type: STRING_SEARCH x-filter-enabled: false attributes: $ref: '#/components/schemas/basic_attributes' x-filter-type: STRING_SEARCH x-filter-enabled: false customfields: $ref: '#/components/schemas/table_customfields' web_order: description: Web Order. type: object additionalProperties: false properties: order: $ref: '#/components/schemas/order' fields: $ref: '#/components/schemas/table_order_fields' linked_essences: $ref: '#/components/schemas/linked_essence_list' required: - order table_order_column_type: description: "Название колонки в таблице с заказами:\n * `ESSENCE_KEY` - ключ\ \ сущности\n * `ENABLED` - участие в расчете\n * `PRISTINE` - флаг изменения\ \ данных\n" type: string enum: - ESSENCE_KEY - ENABLED - PRISTINE - STATE - TYPE - HARD_TIME_WINDOW - SOFT_TIME_WINDOW - GENERAL_DROP_TIME_WINDOW - GENERAL_PICKUP_TIME_WINDOW - GENERAL_WORK_TIME_WINDOW - REWARD - MASS - VOLUME - CAPACITY_A - CAPACITY_B - CAPACITY_C - ORDER_FEATURES - ORDER_RESTRICTIONS - PERFORMER_RESTRICTIONS - PERFORMER_BLACKLIST - WIDTH - HEIGHT - LENGTH - ROTATION - BOX_RESTRICTIONS - CARGO_FEATURES - CARGO_RESTRICTIONS - DEMANDS_COUNT - TRIP_KEY - TRIP_NAME - NAME - ATTRIBUTES - CUSTOMFIELDS example: ESSENCE_KEY table_order_filter: description: Универсальный фильтр для колонок в таблице. type: object additionalProperties: false readOnly: true properties: type: $ref: '#/components/schemas/table_filter_type' column: $ref: '#/components/schemas/table_order_column_type' custom_column: $ref: '#/components/schemas/table_customfields_column_type' datetime_range: $ref: '#/components/schemas/table_filter_datetime_range' int_range: $ref: '#/components/schemas/table_filter_int_range' float_range: $ref: '#/components/schemas/table_filter_float_range' duration_range: $ref: '#/components/schemas/table_filter_duration_range' bool_list: $ref: '#/components/schemas/table_filter_bool_list' enum_list: $ref: '#/components/schemas/table_filter_enum_list' string_list: $ref: '#/components/schemas/table_filter_string_list' string_search: $ref: '#/components/schemas/table_filter_string_search' required: - type - column table_order_filter_list: description: Список фильтров. type: object additionalProperties: false properties: filters: description: Список фильтров. type: array uniqueItems: false minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/table_order_filter' table_order: description: Заказ. type: object additionalProperties: false properties: fields: $ref: '#/components/schemas/table_order_fields' elements: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_order_fields' required: - fields - elements table_order_list: description: Список. type: object additionalProperties: false properties: essences: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_order' counters: $ref: '#/components/schemas/table_list_counters' required: - essences - counters web_order_geopoint: description: Геоточка для карты. type: object additionalProperties: false properties: geopoint: $ref: '#/components/schemas/geopoint' order_key: description: Ключ заказа, с которым производится действие. type: string minLength: 1 maxLength: 1024 example: order01 demand_key: description: Ключ заявки, с которой производится действие. type: string minLength: 1 maxLength: 1024 example: demand01.1 event_key: description: Ключ события, с которым производится действие. type: string minLength: 1 maxLength: 1024 example: event01 demand_type: $ref: '#/components/schemas/demand_type' trip_key: $ref: '#/components/schemas/basic_essence_key' trip_name: $ref: '#/components/schemas/name' stop_number: description: Порядковый номер остановки в рейсе. type: integer format: int32 minimum: 0 maximum: 1000 default: 0 example: 10 required: - geopoint - order_key - demand_key - event_key - demand_type web_order_geopoint_list: description: Геоточки для отображения на карте. type: object additionalProperties: false properties: geopoints: description: Список точек. type: array uniqueItems: false minItems: 0 maxItems: 60002 items: $ref: '#/components/schemas/web_order_geopoint' counters: description: Счетчики по списку сущностей. $ref: '#/components/schemas/table_list_counters' geopoints_counters: description: Счетчики по списку точек. $ref: '#/components/schemas/table_list_counters_detail' required: - geopoints - counters - geopoints_counters table_hardlink_fields: description: Табличные поля связи и связанных сущностей. type: object additionalProperties: false readOnly: true properties: essence_type: description: Тип сущности. type: string nullable: false enum: - HARDLINK - ELEMENT default: HARDLINK example: HARDLINK essence_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true x-default-sort-direction: ASC enabled: $ref: '#/components/schemas/basic_enabled' x-filter-type: BOOL_LIST x-filter-enabled: false pristine: $ref: '#/components/schemas/basic_pristine' x-filter-type: BOOL_LIST x-filter-enabled: false element_type: description: 'Тип элемента. Для назначения указывается список типов через запятую. ' x-filter-type: STRING_SEARCH x-filter-enabled: true type: string nullable: true default: null minLength: 1 maxLength: 1024 example: ORDER,PERFORMER_SHIFT elements_count: description: Количество объектов в связи. x-filter-type: INT_RANGE x-filter-enabled: true type: integer format: int32 minimum: 0 maximum: 15001 default: 0 example: 1 trip_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: false trip_name: $ref: '#/components/schemas/name' x-filter-type: STRING_SEARCH x-filter-enabled: true attributes: $ref: '#/components/schemas/basic_attributes' x-filter-type: STRING_SEARCH x-filter-enabled: false customfields: $ref: '#/components/schemas/table_customfields' web_hardlink: description: Web Hardlink. type: object additionalProperties: false properties: hardlink: $ref: '#/components/schemas/hardlink' fields: $ref: '#/components/schemas/table_hardlink_fields' linked_essences: $ref: '#/components/schemas/linked_essence_list' required: - hardlink table_hardlink_column_type: description: 'Название колонки в таблице со связями. ' type: string enum: - ESSENCE_KEY - ENABLED - PRISTINE - ELEMENT_TYPE - ELEMENTS_COUNT - TRIP_KEY - TRIP_NAME - CUSTOMFIELDS example: ESSENCE_KEY table_hardlink_filter: description: Универсальный фильтр для колонок в таблице. type: object additionalProperties: false readOnly: true properties: type: $ref: '#/components/schemas/table_filter_type' column: $ref: '#/components/schemas/table_hardlink_column_type' custom_column: $ref: '#/components/schemas/table_customfields_column_type' datetime_range: $ref: '#/components/schemas/table_filter_datetime_range' int_range: $ref: '#/components/schemas/table_filter_int_range' float_range: $ref: '#/components/schemas/table_filter_float_range' duration_range: $ref: '#/components/schemas/table_filter_duration_range' bool_list: $ref: '#/components/schemas/table_filter_bool_list' enum_list: $ref: '#/components/schemas/table_filter_enum_list' string_list: $ref: '#/components/schemas/table_filter_string_list' string_search: $ref: '#/components/schemas/table_filter_string_search' required: - type - column table_hardlink_filter_list: description: Список фильтров. type: object additionalProperties: false properties: filters: description: Список фильтров. type: array uniqueItems: false minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/table_hardlink_filter' table_hardlink: description: Hardlink. type: object additionalProperties: false properties: fields: $ref: '#/components/schemas/table_hardlink_fields' elements: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_hardlink_fields' required: - fields - elements table_hardlink_list: description: Список связей. type: object additionalProperties: false properties: essences: description: Список связей. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_hardlink' counters: $ref: '#/components/schemas/table_list_counters' required: - essences - counters table_fact_fields: description: Табличные поля факта. type: object additionalProperties: false readOnly: true properties: essence_type: description: Тип сущности. type: string nullable: false enum: - FACT default: FACT example: FACT essence_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true x-default-sort-direction: ASC enabled: $ref: '#/components/schemas/basic_enabled' x-filter-type: BOOL_LIST x-filter-enabled: false pristine: $ref: '#/components/schemas/basic_pristine' x-filter-type: BOOL_LIST x-filter-enabled: false type: description: Тип факта. x-filter-type: STRING_SEARCH x-filter-enabled: false type: string nullable: true default: null minLength: 1 maxLength: 64 example: NEW_LOCATION order_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: false demand_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: false performer_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true location_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: false trip_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: false trip_name: $ref: '#/components/schemas/name' x-filter-type: STRING_SEARCH x-filter-enabled: true attributes: $ref: '#/components/schemas/basic_attributes' x-filter-type: STRING_SEARCH x-filter-enabled: false customfields: $ref: '#/components/schemas/table_customfields' web_fact: description: Web Fact. type: object additionalProperties: false properties: fact: $ref: '#/components/schemas/fact' fields: $ref: '#/components/schemas/table_fact_fields' linked_essences: $ref: '#/components/schemas/linked_essence_list' required: - fact table_fact_column_type: description: 'Название колонки в таблице с фактами. ' type: string enum: - ESSENCE_KEY - ENABLED - PRISTINE - TYPE - ORDER_KEY - DEMAND_KEY - PERFORMER_KEY - LOCATION_KEY - TRIP_KEY - TRIP_NAME - CUSTOMFIELDS example: ESSENCE_KEY table_fact_filter: description: Универсальный фильтр для колонок в таблице. type: object additionalProperties: false readOnly: true properties: type: $ref: '#/components/schemas/table_filter_type' column: $ref: '#/components/schemas/table_fact_column_type' custom_column: $ref: '#/components/schemas/table_customfields_column_type' datetime_range: $ref: '#/components/schemas/table_filter_datetime_range' int_range: $ref: '#/components/schemas/table_filter_int_range' float_range: $ref: '#/components/schemas/table_filter_float_range' duration_range: $ref: '#/components/schemas/table_filter_duration_range' bool_list: $ref: '#/components/schemas/table_filter_bool_list' enum_list: $ref: '#/components/schemas/table_filter_enum_list' string_list: $ref: '#/components/schemas/table_filter_string_list' string_search: $ref: '#/components/schemas/table_filter_string_search' required: - type - column table_fact_filter_list: description: Список фильтров. type: object additionalProperties: false properties: filters: description: Список фильтров. type: array uniqueItems: false minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/table_fact_filter' table_fact: description: Fact. type: object additionalProperties: false properties: fields: $ref: '#/components/schemas/table_fact_fields' elements: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_fact_fields' required: - fields - elements table_fact_list: description: Список фактов. type: object additionalProperties: false properties: essences: description: Список связей. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_fact' counters: $ref: '#/components/schemas/table_list_counters' required: - essences - counters file_zip: description: ZIP-архив с данными. type: string format: byte basic_path_key: description: Ключ, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: path-key-01 basic_path_key_null: description: Ключ, уникальный идентификатор. type: string nullable: true default: null minLength: 1 maxLength: 1024 example: path-key-01 settings_key_list: description: Список ключей настроек с указанием ключа текущей активной настройки. type: object additionalProperties: false readOnly: true properties: settings_keys: description: Список ключей настроек. type: array uniqueItems: true minItems: 0 maxItems: 10 items: $ref: '#/components/schemas/basic_path_key' active_key: $ref: '#/components/schemas/basic_path_key_null' description: 'Ключ текущей активной настройки. Ключ из списка `settings_keys` или null (если нет активной настройки). ' required: - settings_keys user_settings: description: Настройки пользователя. type: object additionalProperties: true example: '{"key1":"value1"}' customfield_entity_type: description: 'Тип сущности. Определяет исходный объект с атрибутами и целевую таблицу. ' type: string enum: - LOCATION - ORDER - DEMAND - PERFORMER - PERFORMER_SHIFT - TRANSPORT - TRANSPORT_SHIFT - HARDLINK - TRIP - FACT example: LOCATION translations: description: Переводы поля объекта. type: object additionalProperties: false properties: ru: $ref: '#/components/schemas/name' description: Перевод на Русский язык. example: Номер en: $ref: '#/components/schemas/name' description: Перевод на Английский язык. example: Number customfield_convert_rule: description: Правило конвертации пользовательского поля из атрибута. type: object additionalProperties: false readOnly: true properties: entity_type: $ref: '#/components/schemas/customfield_entity_type' source_attribute_key: description: Ключ атрибута, значение которого будет записано в указанное пользовательское поле. type: string minLength: 1 maxLength: 100 example: attribute_name target_customfield: $ref: '#/components/schemas/table_customfields_column_type' translations: $ref: '#/components/schemas/translations' required: - entity_type - source_attribute_key - target_customfield customfields_settings: description: Настройки пользовательских полей. type: object additionalProperties: false readOnly: true properties: rules: description: Список правил конвертации пользовательских полей. type: array uniqueItems: true minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/customfield_convert_rule' required: - rules table_trip_fields: description: Табличные поля рейса и остановок. type: object additionalProperties: false readOnly: true properties: essence_type: description: Тип сущности. type: string nullable: false enum: - TRIP - ROUNDTRIP default: TRIP example: TRIP essence_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true enabled: $ref: '#/components/schemas/basic_enabled' x-filter-type: BOOL_LIST x-filter-enabled: false pristine: $ref: '#/components/schemas/basic_pristine' x-filter-type: BOOL_LIST x-filter-enabled: false trip_name: $ref: '#/components/schemas/name' x-filter-type: STRING_SEARCH x-filter-enabled: true cost: description: 'Суммарные затраты, которые считаются на базе тарифов исполнителей и транспорта. ' x-filter-type: FLOAT_RANGE x-filter-enabled: true type: number format: double minimum: 0 maximum: 10000000000 default: 0 example: 1231.1 reward: description: Суммарное вознаграждение за выполнение заказов. x-filter-type: FLOAT_RANGE x-filter-enabled: true type: number format: double minimum: -10000000000 maximum: 10000000000 default: 0 example: 2343.3 profit: description: 'Суммарный доход - разница между суммарным вознаграждением (`reward`) и затратами (`cost`). ' x-filter-type: FLOAT_RANGE x-filter-enabled: true type: number format: double minimum: 0 maximum: 10000000000 default: 0 example: 1231.1 driving_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false waiting_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false break_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false rest_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false working_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false arriving_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false departure_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false total_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false distance: description: Расстояние в метрах. x-filter-type: INT_RANGE x-filter-enabled: false type: integer format: int32 minimum: 0 maximum: 4000000000 example: 5200 default: 0 time_window: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: true x-default-sort-direction: ASC orders_count: description: Суммарное количество запланированных и назначенных заказов. x-filter-type: INT_RANGE x-filter-enabled: false type: integer format: int32 minimum: 0 maximum: 15001 example: 1700 default: 0 plan_orders_count: description: Суммарное количество запланированных заказов. x-filter-type: INT_RANGE x-filter-enabled: false type: integer format: int32 minimum: 0 maximum: 15001 example: 1003 default: 0 waitlist_orders_count: description: Суммарное количество назначенных заказов. x-filter-type: INT_RANGE x-filter-enabled: false type: integer format: int32 minimum: 0 maximum: 15001 example: 697 default: 0 stops_count: description: Суммарное количество остановок (неуникальных локаций). x-filter-type: INT_RANGE x-filter-enabled: false type: integer format: int32 minimum: 0 maximum: 15001 example: 87 default: 0 locations_count: description: Суммарное количество уникальный локаций в рамках одного рейса. x-filter-type: INT_RANGE x-filter-enabled: false type: integer format: int32 minimum: 0 maximum: 15001 example: 45 default: 0 cargo_capacity_ratio_mass: description: Отношение суммарных аддитивных мер перевезенного груза к суммарной вместимости отсеков (по массе). x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 10 cargo_capacity_ratio_volume: description: Отношение суммарных аддитивных мер перевезенного груза к суммарной вместимости отсеков (по обьему). x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 2 cargo_capacity_ratio_capacity_a: description: Отношение суммарных аддитивных мер перевезенного груза к суммарной вместимости отсеков (по параметру A). x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 1 cargo_capacity_ratio_capacity_b: description: Отношение суммарных аддитивных мер перевезенного груза к суммарной вместимости отсеков (по параметру B). x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 2 cargo_capacity_ratio_capacity_c: description: Отношение суммарных аддитивных мер перевезенного груза к суммарной вместимости отсеков (по параметру C). x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 3 max_transport_load_mass: description: Отношение максимальной загрузки отсеков к суммарной вместимости отсеков (по массе). x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 0.1 max_transport_load_volume: description: Отношение максимальной загрузки отсеков к суммарной вместимости отсеков (по обьему). x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 0.1 max_transport_load_capacity_a: description: Отношение максимальной загрузки отсеков к суммарной вместимости отсеков (по параметру A). x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 0.1 max_transport_load_capacity_b: description: Отношение максимальной загрузки отсеков к суммарной вместимости отсеков (по параметру B). x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 0.1 max_transport_load_capacity_c: description: Отношение максимальной загрузки отсеков к суммарной вместимости отсеков (по параметру C). x-filter-type: FLOAT_RANGE x-filter-enabled: false type: number format: double minimum: 0 maximum: 1000000 default: 0 example: 0.1 attributes: $ref: '#/components/schemas/basic_attributes' x-filter-type: STRING_SEARCH x-filter-enabled: false customfields: $ref: '#/components/schemas/table_customfields' web_trip: description: Web Trip. type: object additionalProperties: false properties: trip: $ref: '#/components/schemas/trip' trip_statistics: $ref: '#/components/schemas/trip_statistics' fields: $ref: '#/components/schemas/table_trip_fields' linked_essences: $ref: '#/components/schemas/linked_essence_list' required: - trip - trip_statistics table_trip_column_type: description: "Название колонки в таблице с рейсами:\n * `ESSENCE_KEY` - ключ\ \ сущности\n * `ENABLED` - участие в расчете\n * `PRISTINE` - флаг изменения\ \ данных\n" type: string enum: - ESSENCE_KEY - ENABLED - PRISTINE - TRIP_NAME - COST - REWARD - PROFIT - DRIVING_TIME - WAITING_TIME - BREAK_TIME - REST_TIME - WORKING_TIME - ARRIVING_TIME - DEPARTURE_TIME - TOTAL_TIME - DISTANCE - TIME_WINDOW - ORDERS_COUNT - PLAN_ORDERS_COUNT - WAITLIST_ORDERS_COUNT - STOPS_COUNT - LOCATIONS_COUNT - CARGO_CAPACITY_RATIO_MASS - CARGO_CAPACITY_RATIO_VOLUME - CARGO_CAPACITY_RATIO_CAPACITY_A - CARGO_CAPACITY_RATIO_CAPACITY_B - CARGO_CAPACITY_RATIO_CAPACITY_C - MAX_TRANSPORT_LOAD_MASS - MAX_TRANSPORT_LOAD_VOLUME - MAX_TRANSPORT_LOAD_CAPACITY_A - MAX_TRANSPORT_LOAD_CAPACITY_B - MAX_TRANSPORT_LOAD_CAPACITY_C - ATTRIBUTES - CUSTOMFIELDS example: ESSENCE_KEY table_trip_filter: description: Универсальный фильтр для колонок в таблице. type: object additionalProperties: false readOnly: true properties: type: $ref: '#/components/schemas/table_filter_type' column: $ref: '#/components/schemas/table_trip_column_type' custom_column: $ref: '#/components/schemas/table_customfields_column_type' datetime_range: $ref: '#/components/schemas/table_filter_datetime_range' int_range: $ref: '#/components/schemas/table_filter_int_range' float_range: $ref: '#/components/schemas/table_filter_float_range' duration_range: $ref: '#/components/schemas/table_filter_duration_range' bool_list: $ref: '#/components/schemas/table_filter_bool_list' enum_list: $ref: '#/components/schemas/table_filter_enum_list' string_list: $ref: '#/components/schemas/table_filter_string_list' string_search: $ref: '#/components/schemas/table_filter_string_search' required: - type - column table_trip_filter_list: description: Список фильтров. type: object additionalProperties: false properties: filters: description: Список фильтров. type: array uniqueItems: false minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/table_trip_filter' table_trip: description: Рейс. type: object additionalProperties: false properties: fields: $ref: '#/components/schemas/table_trip_fields' elements: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_trip_fields' required: - fields - elements table_trip_list: description: Список. type: object additionalProperties: false properties: essences: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_trip' counters: $ref: '#/components/schemas/table_list_counters' required: - essences - counters basic_tracks_type: description: "Тип трека:\n * `LINE` - соединение точек остановок по прямой\n\ \ * `ROAD` - соединение точек остановок по дорогам\n * `CUSTOM` - пользовательские\ \ треки\n" type: string enum: - LINE - ROAD - CUSTOM default: LINE example: ROAD trackpoint: description: Географическая точка с привязкой ко времени. type: object additionalProperties: false properties: latitude: description: Широта в градусах. type: number format: double minimum: -90 maximum: 90 example: 55.692789 longitude: description: Долгота в градусах. type: number format: double minimum: -180 maximum: 180 example: 37.554554 time: description: Дата и время нахождения в указанной точке в соответствии с [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6). type: string format: date-time nullable: true default: null example: '2024-11-21T09:30:00+03:00' required: - latitude - longitude geotrack: description: Массив географических точек с привязкой ко времени, между которыми построен путь. type: array minItems: 0 maxItems: 1000000 uniqueItems: false items: $ref: '#/components/schemas/trackpoint' web_trip_track: description: Трек для отрисовки на карте. type: object additionalProperties: false properties: geotrack: $ref: '#/components/schemas/geotrack' trip_key: description: Ключ рейса, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: location_01 trip_name: $ref: '#/components/schemas/name' performer_key: description: Ключ исполнителя. type: string minLength: 1 maxLength: 1024 example: performer_01 performer_shift_key: description: Ключ смены исполнителя, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: performer_shift_01 transport_key: description: Ключ транспорта. type: string minLength: 1 maxLength: 1024 example: transport_01 transport_shift_key: description: Ключ смены транспорта, уникальный идентификатор. type: string minLength: 1 maxLength: 1024 example: transport_shift_01 required: - geotrack - trip_key - performer_key - performer_shift_key - transport_key - transport_shift_key web_trip_track_list: description: Треки для отображения на карте. type: object additionalProperties: false properties: tracks: description: Список треков. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/web_trip_track' counters: $ref: '#/components/schemas/table_list_counters' required: - tracks - counters web_trip_chart_demand: description: Заявка для отрисовки на диаграмме. type: object additionalProperties: false properties: demand_key: description: Ключ заявки. type: string minLength: 1 maxLength: 1024 example: demand_1 demand_type: $ref: '#/components/schemas/demand_type' required: - demand_key - demand_type web_trip_chart: description: Рейс для отрисовки на диаграмме. type: object additionalProperties: false properties: trip: $ref: '#/components/schemas/trip' chart_demands: description: Список дополнительной информации по запланированным заявкам. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/web_trip_chart_demand' required: - trip - chart_demands web_trip_chart_list: description: Рейсы для отображения на диаграмме. type: object additionalProperties: false properties: charts: description: Данные для диаграммы. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/web_trip_chart' counters: $ref: '#/components/schemas/table_list_counters' required: - charts - counters web_trip_track_list_custom: description: Пользовательские треки для отображения на карте. type: object additionalProperties: false properties: tracks: description: Список треков. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/web_trip_track' required: - tracks table_trip_stop_column_type: description: "Название колонки в таблице с остановками рейса:\n * `ESSENCE_KEY`\ \ - ключ сущности\n" type: string enum: - ESSENCE_KEY - DRIVING_TIME - WAITING_TIME - BREAK_TIME - REST_TIME - WORKING_TIME - ARRIVING_TIME - DEPARTURE_TIME - TOTAL_TIME - DISTANCE - TIME_WINDOW - TRIP_KEY - ORDER_KEY - DEMAND_TYPE example: ESSENCE_KEY table_trip_stop_filter: description: Универсальный фильтр для колонок в таблице. type: object additionalProperties: false readOnly: true properties: type: $ref: '#/components/schemas/table_filter_type' column: $ref: '#/components/schemas/table_trip_stop_column_type' custom_column: $ref: '#/components/schemas/table_customfields_column_type' datetime_range: $ref: '#/components/schemas/table_filter_datetime_range' int_range: $ref: '#/components/schemas/table_filter_int_range' float_range: $ref: '#/components/schemas/table_filter_float_range' duration_range: $ref: '#/components/schemas/table_filter_duration_range' bool_list: $ref: '#/components/schemas/table_filter_bool_list' enum_list: $ref: '#/components/schemas/table_filter_enum_list' string_list: $ref: '#/components/schemas/table_filter_string_list' string_search: $ref: '#/components/schemas/table_filter_string_search' required: - type - column table_trip_stop_filter_list: description: Список фильтров. type: object additionalProperties: false properties: filters: description: Список фильтров. type: array uniqueItems: false minItems: 0 maxItems: 100 items: $ref: '#/components/schemas/table_trip_stop_filter' table_trip_stop_fields: description: Табличные поля остановок одного рейса. type: object additionalProperties: false readOnly: true properties: essence_type: description: Тип сущности. type: string nullable: false enum: - TRIP_STOP - DEMAND default: TRIP_STOP example: TRIP_STOP essence_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true x-default-sort-direction: ASC driving_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: true waiting_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false break_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false rest_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false working_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false arriving_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false departure_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false total_time: $ref: '#/components/schemas/time_duration' x-filter-type: DURATION_RANGE x-filter-enabled: false distance: description: Расстояние в метрах. x-filter-type: INT_RANGE x-filter-enabled: true type: integer format: int32 minimum: 0 maximum: 4000000000 example: 5200 default: 0 time_window: $ref: '#/components/schemas/basic_time_window' x-filter-type: DATETIME_RANGE x-filter-enabled: false trip_key: $ref: '#/components/schemas/basic_essence_key' x-filter-type: STRING_SEARCH x-filter-enabled: true order_key: $ref: '#/components/schemas/table_string_search_field' description: Ключ заказа, для остановки указывается список ключей заказов через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: true example: order01 demand_type: $ref: '#/components/schemas/table_string_search_field' description: Тип заявки, для остановки указывается список типов заявок через запятую. x-filter-type: STRING_SEARCH x-filter-enabled: true example: WORK table_trip_stop: description: Остановка рейса. type: object additionalProperties: false properties: fields: $ref: '#/components/schemas/table_trip_stop_fields' elements: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_trip_stop_fields' required: - fields - elements table_trip_stop_list: description: Список. type: object additionalProperties: false properties: essences: description: Список. type: array uniqueItems: false minItems: 0 maxItems: 15001 items: $ref: '#/components/schemas/table_trip_stop' counters: $ref: '#/components/schemas/table_list_counters' required: - essences - counters check_result: description: Результат проверки работоспособности сервиса. type: object additionalProperties: false properties: health: description: "Текущий показатель здоровья сервиса. \n * `0.0` означает\ \ неготовность сервиса выполнять задачи. \n * `1.0` означает полную\ \ готовность сервиса для выполнения задач.\n" type: number format: double minimum: 0 maximum: 1 example: 0.999 required: - health version_result: description: Версия сервиса. type: object additionalProperties: false properties: major: description: "Версия продукта.\nВ рамках одной версии гарантируется совместимость\ \ общих структур данных между сервисами. \nИзменение версии указывает\ \ на несовместимые с предыдущими версиями продукта (и, соответственно,\ \ всех сервисов) изменения.\n" type: integer format: int32 minimum: 1 maximum: 100 example: 7 minor: description: 'Минорная версия сервиса. Изменение версии указывает на новую функциональность. Обновление имеет обратную совместимость в рамках мажорной версии сервиса. ' type: integer format: int32 minimum: 0 maximum: 111 example: 15 build: description: "Версия сборки. \nИзменяется при обновлении документации\ \ и исправлении ошибок.\n" type: string minLength: 1 maxLength: 64 example: 3754RC required: - major - minor - build file_html: description: Файл с данными в формате [HTML](https://html.spec.whatwg.org/). type: string file_json: description: Файл с данными в формате [JSON](https://www.json.org/). type: string examples: DataExplorer: summary: Пример проводника value: key: 5fffc47c-8239-42c4-8a3f-95d0ed235173 type: ROOT name: ROOT counters: folders_count: 1 experiments_count: 3 elements: - key: 2bff0b86-2ddc-445c-9d98-f75ca2eec091 type: FOLDER name: MyFolder counters: folders_count: 0 experiments_count: 3 elements: [] Result400: summary: Ошибка в данных value: tracedata: process_code: 11111111-2222-3333-4444-555555555555 request_code: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee username: example_username company: example_company env: edge7 pod: aaaaaaaa-2222-cccc-4444-eeeeeeeeeeee service: UNIVERSAL operation: run_plan_calculation time: '2024-11-28T17:13:27.945583194Z' message: logical schema_errors: [] logical_errors: - type: UNIQUE_IDS_VIOLATION entities: - entity_key: order_1 entity_type: ORDER warnings: [] ExperimentList: summary: Список экспериментов value: experiments: - key: 65fb88e5-128d-4f3f-9a50-4c2754adcbed specification: name: Exp_1 comment: long long long long text folder_key: 65fb88e5-128d-4f3f-9a50-4c2754adcbed settings: plan_settings: trips_settings: configuration: optimize_distance assumptions: disable_compatibility: true disable_capacity: true same_order_time_window: true expand_shift_time_window: true penalties: compatibilities: [] geo_settings: geo_provider: VRT toll_roads: false ferry_crossing: false traffic_jams: false flight_distance: true calculation_settings: max_calculation_time: PT4M30S max_waiting_time: PT2H result_ttl: PT4M30S result_timezone: 3 treat_warnings_as_errors: true precision: 3 actualize_settings: current_time: '2024-11-07T22:30:00Z' max_delay_duration: PT1H replan_settings: replan_strategy: reorder: true plan_new_orders: true create_new_trips: true statistics: indicators: - total_statistics_cost - total_statistics_measurements_waiting_time total_statistics: profit: 1 cost: 2256.053 reward: 3000.3 measurements: driving_time: PT57M5S waiting_time: PT0S break_time: PT0S rest_time: PT0S working_time: PT35M arriving_time: PT0S departure_time: PT0S total_time: PT1H32M5S distance: 38666 time_window: from: '2024-11-08T04:50:28Z' to: '2024-11-08T05:47:33Z' performers_count: 1 trips_count: 1 orders_count: 3 plan_orders_count: 3 waitlist_orders_count: 0 stops_count: 1 locations_count: 1 average_speed: 45.2 round_trips_count: 1 cargo_capacity_sum: mass: 1.9 volume: 2 capacity_a: 3 capacity_b: 1 capacity_c: 1 cargo_capacity_ratio: mass: 0.01 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 max_transport_load: mass: 0.006 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 quality: locations_limits_penalty: 0 soft_time_window_violations: before: demand_keys: [] count: 0 after: demand_keys: [] count: 0 hard_time_window_violations: before: demand_keys: [] count: 0 after: demand_keys: [] count: 0 data_statistics: locations: 1 orders: 1 performers: 1 transports: 1 hardlinks: 1 trips: 1 facts: 1 external_routing: false task_statistics: planning_horizon: from: '2024-11-21T09:30:00+03:00' to: '2024-11-21T19:45:00Z' unplanned_items: order_keys: - key_01 order_keys_count: 99 performer_keys: - key_01 performer_keys_count: 99 transport_keys: - key_01 transport_keys_count: 99 hardlink_keys: - key_01 hardlink_keys_count: 99 progress: 52 calculation: calculation_progress: 52 calculation_info: status: FINISHED_IN_TIME result_version: 133 preparing_time: PT2H business_validation_time: PT2H math_validation_time: PT2H waiting_time: PT2H calculation_time: PT2H tracedata: process_code: 11111111-2222-3333-4444-555555555555 request_code: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee username: example_username company: example_company env: edge7 pod: aaaaaaaa-2222-cccc-4444-eeeeeeeeeeee service: STUDIO operation: run_plan_calculation time: '2024-11-21T09:30:00+03:00' check: logical_errors: [] warnings: [] pristine: false sharing: true edit_date: '2024-11-21T19:45:00Z' creation_date: '2024-11-21T19:45:00Z' counters: overall: total: 1 filter: total: 1 Experiment: summary: Пример эксперимента value: key: da4e62b0-86cb-4423-b187-5c1a633ca703 specification: name: new experiment 1000 comment: '' folder_key: 2bff0b86-2ddc-445c-9d98-f75ca2eec091 settings: plan_settings: trips_settings: configuration: default assumptions: disable_compatibility: false disable_capacity: false same_order_time_window: false expand_shift_time_window: false penalties: compatibilities: [] geo_settings: geo_provider: VRT toll_roads: true ferry_crossing: true traffic_jams: true flight_distance: false calculation_settings: max_calculation_time: PT20M max_waiting_time: PT30M result_ttl: PT20M result_timezone: 0 treat_warnings_as_errors: false precision: 2 actualize_settings: current_time: '2024-11-07T22:30:00Z' max_delay_duration: PT1H replan_settings: replan_strategy: reorder: true plan_new_orders: true create_new_trips: true statistics: indicators: - data_statistics_hardlinks - data_statistics_locations - data_statistics_orders - data_statistics_performers - data_statistics_transports - data_statistics_trips - data_statistics_facts - total_statistics_max_transport_load_capacity_a - total_statistics_max_transport_load_capacity_b - total_statistics_max_transport_load_capacity_c - total_statistics_max_transport_load_mass - total_statistics_max_transport_load_volume - total_statistics_cargo_capacity_ratio_capacity_a - total_statistics_cargo_capacity_ratio_capacity_b - total_statistics_cargo_capacity_ratio_capacity_c - total_statistics_cargo_capacity_ratio_mass - total_statistics_cargo_capacity_ratio_volume - total_statistics_cost - total_statistics_measurements_arriving_time - total_statistics_measurements_departure_time - total_statistics_measurements_distance - total_statistics_measurements_driving_time - total_statistics_measurements_time_window_from - total_statistics_measurements_time_window_to - total_statistics_measurements_total_time - total_statistics_measurements_waiting_time - total_statistics_measurements_working_time - total_statistics_orders_count - total_statistics_performers_count - total_statistics_plan_orders_count - quality_hard_time_window_violations_after_count - quality_hard_time_window_violations_before_count - quality_soft_time_window_violations_after_count - quality_soft_time_window_violations_before_count - total_statistics_reward - total_statistics_waitlist_orders_count total_statistics: profit: 1 cost: 0 reward: 0 measurements: driving_time: P0D waiting_time: P0D break_time: P0D rest_time: PT0S working_time: P0D arriving_time: P0D departure_time: P0D total_time: P0D distance: 0 time_window: from: '2024-11-15T13:56:07.697Z' to: '2024-11-15T13:56:07.697Z' performers_count: 0 trips_count: 0 orders_count: 0 plan_orders_count: 0 waitlist_orders_count: 0 stops_count: 1 locations_count: 1 average_speed: 45.2 round_trips_count: 1 cargo_capacity_sum: mass: 1.9 volume: 2 capacity_a: 3 capacity_b: 1 capacity_c: 1 cargo_capacity_ratio: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 max_transport_load: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 quality: locations_limits_penalty: 0 soft_time_window_violations: before: demand_keys: [] count: 0 after: demand_keys: [] count: 0 hard_time_window_violations: before: demand_keys: [] count: 0 after: demand_keys: [] count: 0 task_statistics: planning_horizon: from: '2024-11-21T09:30:00+03:00' to: '2024-11-21T19:45:00Z' data_statistics: locations: 958 orders: 1000 performers: 1000 transports: 1000 hardlinks: 0 trips: 0 facts: 1 external_routing: false pristine: true edit_date: '2024-11-15T13:56:07.728Z' creation_date: '2024-11-15T13:56:07.728Z' progress: 0 sharing: false ExperimentSettings: summary: Настройки эксперимента value: plan_settings: trips_settings: configuration: default assumptions: disable_compatibility: false disable_capacity: false same_order_time_window: false expand_shift_time_window: false penalties: compatibilities: [] geo_settings: geo_provider: VRT toll_roads: true ferry_crossing: true traffic_jams: true flight_distance: false calculation_settings: max_calculation_time: PT20M max_waiting_time: PT30M result_ttl: PT20M result_timezone: 0 treat_warnings_as_errors: false precision: 2 actualize_settings: current_time: '2024-11-07T22:30:00Z' max_delay_duration: PT1H replan_settings: replan_strategy: reorder: true plan_new_orders: true create_new_trips: true UniversalData: summary: Данные эксперимента value: locations: - key: location_client_1 geopoint: latitude: 55.713699 longitude: 37.621839 - key: location_client_2 geopoint: latitude: 55.630721 longitude: 37.62493 - key: location_client_3 geopoint: latitude: 55.722801 longitude: 37.674984 - key: location_storage geopoint: latitude: 55.685853 longitude: 37.43181 orders: - key: order_1 demands: - key: demand_1_drop demand_type: DROP target_cargos: - order_1_cargos possible_events: - key: demand_1_drop_event location_key: location_client_1 duration: PT10M hard_time_window: from: '2024-11-08T05:00:00+00:00' to: '2024-11-08T07:00:00+00:00' - key: demand_1_pickup demand_type: PICKUP target_cargos: - order_1_cargos possible_events: - key: demand_1_pickup_event location_key: location_storage duration: P0D reward: 0 hard_time_window: from: '2024-11-07T21:00:00+00:00' to: '2024-11-08T20:59:59+00:00' cargos: - key: order_1_cargos capacity: mass: 1 - key: order_2 demands: - key: demand_2_drop demand_type: DROP target_cargos: - order_2_cargos possible_events: - key: demand_2_drop_event location_key: location_client_2 duration: PT10M hard_time_window: from: '2024-11-08T05:00:00+00:00' to: '2024-11-08T07:00:00+00:00' - key: demand_2_pickup demand_type: PICKUP target_cargos: - order_2_cargos possible_events: - key: demand_2_pickup_event location_key: location_storage duration: P0D reward: 0 hard_time_window: from: '2024-11-07T21:00:00+00:00' to: '2024-11-08T20:59:59+00:00' cargos: - key: order_2_cargos capacity: mass: 1 - key: order_3 demands: - key: demand_3_work demand_type: WORK possible_events: - key: demand_3_work_event location_key: location_client_3 duration: PT15M hard_time_window: from: '2024-11-08T05:00:00+00:00' to: '2024-11-08T07:00:00+00:00' performers: - key: performer_1 shifts: - key: performer_1_shift availability_time: from: '2024-11-07T21:00:00+00:00' to: '2024-11-08T20:59:59+00:00' working_time: from: '2024-11-07T21:00:00+00:00' to: '2024-11-08T20:59:59+00:00' tariff: cost_per_shift: 1000 constraints: - stage_length: PT10H cost_per_unit: 1 transports: - key: transport_1 shifts: - key: transport_1_shift availability_time: from: '2024-11-07T21:00:00+00:00' to: '2024-11-08T20:59:59+00:00' tariff: cost_per_shift: 1000 constraints: - stage_length: 1000000 cost_per_unit: 0.01 transport_type: CAR boxes: - key: box_1 capacity: mass: 300 trips: - key: performer_1_shift performer: performer_key: performer_1 shift_key: performer_1_shift shift_time: from: '2024-11-08T04:38:34Z' to: '2024-11-08T05:53:39Z' transport: transport_key: transport_1 shift_key: transport_1_shift shift_time: from: '2024-11-08T04:38:34Z' to: '2024-11-08T05:53:39Z' states: - time: '2024-11-08T04:38:34Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_storage cargo_actions: [] attributes: [] - time: '2024-11-08T04:38:34Z' flags: - ON_DEMAND - INSIDE_EVENT_HARD_WINDOW - INSIDE_LOCATION_WINDOW - INSIDE_LOCATION - AROUND_LOCATION order_key: order_2 demand_key: demand_2_pickup event_key: demand_2_pickup_event location_key: location_storage cargo_actions: [] attributes: [] - time: '2024-11-08T04:38:34Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_storage cargo_actions: - box_key: box_1 cargo_key: order_2_cargos cargo_action_type: ADD attributes: [] - time: '2024-11-08T04:38:34Z' flags: - ON_DEMAND - INSIDE_EVENT_HARD_WINDOW - INSIDE_LOCATION_WINDOW - INSIDE_LOCATION - AROUND_LOCATION order_key: order_1 demand_key: demand_1_pickup event_key: demand_1_pickup_event location_key: location_storage cargo_actions: - box_key: box_1 cargo_key: order_2_cargos cargo_action_type: ADD attributes: [] - time: '2024-11-08T04:38:34Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_storage cargo_actions: - box_key: box_1 cargo_key: order_1_cargos cargo_action_type: ADD - box_key: box_1 cargo_key: order_2_cargos cargo_action_type: ADD attributes: [] - time: '2024-11-08T04:38:34Z' flags: - RELOCATING cargo_actions: - box_key: box_1 cargo_key: order_1_cargos cargo_action_type: ADD - box_key: box_1 cargo_key: order_2_cargos cargo_action_type: ADD attributes: [] - time: '2024-11-08T05:00:00Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_2 cargo_actions: - box_key: box_1 cargo_key: order_1_cargos cargo_action_type: ADD - box_key: box_1 cargo_key: order_2_cargos cargo_action_type: ADD attributes: [] - time: '2024-11-08T05:00:00Z' flags: - ON_DEMAND - INSIDE_EVENT_HARD_WINDOW - INSIDE_LOCATION_WINDOW - INSIDE_LOCATION - AROUND_LOCATION order_key: order_2 demand_key: demand_2_drop event_key: demand_2_drop_event location_key: location_client_2 cargo_actions: - box_key: box_1 cargo_key: order_1_cargos cargo_action_type: ADD - box_key: box_1 cargo_key: order_2_cargos cargo_action_type: ADD attributes: [] - time: '2024-11-08T05:10:00Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_2 cargo_actions: - box_key: box_1 cargo_key: order_1_cargos cargo_action_type: ADD attributes: [] - time: '2024-11-08T05:10:00Z' flags: - RELOCATING cargo_actions: - box_key: box_1 cargo_key: order_1_cargos cargo_action_type: ADD attributes: [] - time: '2024-11-08T05:20:52Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_1 cargo_actions: - box_key: box_1 cargo_key: order_1_cargos cargo_action_type: ADD attributes: [] - time: '2024-11-08T05:20:52Z' flags: - ON_DEMAND - INSIDE_EVENT_HARD_WINDOW - INSIDE_LOCATION_WINDOW - INSIDE_LOCATION - AROUND_LOCATION order_key: order_1 demand_key: demand_1_drop event_key: demand_1_drop_event location_key: location_client_1 cargo_actions: - box_key: box_1 cargo_key: order_1_cargos cargo_action_type: ADD attributes: [] - time: '2024-11-08T05:30:52Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_1 cargo_actions: [] attributes: [] - time: '2024-11-08T05:30:52Z' flags: - RELOCATING cargo_actions: [] attributes: [] - time: '2024-11-08T05:38:39Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_3 cargo_actions: [] attributes: [] - time: '2024-11-08T05:38:39Z' flags: - ON_DEMAND - INSIDE_EVENT_HARD_WINDOW - INSIDE_LOCATION_WINDOW - INSIDE_LOCATION - AROUND_LOCATION order_key: order_3 demand_key: demand_3_work event_key: demand_3_work_event location_key: location_client_3 cargo_actions: [] attributes: [] - time: '2024-11-08T05:53:39Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_3 cargo_actions: [] attributes: [] waitlist: [] attributes: [] WebLocation: summary: Web location value: location: key: performer_1_location geopoint: latitude: 55.720292 longitude: 37.625994 fields: essence_key: performer_1_location enabled: true FilterList: summary: Список фильтров value: filters: - type: STRING_SEARCH column: ESSENCE_KEY string_search: text: some-text strict: false EmptyTableList: summary: Empty table list value: essences: [] counters: overall: total: 0 filter: total: 0 WebPerformer: summary: Web performer value: performer: key: performer_1 shifts: - key: performer_1_shift availability_time: from: '2024-11-07T21:00:00+00:00' to: '2024-11-08T20:59:59+00:00' working_time: from: '2024-11-07T21:00:00+00:00' to: '2024-11-08T20:59:59+00:00' fields: essence_key: performer_1 enabled: true WebTransport: summary: Web transport value: transport: key: transport_1 shifts: - key: transport_1_shift availability_time: from: '2024-11-07T21:00:00+00:00' to: '2024-11-08T20:59:59+00:00' transport_type: CAR boxes: - key: box_1 capacity: mass: 300 fields: essence_key: transport_1 enabled: true WebOrder: summary: Web order value: order: key: order_1 demands: - key: demand_work demand_type: WORK possible_events: - key: demand_work_event location_key: location_client duration: PT15M hard_time_window: from: '2024-11-08T05:00:00+00:00' to: '2024-11-08T07:00:00+00:00' fields: essence_key: order_1 enabled: true WebHardlink: summary: Web hardlink value: hardlink: key: hardlink_1 links: - type: PERFORMER_SHIFT entity_key: perf_1 - type: TRANSPORT_SHIFT entity_key: transp_1 fields: essence_key: hardlink_1 enabled: true WebFact: summary: Web fact value: fact: key: fact_01 type: NEW_LOCATION time: '2024-11-07T22:00:00Z' trip_key: trip_for_performer_1 performer_key: performer_1 location_key: performer_1_current_location fields: essence_key: fact_01 enabled: true Customfields: summary: Customfields value: rules: - entity_type: LOCATION source_attribute_key: max_trailer_weight target_customfield: INT_1 translations: ru: Максимальная масса прицепа (кг) en: Maximum trailer weight (kg) - entity_type: LOCATION source_attribute_key: trailer_name target_customfield: STRING_1 translations: ru: Название стоянки прицепов en: Trailer name - entity_type: LOCATION source_attribute_key: trailer_duration target_customfield: DURATION_1 translations: ru: Время расцепки прицепов en: Trailer action duration - entity_type: LOCATION source_attribute_key: trailer_creation_date target_customfield: DATETIME_1 translations: ru: Дата основания en: Creation Date - entity_type: LOCATION source_attribute_key: trailer_cost target_customfield: FLOAT_1 translations: ru: Стоимость хранения en: Storage Cost - entity_type: LOCATION source_attribute_key: trailer_state target_customfield: BOOL_1 translations: ru: Наличие парковки для прицепа en: Availability of trailer parking WebTrip: summary: Web trip value: trip: key: trip_1 performer: performer_key: performer_1 shift_key: performer_1_shift shift_time: from: '2024-11-08T04:39:34Z' to: '2024-11-08T05:53:49Z' transport: transport_key: transport_1 shift_key: transport_1_shift shift_time: from: '2024-11-08T04:39:34Z' to: '2024-11-08T05:53:49Z' states: - time: '2024-11-08T04:39:34Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_storage cargo_actions: [] distance: 0 cost: 2000 reward: 0 attributes: [] - time: '2024-11-08T04:39:34Z' flags: - ON_DEMAND - INSIDE_LOCATION - INSIDE_LOCATION_WINDOW - INSIDE_EVENT_HARD_WINDOW - AROUND_LOCATION order_key: order_1 demand_key: demand_1_pickup event_key: demand_1_pickup_event location_key: location_storage cargo_actions: [] distance: 0 cost: 2000 reward: 0 attributes: [] - time: '2024-11-08T04:39:34Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_storage cargo_actions: - box_key: box_1 cargo_key: order_1_cargos cargo_action_type: ADD distance: 0 cost: 2000 reward: 0 attributes: [] - time: '2024-11-08T04:39:34Z' flags: - ON_DEMAND - INSIDE_LOCATION - INSIDE_LOCATION_WINDOW - INSIDE_EVENT_HARD_WINDOW - AROUND_LOCATION order_key: order_2 demand_key: demand_2_pickup event_key: demand_2_pickup_event location_key: location_storage cargo_actions: [] distance: 0 cost: 2000 reward: 0 attributes: [] - time: '2024-11-08T04:39:34Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_storage cargo_actions: - box_key: box_1 cargo_key: order_2_cargos cargo_action_type: ADD distance: 0 cost: 2000 reward: 0 attributes: [] - time: '2024-11-08T04:39:34Z' flags: - DEPARTURE - AROUND_LOCATION location_key: location_storage cargo_actions: [] distance: 0 cost: 2000 reward: 0 attributes: [] - time: '2024-11-08T04:39:34Z' flags: - RELOCATING cargo_actions: [] distance: 0 cost: 2000 reward: 0 attributes: [] - time: '2024-11-08T05:00:00Z' flags: - ARRIVAL - AROUND_LOCATION location_key: location_client_2 cargo_actions: [] distance: 17110 cost: 3397.1 reward: 0 attributes: [] - time: '2024-11-08T05:00:00Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_2 cargo_actions: [] distance: 17110 cost: 3397.1 reward: 0 attributes: [] - time: '2024-11-08T05:00:00Z' flags: - ON_DEMAND - INSIDE_LOCATION - INSIDE_LOCATION_WINDOW - INSIDE_EVENT_HARD_WINDOW - AROUND_LOCATION order_key: order_2 demand_key: demand_2_drop event_key: demand_2_drop_event location_key: location_client_2 cargo_actions: [] distance: 17110 cost: 3397.1 reward: 0 attributes: [] - time: '2024-11-08T05:10:00Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_2 cargo_actions: - box_key: box_1 cargo_key: order_2_cargos cargo_action_type: REMOVE distance: 17110 cost: 3997.1 reward: 1000.1 attributes: [] - time: '2024-11-08T05:10:00Z' flags: - DEPARTURE - AROUND_LOCATION location_key: location_client_2 cargo_actions: [] distance: 17110 cost: 3997.1 reward: 1000.1 attributes: [] - time: '2024-11-08T05:10:00Z' flags: - RELOCATING cargo_actions: [] distance: 17110 cost: 3997.1 reward: 1000.1 attributes: [] - time: '2024-11-08T05:20:56Z' flags: - ARRIVAL - AROUND_LOCATION location_key: location_client_1 cargo_actions: [] distance: 27007 cost: 4752.07 reward: 1000.1 attributes: [] - time: '2024-11-08T05:20:56Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_1 cargo_actions: [] distance: 27007 cost: 4752.07 reward: 1000.1 attributes: [] - time: '2024-11-08T05:20:56Z' flags: - ON_DEMAND - INSIDE_LOCATION - INSIDE_LOCATION_WINDOW - INSIDE_EVENT_HARD_WINDOW - AROUND_LOCATION order_key: order_1 demand_key: demand_1_drop event_key: demand_1_drop_event location_key: location_client_1 cargo_actions: [] distance: 27007 cost: 4752.07 reward: 1000.1 attributes: [] - time: '2024-11-08T05:30:56Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_1 cargo_actions: - box_key: box_1 cargo_key: order_1_cargos cargo_action_type: REMOVE distance: 27007 cost: 5352.07 reward: 2000.2 attributes: [] - time: '2024-11-08T05:30:56Z' flags: - DEPARTURE - AROUND_LOCATION location_key: location_client_1 cargo_actions: [] distance: 27007 cost: 5352.07 reward: 2000.2 attributes: [] - time: '2024-11-08T05:30:56Z' flags: - RELOCATING cargo_actions: [] distance: 27007 cost: 5352.07 reward: 2000.2 attributes: [] - time: '2024-11-08T05:38:49Z' flags: - ARRIVAL - AROUND_LOCATION location_key: location_client_3 cargo_actions: [] distance: 34037 cost: 5895.37 reward: 2000.2 attributes: [] - time: '2024-11-08T05:38:49Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_3 cargo_actions: [] distance: 34037 cost: 5895.37 reward: 2000.2 attributes: [] - time: '2024-11-08T05:38:49Z' flags: - ON_DEMAND - INSIDE_LOCATION - INSIDE_LOCATION_WINDOW - INSIDE_EVENT_HARD_WINDOW - AROUND_LOCATION order_key: order_3 demand_key: demand_3_work event_key: demand_3_work_event location_key: location_client_3 cargo_actions: [] distance: 34037 cost: 5895.37 reward: 2000.2 attributes: [] - time: '2024-11-08T05:53:49Z' flags: - INSIDE_LOCATION - AROUND_LOCATION location_key: location_client_3 cargo_actions: [] distance: 34037 cost: 6795.37 reward: 3000.3 attributes: [] name: 1-HVFB waitlist: [] attributes: [] trip_statistics: trip_key: trip_1 general_statistics: cost: 6795.37 reward: 3000.3 profit: -3795.07 measurements: time_window: from: '2024-11-08T04:39:34Z' to: '2024-11-08T05:53:49Z' driving_time: PT39M15S waiting_time: PT0S working_time: PT35M break_time: PT0S rest_time: PT0S arriving_time: PT0S departure_time: PT0S total_time: PT1H14M15S distance: 34037 trips_count: 1 performers_count: 1 orders_count: 3 plan_orders_count: 3 waitlist_orders_count: 0 stops_count: 4 locations_count: 4 cargo_capacity_sum: mass: 2 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 cargo_capacity_ratio: mass: 0.007 volume: 1 capacity_a: 1 capacity_b: 1 capacity_c: 1 max_transport_load: mass: 0.007 volume: 1 capacity_a: 1 capacity_b: 1 capacity_c: 1 average_speed: 0 round_trips_count: 1 load_statistics: total_load: count: 2 capacity: mass: 2 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 max_load: count: 2 capacity: mass: 2 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 max_transfer_load: count: 2 capacity: mass: 2 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 stop_statistics: - location_key: location_storage stop_demands: - demand_key: demand_1_pickup event_key: demand_1_pickup_event demand_time_window: from: '2024-11-08T04:39:34Z' to: '2024-11-08T04:39:34Z' - demand_key: demand_2_pickup event_key: demand_2_pickup_event demand_time_window: from: '2024-11-08T04:39:34Z' to: '2024-11-08T04:39:34Z' stop_time_window: from: '2024-11-08T04:39:34Z' to: '2024-11-08T04:39:34Z' measurements: time_window: from: '2024-11-08T04:39:34Z' to: '2024-11-08T04:39:34Z' driving_time: PT0S waiting_time: PT0S working_time: PT0S break_time: PT0S rest_time: PT0S arriving_time: PT0S departure_time: PT0S total_time: PT0S distance: 0 upload: count: 2 capacity: mass: 2 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 download: count: 0 capacity: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 max_load: count: 2 capacity: mass: 2 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 arrival_load: count: 0 capacity: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 departure_load: count: 2 capacity: mass: 2 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 - location_key: location_client_2 stop_demands: - demand_key: demand_2_drop event_key: demand_2_drop_event demand_time_window: from: '2024-11-08T05:00:00Z' to: '2024-11-08T05:10:00Z' stop_time_window: from: '2024-11-08T05:00:00Z' to: '2024-11-08T05:10:00Z' measurements: time_window: from: '2024-11-08T04:39:34Z' to: '2024-11-08T05:10:00Z' driving_time: PT20M26S waiting_time: PT0S working_time: PT10M break_time: PT0S rest_time: PT0S arriving_time: PT0S departure_time: PT0S total_time: PT30M26S distance: 17110 upload: count: 0 capacity: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 download: count: 1 capacity: mass: 1 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 max_load: count: 2 capacity: mass: 2 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 arrival_load: count: 2 capacity: mass: 2 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 departure_load: count: 1 capacity: mass: 1 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 - location_key: location_client_1 stop_demands: - demand_key: demand_1_drop event_key: demand_1_drop_event demand_time_window: from: '2024-11-08T05:20:56Z' to: '2024-11-08T05:30:56Z' stop_time_window: from: '2024-11-08T05:20:56Z' to: '2024-11-08T05:30:56Z' measurements: time_window: from: '2024-11-08T05:10:00Z' to: '2024-11-08T05:30:56Z' driving_time: PT10M56S waiting_time: PT0S working_time: PT10M break_time: PT0S rest_time: PT0S arriving_time: PT0S departure_time: PT0S total_time: PT20M56S distance: 9897 upload: count: 0 capacity: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 download: count: 1 capacity: mass: 1 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 max_load: count: 1 capacity: mass: 1 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 arrival_load: count: 1 capacity: mass: 1 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 departure_load: count: 0 capacity: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 - location_key: location_client_3 stop_demands: - demand_key: demand_3_work event_key: demand_3_work_event demand_time_window: from: '2024-11-08T05:38:49Z' to: '2024-11-08T05:53:49Z' stop_time_window: from: '2024-11-08T05:38:49Z' to: '2024-11-08T05:53:49Z' measurements: time_window: from: '2024-11-08T05:30:56Z' to: '2024-11-08T05:53:49Z' driving_time: PT7M53S waiting_time: PT0S working_time: PT15M break_time: PT0S rest_time: PT0S arriving_time: PT0S departure_time: PT0S total_time: PT22M53S distance: 7030 upload: count: 0 capacity: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 download: count: 0 capacity: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 max_load: count: 0 capacity: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 arrival_load: count: 0 capacity: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 departure_load: count: 0 capacity: mass: 0 volume: 0 capacity_a: 0 capacity_b: 0 capacity_c: 0 fields: essence_key: trip_1 enabled: true WebTripTrackList: summary: Trip track list value: tracks: - geotrack: - latitude: 55.692789 longitude: 37.554554 time: '2024-11-21T09:30:00+03: 00' - latitude: 55.692788 longitude: 37.55467 time: '2024-11-21T09:35:00+03: 00' trip_key: trip_01 performer_key: performer_01 performer_shift_key: performer_shift_01 transport_key: transport_01 transport_shift_key: transport_shift_01 trip_name: X1-ABC counters: overall: total: 1 filter: total: 1 EmptyChartList: summary: Empty chart list value: charts: [] counters: overall: total: 0 filter: total: 0 WebTripTrackListCustom: summary: Trip track list custom value: tracks: - geotrack: - latitude: 55.692789 longitude: 37.554554 time: '2024-11-21T09:30:00+03: 00' - latitude: 55.692788 longitude: 37.55467 time: '2024-11-21T09:35:00+03: 00' trip_key: trip_01 performer_key: performer_01 performer_shift_key: performer_shift_01 transport_key: transport_01 transport_shift_key: transport_shift_01 trip_name: X1-ABC parameters: folder_key: name: folder_key description: Ключ папки, уникальный идентификатор. in: path required: true schema: $ref: '#/components/schemas/unique_key' filter: name: filter description: Фильтр для поиска по текстовым полям. in: query required: false schema: description: Фильтр для поиска по текстовым полям. type: string minLength: 1 maxLength: 64 example: example text offset: name: offset description: Количество пропущенных сущностей до возвращаемого списка. in: query required: false schema: description: Количество пропущенных сущностей до возвращаемого списка. type: integer format: int32 minimum: 0 maximum: 10000000 default: 0 example: 10 limit: name: limit description: Максимальное количество возвращаемых сущностей. in: query required: false schema: description: Максимальное количество возвращаемых сущностей. type: integer format: int32 minimum: 1 maximum: 10000000 default: 100 example: 10 table_experiment_column: name: sort_field description: 'Название колонки в таблице с экспериментами. ' in: query required: false schema: $ref: '#/components/schemas/table_experiment_column_type' sort_direction: name: sort_direction description: Направление сортировки. in: query required: false schema: description: Направление сортировки. type: string nullable: false enum: - ASC - DESC default: ASC example: DESC filter_required: name: filter description: Строка для поиска по текстовым полям. in: query required: true schema: description: Строка для поиска по текстовым полям. type: string minLength: 3 maxLength: 128 example: example text experiment_key: name: experiment_key description: Ключ, уникальный идентификатор. in: path required: true schema: $ref: '#/components/schemas/unique_key' process_name: name: process_name description: "Название процесса обработки данных:\n * `PLAN` - планирование\n\ \ * `REPLAN` - перепланирование\n * `ACTUALIZE` - актуализация\n" in: path required: true schema: $ref: '#/components/schemas/basic_process' tracks_full_segments: name: tracks_full_segments description: Возвращать полный или краткий список сегментов пути. in: query required: false schema: description: Тип списка сегментов пути. type: boolean default: false example: true process_code: name: process_code description: Уникальный идентификатор процесса. in: path required: true schema: $ref: '#/components/schemas/process_code' timezone: name: timezone description: Целевая временная зона данных. in: query required: false schema: $ref: '#/components/schemas/timezone' essence_key: name: essence_key description: Ключ, уникальный идентификатор. in: path required: true schema: $ref: '#/components/schemas/basic_essence_key' table_location_column: name: sort_field description: 'Название колонки в таблице с локациями. ' in: query required: false schema: $ref: '#/components/schemas/table_location_column_type' table_custom_column: name: sort_customfield description: 'Название дополнительной колонки в таблице. ' in: query required: false schema: $ref: '#/components/schemas/table_customfields_column_type' table_performer_column: name: sort_field description: 'Название колонки в таблице с исполнителями. ' in: query required: false schema: $ref: '#/components/schemas/table_performer_column_type' table_transport_column: name: sort_field description: 'Название колонки в таблице с транспортом. ' in: query required: false schema: $ref: '#/components/schemas/table_transport_column_type' table_order_column: name: sort_field description: 'Название колонки в таблице с заказами. ' in: query required: false schema: $ref: '#/components/schemas/table_order_column_type' table_hardlink_column: name: sort_field description: 'Название колонки в таблице со связями. ' in: query required: false schema: $ref: '#/components/schemas/table_hardlink_column_type' table_fact_column: name: sort_field description: 'Название колонки в таблице со фактами. ' in: query required: false schema: $ref: '#/components/schemas/table_fact_column_type' settings_key: name: settings_key description: Ключ пользовательских настроек, уникальный идентификатор. in: path required: true schema: $ref: '#/components/schemas/basic_path_key' table_trip_column: name: sort_field description: 'Название колонки в таблице с рейсами. ' in: query required: false schema: $ref: '#/components/schemas/table_trip_column_type' tracks_type: name: tracks_type description: "Тип трека:\n * `LINE` - соединение точек остановок по прямой\n\ \ * `ROAD` - соединение точек остановок по дорогам\n * `EXTERNAL` - пользовательские\ \ треки\n" in: path required: true schema: $ref: '#/components/schemas/basic_tracks_type' table_trip_stop_column: name: sort_field description: 'Название колонки в таблице с остановками рейса. ' in: query required: false schema: $ref: '#/components/schemas/table_trip_stop_column_type' filename: name: filename description: Название файла. in: path required: true schema: description: Название файла. type: string minLength: 6 maxLength: 128 example: file_en.html