Программный интерфейс для Veeroute Agro.
Проект отражает запланированную последовательность операций над сельскохозяйственными культурами, ниже описаны типы операций.
Уборка сельскохозяйственной культуры:
| Объект (target_key) | Подобъект (target_detail_key) | |
|---|---|---|
| Источник (source) | Поле | - |
| Назначение (destination) | Элеватор или Завод | Ворота |
Сушка культуры:
| Объект (target_key) | Подобъект (target_detail_key) | |
|---|---|---|
| Источник (source) | Элеватор или Завод | Ворота |
| Назначение (destination) | Элеватор или Завод | Сушилка |
Загрузка культуры с Ворот в Место хранения (долгосрочное, краткосрочное, бункер):
| Объект (target_key) | Подобъект (target_detail_key) | |
|---|---|---|
| Источник (source) | Элеватор или Завод | Ворота или Сушилка |
| Назначение (destination) | Элеватор или Завод | Место хранения (долгосрочное, краткосрочное, бункер) |
Выгрузка культуры из места хранения на Ворота:
| Объект (target_key) | Подобъект (target_detail_key) | |
|---|---|---|
| Источник (source) | Элеватор | Место хранения (долгосрочное, краткосрочное, бункер) или Сушилка |
| Назначение (destination) | Элеватор | Ворота |
Хранение культуры:
| Объект (target_key) | Подобъект (target_detail_key) | |
|---|---|---|
| Источник (source) | Элеватор или Завод | Место хранения (долгосрочное, краткосрочное, бункер) |
| Назначение (destination) | Элеватор или Завод | То же самое место хранения |
Перевозка между производственными объектами:
| Объект (target_key) | Подобъект (target_detail_key) | |
|---|---|---|
| Источник (source) | Элеватор | Ворота |
| Назначение (destination) | Завод | Ворота |
Потребление культуры заводом:
| Объект (target_key) | Подобъект (target_detail_key) | |
|---|---|---|
| Источник (source) | Завод | Бункер или Ворота или Сушилка |
| Назначение (destination) | Завод | Потребитель |
Продажа культуры:
| Объект (target_key) | Подобъект (target_detail_key) | |
|---|---|---|
| Источник (source) | Элеватор | Ворота |
| Назначение (destination) | Рынок | Контракт |
Покупка культуры:
| Объект (target_key) | Подобъект (target_detail_key) | |
|---|---|---|
| Источник (source) | Рынок | Контракт |
| Назначение (destination) | Завод | Ворота |
Расчет оптимального производственного плана.
Данные для расчета.
required | Array of objects (crop) [ 1 .. 501 ] items unique Список сельскохозяйственных культур. |
required | Array of objects (field) [ 1 .. 20001 ] items unique Список полей, на которых произрастают сельскохозяйственные культуры. |
Array of objects (elevator) [ 1 .. 501 ] items unique Список токов - производственных объектов по подготовке и хранению зерна. | |
required | Array of objects (factory) [ 1 .. 501 ] items unique Список заводов - потребителей зерна. |
required | Array of objects (market) [ 1 .. 501 ] items unique Список рынков. |
required | Array of objects (movement_matrix) [ 1 .. 8040402 ] items unique Матрица описывающая стоимость (в километрах и денежных единицах) перемещения зерна между объектами (в обе стороны). Если между объектами нет соответствующей записи в матрице - перемещение зерна между ними считается невозможным. |
Array of objects (leftover) [ 0 .. 25001 ] items Остатки зерна на текущий момент - в полях, хранилищах, сушилках. | |
required | object (plan_settings) Настройки планирования. |
| dataset_name | string (dataset_name) [ 0 .. 512 ] characters Example: "custom_dataset_one" Название набора данных. Техническое поле, не влияющее на расчет. |
required | object (tracedata) Данные используемые для трассировки запросов. |
required | Array of objects (project) [ 0 .. 1000001 ] items Производственный план. Последовательность выполнения работ. |
required | object (plan_statistics) Общая статистика. |
Array of objects (entity_warning_list) [ 0 .. 100001 ] items Список предупреждений. В зависимости от флага | |
object (unplanned_items) Список незапланированных сущностей. | |
| calculation_progress required | integer <int32> (calculation_progress) [ 0 .. 100 ] Example: "52" Прогресс расчета в процентах. Прогресс отражает текущее количество завершенных шагов. |
required | object (calculation_info) Информация о расчете. |
{- "$ref": "plan_task_small.json"
}{- "$ref": "plan_result_small.json"
}Данные для расчета.
required | Array of objects (crop) [ 1 .. 501 ] items unique Список сельскохозяйственных культур. |
required | Array of objects (field) [ 1 .. 20001 ] items unique Список полей, на которых произрастают сельскохозяйственные культуры. |
Array of objects (elevator) [ 1 .. 501 ] items unique Список токов - производственных объектов по подготовке и хранению зерна. | |
required | Array of objects (factory) [ 1 .. 501 ] items unique Список заводов - потребителей зерна. |
required | Array of objects (market) [ 1 .. 501 ] items unique Список рынков. |
required | Array of objects (movement_matrix) [ 1 .. 8040402 ] items unique Матрица описывающая стоимость (в километрах и денежных единицах) перемещения зерна между объектами (в обе стороны). Если между объектами нет соответствующей записи в матрице - перемещение зерна между ними считается невозможным. |
Array of objects (leftover) [ 0 .. 25001 ] items Остатки зерна на текущий момент - в полях, хранилищах, сушилках. | |
required | object (plan_settings) Настройки планирования. |
| dataset_name | string (dataset_name) [ 0 .. 512 ] characters Example: "custom_dataset_one" Название набора данных. Техническое поле, не влияющее на расчет. |
required | object (tracedata) Данные используемые для трассировки запросов. |
| process_code required | string <uuid> (process_code) Example: "11111111-2222-3333-4444-555555555555" Код процесса - идентификатор расчета. |
{- "$ref": "plan_task_small.json"
}{- "tracedata": {
- "process_code": "11111111-2222-3333-4444-555555555555",
- "request_code": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
- "username": "username_for_login",
- "company": "smart_company",
- "service": "UNIVERSAL",
- "operation": "run_plan_calculation",
- "env": "edge7",
- "pod": "11111111-2222-3333-4444-555555555555",
- "time": "2026-01-21T09:30:00+03:00"
}, - "process_code": "11111111-2222-3333-4444-555555555555"
}Отмена процесса планирования по идентификатору расчета.
| process_code required | string <uuid> (process_code) Example: 11111111-2222-3333-4444-555555555555 Уникальный идентификатор процесса. |
{- "$ref": "result_400.json"
}Получение состояния расчета по идентификатору расчета.
| process_code required | string <uuid> (process_code) Example: 11111111-2222-3333-4444-555555555555 Уникальный идентификатор процесса. |
required | object (tracedata) Данные используемые для трассировки запросов. |
| calculation_progress required | integer <int32> (calculation_progress) [ 0 .. 100 ] Example: "52" Прогресс расчета в процентах. Прогресс отражает текущее количество завершенных шагов. |
required | object (calculation_info) Информация о расчете. |
required | object (tracedata) Данные используемые для трассировки запросов. |
| calculation_progress required | integer <int32> (calculation_progress) [ 0 .. 100 ] Example: "52" Прогресс расчета в процентах. Прогресс отражает текущее количество завершенных шагов. |
required | object (calculation_info) Информация о расчете. |
{- "tracedata": {
- "process_code": "11111111-2222-3333-4444-555555555555",
- "request_code": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
- "username": "username_for_login",
- "company": "smart_company",
- "service": "UNIVERSAL",
- "operation": "run_plan_calculation",
- "env": "edge7",
- "pod": "11111111-2222-3333-4444-555555555555",
- "time": "2026-01-21T09:30:00+03:00"
}, - "calculation_progress": 52,
- "calculation_info": {
- "status": "FINISHED_IN_TIME",
- "message": "detail error message",
- "result_version": 133,
- "preparing_time": "PT1H45M",
- "business_validation_time": "PT1H45M",
- "math_validation_time": "PT1H45M",
- "waiting_time": "PT1H45M",
- "calculation_time": "PT1H45M"
}
}Получение результата расчета по идентификатору расчета.
| process_code required | string <uuid> (process_code) Example: 11111111-2222-3333-4444-555555555555 Уникальный идентификатор процесса. |
required | object (tracedata) Данные используемые для трассировки запросов. |
required | Array of objects (project) [ 0 .. 1000001 ] items Производственный план. Последовательность выполнения работ. |
required | object (plan_statistics) Общая статистика. |
Array of objects (entity_warning_list) [ 0 .. 100001 ] items Список предупреждений. В зависимости от флага | |
object (unplanned_items) Список незапланированных сущностей. | |
| calculation_progress required | integer <int32> (calculation_progress) [ 0 .. 100 ] Example: "52" Прогресс расчета в процентах. Прогресс отражает текущее количество завершенных шагов. |
required | object (calculation_info) Информация о расчете. |
required | object (tracedata) Данные используемые для трассировки запросов. |
required | Array of objects (project) [ 0 .. 1000001 ] items Производственный план. Последовательность выполнения работ. |
required | object (plan_statistics) Общая статистика. |
Array of objects (entity_warning_list) [ 0 .. 100001 ] items Список предупреждений. В зависимости от флага | |
object (unplanned_items) Список незапланированных сущностей. | |
| calculation_progress required | integer <int32> (calculation_progress) [ 0 .. 100 ] Example: "52" Прогресс расчета в процентах. Прогресс отражает текущее количество завершенных шагов. |
required | object (calculation_info) Информация о расчете. |
{- "$ref": "plan_result_small.json"
}Удаление результата по идентификатору расчета.
| process_code required | string <uuid> (process_code) Example: 11111111-2222-3333-4444-555555555555 Уникальный идентификатор процесса. |
{- "$ref": "result_400.json"
}Проверка данных перед отправкой на расчет.
Данные для расчета.
required | Array of objects (crop) [ 1 .. 501 ] items unique Список сельскохозяйственных культур. |
required | Array of objects (field) [ 1 .. 20001 ] items unique Список полей, на которых произрастают сельскохозяйственные культуры. |
Array of objects (elevator) [ 1 .. 501 ] items unique Список токов - производственных объектов по подготовке и хранению зерна. | |
required | Array of objects (factory) [ 1 .. 501 ] items unique Список заводов - потребителей зерна. |
required | Array of objects (market) [ 1 .. 501 ] items unique Список рынков. |
required | Array of objects (movement_matrix) [ 1 .. 8040402 ] items unique Матрица описывающая стоимость (в километрах и денежных единицах) перемещения зерна между объектами (в обе стороны). Если между объектами нет соответствующей записи в матрице - перемещение зерна между ними считается невозможным. |
Array of objects (leftover) [ 0 .. 25001 ] items Остатки зерна на текущий момент - в полях, хранилищах, сушилках. | |
required | object (plan_settings) Настройки планирования. |
| dataset_name | string (dataset_name) [ 0 .. 512 ] characters Example: "custom_dataset_one" Название набора данных. Техническое поле, не влияющее на расчет. |
required | object (tracedata) Данные используемые для трассировки запросов. |
required | Array of objects (entity_warning_list) [ 0 .. 100001 ] items Список предупреждений. В зависимости от флага |
{- "$ref": "plan_task_small.json"
}{- "tracedata": {
- "process_code": "11111111-2222-3333-4444-555555555555",
- "request_code": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
- "username": "username_for_login",
- "company": "smart_company",
- "service": "UNIVERSAL",
- "operation": "run_plan_calculation",
- "env": "edge7",
- "pod": "11111111-2222-3333-4444-555555555555",
- "time": "2026-01-21T09:30:00+03:00"
}, - "warnings": [ ]
}Получение подзадачи из полной задачи на расчет.
| clip_key required | string [ 1 .. 1024 ] characters Example: crop_key_1 Ключ целевой сущности. |
| clip_strategy | string (clip_strategy) Example: clip_strategy=CROP_WITH_TRANSIT_ELEVATORS Стратегия обрезки входных данных:
|
Данные для обрезки.
required | Array of objects (crop) [ 1 .. 501 ] items unique Список сельскохозяйственных культур. |
required | Array of objects (field) [ 1 .. 20001 ] items unique Список полей, на которых произрастают сельскохозяйственные культуры. |
Array of objects (elevator) [ 1 .. 501 ] items unique Список токов - производственных объектов по подготовке и хранению зерна. | |
required | Array of objects (factory) [ 1 .. 501 ] items unique Список заводов - потребителей зерна. |
required | Array of objects (market) [ 1 .. 501 ] items unique Список рынков. |
required | Array of objects (movement_matrix) [ 1 .. 8040402 ] items unique Матрица описывающая стоимость (в километрах и денежных единицах) перемещения зерна между объектами (в обе стороны). Если между объектами нет соответствующей записи в матрице - перемещение зерна между ними считается невозможным. |
Array of objects (leftover) [ 0 .. 25001 ] items Остатки зерна на текущий момент - в полях, хранилищах, сушилках. | |
required | object (plan_settings) Настройки планирования. |
| dataset_name | string (dataset_name) [ 0 .. 512 ] characters Example: "custom_dataset_one" Название набора данных. Техническое поле, не влияющее на расчет. |
required | Array of objects (crop) [ 1 .. 501 ] items unique Список сельскохозяйственных культур. |
required | Array of objects (field) [ 1 .. 20001 ] items unique Список полей, на которых произрастают сельскохозяйственные культуры. |
Array of objects (elevator) [ 1 .. 501 ] items unique Список токов - производственных объектов по подготовке и хранению зерна. | |
required | Array of objects (factory) [ 1 .. 501 ] items unique Список заводов - потребителей зерна. |
required | Array of objects (market) [ 1 .. 501 ] items unique Список рынков. |
required | Array of objects (movement_matrix) [ 1 .. 8040402 ] items unique Матрица описывающая стоимость (в километрах и денежных единицах) перемещения зерна между объектами (в обе стороны). Если между объектами нет соответствующей записи в матрице - перемещение зерна между ними считается невозможным. |
Array of objects (leftover) [ 0 .. 25001 ] items Остатки зерна на текущий момент - в полях, хранилищах, сушилках. | |
required | object (plan_settings) Настройки планирования. |
| dataset_name | string (dataset_name) [ 0 .. 512 ] characters Example: "custom_dataset_one" Название набора данных. Техническое поле, не влияющее на расчет. |
{- "$ref": "plan_task_small.json"
}{- "$ref": "plan_task_small.json"
}Проверка доступности сервиса.
| health required | number <double> [ 0 .. 1 ] Example: "0.999" Текущий показатель здоровья сервиса.
|
{- "health": 0.999
}Получение версии сервиса.
| major required | integer <int32> [ 1 .. 100 ] Example: "7" Версия продукта.
В рамках одной версии гарантируется совместимость общих структур данных между сервисами. |
| minor required | integer <int32> [ 0 .. 111 ] Example: "15" Минорная версия сервиса. Изменение версии указывает на новую функциональность. Обновление имеет обратную совместимость в рамках мажорной версии сервиса. |
| build required | string [ 1 .. 64 ] characters Example: "3754RC" Версия сборки. |
{- "major": 7,
- "minor": 15,
- "build": "3754RC"
}Получение файла с документацией на этот сервис.
| filename required | string [ 6 .. 128 ] characters Example: file_en.html Название файла. |
Файл с данными в формате HTML.
{- "resource_key": "resource_key_one",
- "detail": null
}