openapi: 3.0.3 info: title: 'Odinn ML' description: '' version: 1.0.0 servers: - url: 'https://ml-test.shiryaevser.site' paths: /api/ml-results: get: summary: Список operationId: '' description: "Получить список экспортов результатов применения ML (с пагинацией)\n\nСтандартный листинг Одинна с возможностью фильтрации" parameters: - in: query name: page description: 'Номер страницы.' example: 1 required: false schema: type: integer description: 'Номер страницы.' example: 1 - in: query name: page-size description: 'Количество элементов, возвращаемых на странице. По умолчанию 50.' example: 50 required: false schema: type: integer description: 'Количество элементов, возвращаемых на странице. По умолчанию 50.' example: 50 responses: 200: description: '' content: application/json: schema: type: object example: current_page: 1 data: [] first_page_url: 'https://ml-test.shiryaevser.site/api/ml-results?page=1' from: null last_page: 1 last_page_url: 'https://ml-test.shiryaevser.site/api/ml-results?page=1' links: - url: null label: '« Назад' active: false - url: 'https://ml-test.shiryaevser.site/api/ml-results?page=1' label: '1' active: true - url: null label: 'Вперёд »' active: false next_page_url: null path: 'https://ml-test.shiryaevser.site/api/ml-results' per_page: 50 prev_page_url: null to: null total: 0 properties: current_page: type: integer example: 1 data: type: array example: [] first_page_url: type: string example: 'https://ml-test.shiryaevser.site/api/ml-results?page=1' from: type: string example: null last_page: type: integer example: 1 last_page_url: type: string example: 'https://ml-test.shiryaevser.site/api/ml-results?page=1' links: type: array example: - url: null label: '« Назад' active: false - url: 'https://ml-test.shiryaevser.site/api/ml-results?page=1' label: '1' active: true - url: null label: 'Вперёд »' active: false items: type: object properties: url: type: string example: null label: type: string example: '« Назад' active: type: boolean example: false next_page_url: type: string example: null path: type: string example: 'https://ml-test.shiryaevser.site/api/ml-results' per_page: type: integer example: 50 prev_page_url: type: string example: null to: type: string example: null total: type: integer example: 0 tags: - 'ML Results' security: [] /api/ml-results/ml-data: get: summary: 'Получение результатов по применению ML через API' operationId: MLAPI description: '' parameters: [] responses: 500: description: '' content: application/json: schema: type: object example: message: 'Server Error' properties: message: type: string example: 'Server Error' tags: - 'ML Results' requestBody: required: true content: application/json: schema: type: object properties: ids: type: array description: 'Значение поля value должно быть корректным UUID.' example: - 4f50fb99-02a6-3590-8feb-260cda80963e items: type: string required: - ids security: [] /api/ml-results/export: post: summary: 'Экспорт результатов по применению ML в виде файла' operationId: ML description: "Начинает выгрузку результатов по применению ML в виде файла.\nМетод только начинает выгрузку, скачать файл можно будет по завершении (статус completed)\n\n" parameters: [] responses: { } tags: - 'ML Results' requestBody: required: true content: application/json: schema: type: object properties: ids: type: array description: 'Значение поля value должно быть корректным UUID.' example: - 2de617ad-5526-3466-966d-e94a48073924 items: type: string with_photo: type: boolean description: '' example: true required: - ids security: [] '/api/ml-results/{id}': get: summary: 'Получить информацию об экспорте' operationId: '' description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'Ml Results Export #cda06123-58ec-3b78-a4b6-cd6f91510714 Not found' properties: message: type: string example: 'Ml Results Export #cda06123-58ec-3b78-a4b6-cd6f91510714 Not found' tags: - 'ML Results' security: [] parameters: - in: path name: id description: 'Идентификатор (UUID)' example: cda06123-58ec-3b78-a4b6-cd6f91510714 required: true schema: type: uuid '/api/ml-results/{id}/download': get: summary: 'Скачать файл экспорта результатов по применению ML' operationId: ML description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: '' properties: message: type: string example: '' tags: - 'ML Results' security: [] parameters: - in: path name: id description: 'Идентификатор (UUID)' example: a2ce4e1f-8ef0-3575-8350-0bd5627729ed required: true schema: type: uuid /api/weight: get: summary: Список operationId: '' description: "Получить список весов (с пагинацией)\nСтандартный листинг Одинна с возможностью фильтрации" parameters: - in: query name: page description: 'Номер страницы.' example: 1 required: false schema: type: integer description: 'Номер страницы.' example: 1 - in: query name: page-size description: 'Количество элементов, возвращаемых на странице. По умолчанию 50.' example: 50 required: false schema: type: integer description: 'Количество элементов, возвращаемых на странице. По умолчанию 50.' example: 50 responses: 200: description: '' content: application/json: schema: type: object example: current_page: 1 data: [] first_page_url: 'https://ml-test.shiryaevser.site/api/weight?page=1' from: null last_page: 1 last_page_url: 'https://ml-test.shiryaevser.site/api/weight?page=1' links: - url: null label: '« Назад' active: false - url: 'https://ml-test.shiryaevser.site/api/weight?page=1' label: '1' active: true - url: null label: 'Вперёд »' active: false next_page_url: null path: 'https://ml-test.shiryaevser.site/api/weight' per_page: 50 prev_page_url: null to: null total: 0 properties: current_page: type: integer example: 1 data: type: array example: [] first_page_url: type: string example: 'https://ml-test.shiryaevser.site/api/weight?page=1' from: type: string example: null last_page: type: integer example: 1 last_page_url: type: string example: 'https://ml-test.shiryaevser.site/api/weight?page=1' links: type: array example: - url: null label: '« Назад' active: false - url: 'https://ml-test.shiryaevser.site/api/weight?page=1' label: '1' active: true - url: null label: 'Вперёд »' active: false items: type: object properties: url: type: string example: null label: type: string example: '« Назад' active: type: boolean example: false next_page_url: type: string example: null path: type: string example: 'https://ml-test.shiryaevser.site/api/weight' per_page: type: integer example: 50 prev_page_url: type: string example: null to: type: string example: null total: type: integer example: 0 tags: - 'Весы моделей' security: [] post: summary: Создать operationId: '' description: '' parameters: [] responses: { } tags: - 'Весы моделей' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: Имя example: quia notes: type: string description: Заметки example: eius models: type: array description: 'UUID моделей для этого веса' example: - veniam items: type: string file: type: string format: binary description: 'Файл веса' required: - name - models - file security: [] '/api/weight/{id}': get: summary: 'Получить информацию о весах модели' operationId: '' description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'Weight #95fcbe0b-fdfb-3006-abe1-d926375809d3 Not found' properties: message: type: string example: 'Weight #95fcbe0b-fdfb-3006-abe1-d926375809d3 Not found' tags: - 'Весы моделей' security: [] put: summary: 'Обновить информацию о весах моделей' operationId: '' description: '' parameters: [] responses: { } tags: - 'Весы моделей' requestBody: required: false content: multipart/form-data: schema: type: object properties: name: type: string description: Имя example: dignissimos notes: type: string description: Заметки example: enim models: type: array description: 'UUID моделей для этого веса' example: - possimus items: type: string file: type: string format: binary description: 'Файл веса' security: [] delete: summary: 'Удалить весы модели' operationId: '' description: '' parameters: [] responses: { } tags: - 'Весы моделей' security: [] parameters: - in: path name: id description: 'Идентификатор (UUID)' example: 95fcbe0b-fdfb-3006-abe1-d926375809d3 required: true schema: type: uuid '/api/weight/{id}/download': get: summary: 'Скачать файл весов' operationId: '' description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: '' properties: message: type: string example: '' tags: - 'Весы моделей' security: [] parameters: - in: path name: id description: 'Идентификатор (UUID)' example: d84acd23-5638-3cad-a74a-d3e2d2bf5da0 required: true schema: type: uuid /api/ai-model: get: summary: Список operationId: '' description: "Получить список весов (с пагинацией)\nСтандартный листинг Одинна с возможностью фильтрации" parameters: - in: query name: page description: 'Номер страницы.' example: 1 required: false schema: type: integer description: 'Номер страницы.' example: 1 - in: query name: page-size description: 'Количество элементов, возвращаемых на странице. По умолчанию 50.' example: 50 required: false schema: type: integer description: 'Количество элементов, возвращаемых на странице. По умолчанию 50.' example: 50 responses: 200: description: '' content: application/json: schema: type: object example: current_page: 1 data: - id: 9cc76c1a-b58e-46fa-8b04-235c40f71bfb name: Best_Float32 notes: null file_id: 9cc76c1a-10c6-43dd-a27b-674aaa555e24 classes: - Construct_filter - Log_filling - Work_with_computer created_at: '2024-08-16T10:14:21.000000Z' updated_at: '2024-08-16T10:14:21.000000Z' deleted_at: null weights: [] file: id: 9cc76c1a-10c6-43dd-a27b-674aaa555e24 name: best_float32_metadata.tflite title: null path: /models/ncJ973IjQX18kETGPjaIXiqaB89DEUcQiVfMhAJ8.tflite mime: application/octet-stream size: 12291067 last_accessed_at: '2024-08-16T10:14:20.000000Z' created_at: '2024-08-16T10:14:20.000000Z' updated_at: '2024-08-16T10:14:20.000000Z' deleted_at: null - id: 9cc16f6b-fb29-40ff-be94-5a415d919b9b name: TestVideoModel notes: null file_id: 9cc16f6b-e964-4fbe-b6ac-b6722d2cd322 classes: - video created_at: '2024-08-13T10:48:39.000000Z' updated_at: '2024-08-13T10:48:39.000000Z' deleted_at: null weights: [] file: id: 9cc16f6b-e964-4fbe-b6ac-b6722d2cd322 name: LRCN.tflite title: null path: /models/Z48FT7k7oXTz1MtElviphE8WRpTyJh1y1YNndvZp.tflite mime: application/octet-stream size: 308504 last_accessed_at: '2024-08-13T10:48:39.000000Z' created_at: '2024-08-13T10:48:39.000000Z' updated_at: '2024-08-13T10:48:39.000000Z' deleted_at: null - id: 9cc15dfc-3ae5-4fed-af43-343c4e17e2b0 name: TestSensorModel notes: null file_id: 9cc15dfc-2c6b-4bb6-bba7-d676965da455 classes: - sensor created_at: '2024-08-13T09:59:54.000000Z' updated_at: '2024-08-13T09:59:54.000000Z' deleted_at: null weights: [] file: id: 9cc15dfc-2c6b-4bb6-bba7-d676965da455 name: saved_model.tflite title: null path: /models/n6CLvIOqh0kC1KR01Pq3c8hZdbVH7fZbBT8PIwnE.tflite mime: application/octet-stream size: 56432 last_accessed_at: '2024-08-13T09:59:54.000000Z' created_at: '2024-08-13T09:59:54.000000Z' updated_at: '2024-08-13T09:59:54.000000Z' deleted_at: null - id: 9cbfed10-4caa-45cf-809b-8539a0468330 name: TestNameNew notes: null file_id: 9cbfed10-3d3b-4478-8328-a3f441bd6f5c classes: null created_at: '2024-08-12T16:48:19.000000Z' updated_at: '2024-08-12T16:48:19.000000Z' deleted_at: null weights: [] file: id: 9cbfed10-3d3b-4478-8328-a3f441bd6f5c name: saved_model.pb title: null path: /models/7Hkf3tlADzeEg329Yf3VehqsZdSh2skhZzmFWPyU.pb mime: application/octet-stream size: 804190 last_accessed_at: '2024-08-12T16:48:19.000000Z' created_at: '2024-08-12T16:48:19.000000Z' updated_at: '2024-08-12T16:48:19.000000Z' deleted_at: null first_page_url: 'https://ml-test.shiryaevser.site/api/ai-model?page=1' from: 1 last_page: 1 last_page_url: 'https://ml-test.shiryaevser.site/api/ai-model?page=1' links: - url: null label: '« Назад' active: false - url: 'https://ml-test.shiryaevser.site/api/ai-model?page=1' label: '1' active: true - url: null label: 'Вперёд »' active: false next_page_url: null path: 'https://ml-test.shiryaevser.site/api/ai-model' per_page: 50 prev_page_url: null to: 4 total: 4 properties: current_page: type: integer example: 1 data: type: array example: - id: 9cc76c1a-b58e-46fa-8b04-235c40f71bfb name: Best_Float32 notes: null file_id: 9cc76c1a-10c6-43dd-a27b-674aaa555e24 classes: - Construct_filter - Log_filling - Work_with_computer created_at: '2024-08-16T10:14:21.000000Z' updated_at: '2024-08-16T10:14:21.000000Z' deleted_at: null weights: [] file: id: 9cc76c1a-10c6-43dd-a27b-674aaa555e24 name: best_float32_metadata.tflite title: null path: /models/ncJ973IjQX18kETGPjaIXiqaB89DEUcQiVfMhAJ8.tflite mime: application/octet-stream size: 12291067 last_accessed_at: '2024-08-16T10:14:20.000000Z' created_at: '2024-08-16T10:14:20.000000Z' updated_at: '2024-08-16T10:14:20.000000Z' deleted_at: null - id: 9cc16f6b-fb29-40ff-be94-5a415d919b9b name: TestVideoModel notes: null file_id: 9cc16f6b-e964-4fbe-b6ac-b6722d2cd322 classes: - video created_at: '2024-08-13T10:48:39.000000Z' updated_at: '2024-08-13T10:48:39.000000Z' deleted_at: null weights: [] file: id: 9cc16f6b-e964-4fbe-b6ac-b6722d2cd322 name: LRCN.tflite title: null path: /models/Z48FT7k7oXTz1MtElviphE8WRpTyJh1y1YNndvZp.tflite mime: application/octet-stream size: 308504 last_accessed_at: '2024-08-13T10:48:39.000000Z' created_at: '2024-08-13T10:48:39.000000Z' updated_at: '2024-08-13T10:48:39.000000Z' deleted_at: null - id: 9cc15dfc-3ae5-4fed-af43-343c4e17e2b0 name: TestSensorModel notes: null file_id: 9cc15dfc-2c6b-4bb6-bba7-d676965da455 classes: - sensor created_at: '2024-08-13T09:59:54.000000Z' updated_at: '2024-08-13T09:59:54.000000Z' deleted_at: null weights: [] file: id: 9cc15dfc-2c6b-4bb6-bba7-d676965da455 name: saved_model.tflite title: null path: /models/n6CLvIOqh0kC1KR01Pq3c8hZdbVH7fZbBT8PIwnE.tflite mime: application/octet-stream size: 56432 last_accessed_at: '2024-08-13T09:59:54.000000Z' created_at: '2024-08-13T09:59:54.000000Z' updated_at: '2024-08-13T09:59:54.000000Z' deleted_at: null - id: 9cbfed10-4caa-45cf-809b-8539a0468330 name: TestNameNew notes: null file_id: 9cbfed10-3d3b-4478-8328-a3f441bd6f5c classes: null created_at: '2024-08-12T16:48:19.000000Z' updated_at: '2024-08-12T16:48:19.000000Z' deleted_at: null weights: [] file: id: 9cbfed10-3d3b-4478-8328-a3f441bd6f5c name: saved_model.pb title: null path: /models/7Hkf3tlADzeEg329Yf3VehqsZdSh2skhZzmFWPyU.pb mime: application/octet-stream size: 804190 last_accessed_at: '2024-08-12T16:48:19.000000Z' created_at: '2024-08-12T16:48:19.000000Z' updated_at: '2024-08-12T16:48:19.000000Z' deleted_at: null items: type: object properties: id: type: string example: 9cc76c1a-b58e-46fa-8b04-235c40f71bfb name: type: string example: Best_Float32 notes: type: string example: null file_id: type: string example: 9cc76c1a-10c6-43dd-a27b-674aaa555e24 classes: type: array example: - Construct_filter - Log_filling - Work_with_computer items: type: string created_at: type: string example: '2024-08-16T10:14:21.000000Z' updated_at: type: string example: '2024-08-16T10:14:21.000000Z' deleted_at: type: string example: null weights: type: array example: [] file: type: object properties: id: type: string example: 9cc76c1a-10c6-43dd-a27b-674aaa555e24 name: type: string example: best_float32_metadata.tflite title: type: string example: null path: type: string example: /models/ncJ973IjQX18kETGPjaIXiqaB89DEUcQiVfMhAJ8.tflite mime: type: string example: application/octet-stream size: type: integer example: 12291067 last_accessed_at: type: string example: '2024-08-16T10:14:20.000000Z' created_at: type: string example: '2024-08-16T10:14:20.000000Z' updated_at: type: string example: '2024-08-16T10:14:20.000000Z' deleted_at: type: string example: null first_page_url: type: string example: 'https://ml-test.shiryaevser.site/api/ai-model?page=1' from: type: integer example: 1 last_page: type: integer example: 1 last_page_url: type: string example: 'https://ml-test.shiryaevser.site/api/ai-model?page=1' links: type: array example: - url: null label: '« Назад' active: false - url: 'https://ml-test.shiryaevser.site/api/ai-model?page=1' label: '1' active: true - url: null label: 'Вперёд »' active: false items: type: object properties: url: type: string example: null label: type: string example: '« Назад' active: type: boolean example: false next_page_url: type: string example: null path: type: string example: 'https://ml-test.shiryaevser.site/api/ai-model' per_page: type: integer example: 50 prev_page_url: type: string example: null to: type: integer example: 4 total: type: integer example: 4 tags: - Модели security: [] post: summary: Создать operationId: '' description: '' parameters: [] responses: { } tags: - Модели requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: Имя example: neque notes: type: string description: Заметки example: necessitatibus classes: type: array description: 'Классы которые модель может обрабатывать' example: - quo items: type: string file: type: string format: binary description: 'Файл модели' required: - name - file security: [] '/api/ai-model/{id}': get: summary: 'Получить информацию о модели' operationId: '' description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'AI Model #a204f196-3991-3b5f-8797-9e2ff8bef071 Not found' properties: message: type: string example: 'AI Model #a204f196-3991-3b5f-8797-9e2ff8bef071 Not found' tags: - Модели security: [] put: summary: 'Обновить информацию о модели' operationId: '' description: '' parameters: [] responses: { } tags: - Модели requestBody: required: false content: multipart/form-data: schema: type: object properties: name: type: string description: Имя example: qui notes: type: string description: Заметки example: magnam classes: type: array description: 'Классы которые модель может обрабатывать' example: - iste items: type: string file: type: string format: binary description: 'Файл модели' security: [] delete: summary: 'Удалить модель' operationId: '' description: '' parameters: [] responses: { } tags: - Модели security: [] parameters: - in: path name: id description: 'Идентификатор (UUID)' example: a204f196-3991-3b5f-8797-9e2ff8bef071 required: true schema: type: uuid '/api/ai-model/{id}/download': get: summary: 'Скачать файл модели' operationId: '' description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: '' properties: message: type: string example: '' tags: - Модели security: [] parameters: - in: path name: id description: 'Идентификатор (UUID)' example: 54478eb5-fdf3-309f-8c5c-0fcdc6148c40 required: true schema: type: uuid tags: - name: 'ML Results' description: '' - name: 'Весы моделей' description: '' - name: Модели description: ''