{ "swagger": "2.0", "info": { "title": "oc-scheduler", "description": "Manage workflows booking\n", "version": "1.0.0", "termsOfService": "http://cloud.o-forge.io/", "contact": { "email": "admin@o-cloud.io" }, "license": { "name": "AGPL", "url": "https://www.gnu.org/licenses/agpl-3.0.html" } }, "basePath": "/oc/", "paths": { "/booking/": { "get": { "tags": [ "booking" ], "description": "find booking by id\n\u003cbr\u003e", "operationId": "BookingController.GetAll", "parameters": [ { "in": "query", "name": "is_draft", "description": "draft wished", "type": "string" } ], "responses": { "200": { "description": "{booking} models.booking" } } } }, "/booking/search/execution/{id}": { "get": { "tags": [ "booking" ], "description": "search bookings by execution\n\u003cbr\u003e", "operationId": "BookingController.Search", "parameters": [ { "in": "path", "name": "id", "description": "id execution", "required": true, "type": "string" }, { "in": "query", "name": "is_draft", "description": "draft wished", "type": "string" } ], "responses": { "200": { "description": "{workspace} models.workspace" } } } }, "/booking/search/{start_date}/{end_date}": { "get": { "tags": [ "booking" ], "description": "search bookings\n\u003cbr\u003e", "operationId": "BookingController.Search", "parameters": [ { "in": "path", "name": "start_date", "description": "the word search you want to get", "required": true, "type": "string" }, { "in": "path", "name": "end_date", "description": "the word search you want to get", "required": true, "type": "string" }, { "in": "query", "name": "is_draft", "description": "draft wished", "type": "string" } ], "responses": { "200": { "description": "{workspace} models.workspace" } } } }, "/booking/{id}": { "get": { "tags": [ "booking" ], "description": "find booking by id\n\u003cbr\u003e", "operationId": "BookingController.Get", "parameters": [ { "in": "path", "name": "id", "description": "the id you want to get", "required": true, "type": "string" } ], "responses": { "200": { "description": "{booking} models.booking" } } } }, "/execution/": { "get": { "tags": [ "execution" ], "description": "find workflow by workflowid\n\u003cbr\u003e", "operationId": "WorkflowExecutionController.GetAll", "parameters": [ { "in": "query", "name": "is_draft", "description": "draft wished", "type": "string" } ], "responses": { "200": { "description": "{workflow} models.workflow" } } } }, "/execution/search/{search}": { "get": { "tags": [ "execution" ], "description": "find compute by key word\n\u003cbr\u003e", "operationId": "WorkflowExecutionController.Search", "parameters": [ { "in": "path", "name": "search", "description": "the search you want to get", "required": true, "type": "string" }, { "in": "query", "name": "is_draft", "description": "draft wished", "type": "string" } ], "responses": { "200": { "description": "{compute} models.compute" } } } }, "/execution/search/{start_date}/{end_date}": { "get": { "tags": [ "execution" ], "description": "search workspace\n\u003cbr\u003e", "operationId": "WorkflowExecutionController.SearchPerDate", "parameters": [ { "in": "path", "name": "start_date", "description": "the word search you want to get", "required": true, "type": "string" }, { "in": "path", "name": "end_date", "description": "the word search you want to get", "required": true, "type": "string" }, { "in": "query", "name": "is_draft", "description": "draft wished", "type": "string" } ], "responses": { "200": { "description": "{workspace} models.workspace" } } } }, "/execution/{id}": { "get": { "tags": [ "execution" ], "description": "find workflow by workflowid\n\u003cbr\u003e", "operationId": "WorkflowExecutionController.Get", "parameters": [ { "in": "path", "name": "id", "description": "the workflowid you want to get", "required": true, "type": "string" } ], "responses": { "200": { "description": "{workflow} models.workflow" } } } }, "/loki/": { "post": { "tags": [ "loki" ], "description": "get logs\n\u003cbr\u003e", "operationId": "LokiController.GetLogs", "parameters": [ { "in": "body", "name": "body", "description": "The compute content", "required": true, "schema": { "$ref": "#/definitions/models.compute" } } ], "responses": { "200": { "description": "{workspace} models.workspace" } } } }, "/version/": { "get": { "tags": [ "version" ], "description": "get version\n\u003cbr\u003e", "operationId": "VersionController.GetAll", "responses": { "200": { "description": "" } } } }, "/version/status": { "get": { "tags": [ "version" ], "description": "get status\n\u003cbr\u003e", "operationId": "VersionController.Status", "responses": { "200": { "description": "" } } } }, "/{id}": { "post": { "tags": [ "oc-scheduler/controllersWorkflowSchedulerController" ], "description": "schedule workflow\n\u003cbr\u003e", "operationId": "WorkflowSchedulerController.Schedule", "parameters": [ { "in": "path", "name": "id", "description": "id execution", "required": true, "type": "string" }, { "in": "body", "name": "body", "description": "The compute content", "required": true, "schema": { "$ref": "#/definitions/models.compute" } } ], "responses": { "200": { "description": "{workspace} models.workspace" } } }, "delete": { "tags": [ "oc-scheduler/controllersWorkflowSchedulerController" ], "description": "schedule workflow\n\u003cbr\u003e", "operationId": "WorkflowSchedulerController.UnSchedule", "parameters": [ { "in": "path", "name": "id", "description": "id execution", "required": true, "type": "string" }, { "in": "body", "name": "body", "description": "The compute content", "required": true, "schema": { "$ref": "#/definitions/models.compute" } } ], "responses": { "200": { "description": "{workspace} models.workspace" } } } }, "/{id}/check": { "get": { "tags": [ "oc-scheduler/controllersWorkflowSchedulerController" ], "description": "WebSocket stream of slot availability for a workflow.\n\u003cbr\u003e", "operationId": "WorkflowSchedulerController.CheckStream", "parameters": [ { "in": "path", "name": "id", "description": "workflow id", "required": true, "type": "string" }, { "in": "query", "name": "as_possible", "description": "find nearest free slot from now", "type": "boolean" }, { "in": "query", "name": "preemption", "description": "validate anyway, raise warnings", "type": "boolean" } ], "responses": { "101": { "description": "" } } } }, "/{id}/order": { "get": { "tags": [ "oc-scheduler/controllersWorkflowSchedulerController" ], "description": "schedule workflow\n\u003cbr\u003e", "operationId": "WorkflowSchedulerController.SearchScheduledDraftOrder", "parameters": [ { "in": "path", "name": "id", "description": "id execution", "required": true, "type": "string" } ], "responses": { "200": { "description": "{workspace} models.workspace" } } } } }, "definitions": { "models.compute": { "title": "compute", "type": "object" } }, "tags": [ { "name": "oc-scheduler/controllersWorkflowSchedulerController", "description": "Operations about workflow\n" }, { "name": "loki", "description": "Operations about workflow\n" }, { "name": "booking", "description": "Operations about workspace\n" }, { "name": "execution", "description": "Operations about workflow\n" }, { "name": "version", "description": "VersionController operations for Version\n" } ] }