mirror of
https://git.rwth-aachen.de/acs/public/villas/web-backend-go/
synced 2025-03-09 00:00:00 +01:00
4063 lines
No EOL
138 KiB
JSON
4063 lines
No EOL
138 KiB
JSON
{
|
|
"swagger": "2.0",
|
|
"info": {
|
|
"description": "This is the [VILLASweb Backend](https://git.rwth-aachen.de/acs/public/villas/web-backend-go) API v2.0.\nThis documentation is auto-generated based on the API documentation in the code. The tool [swag](https://github.com/swaggo/swag) is used to auto-generate API docs for the [gin-gonic](https://github.com/gin-gonic/gin) framework.\nAuthentication: Use the authenticate endpoint below to obtain a token for your user account, copy the token into to the value field of the dialog showing up for the green Authorize button below and confirm with Done.",
|
|
"title": "VILLASweb Backend API",
|
|
"contact": {
|
|
"name": "Institute for Automation of Complex Power Systems, RWTH Aachen University"
|
|
},
|
|
"license": {
|
|
"name": "GNU GPL 3.0",
|
|
"url": "http://www.gnu.de/documents/gpl-3.0.en.html"
|
|
},
|
|
"version": "2.0"
|
|
},
|
|
"basePath": "/api/v2",
|
|
"paths": {
|
|
"/authenticate": {
|
|
"get": {
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"authentication"
|
|
],
|
|
"summary": "Check if user is authenticated and provide details on how the user can authenticate",
|
|
"operationId": "authenticated",
|
|
"responses": {
|
|
"200": {
|
|
"description": "JSON web token, success status, message and authenticated user object",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseAuthenticate"
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error.",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/authenticate/{mechanism}": {
|
|
"post": {
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"authentication"
|
|
],
|
|
"summary": "Authentication for user",
|
|
"operationId": "authenticate",
|
|
"parameters": [
|
|
{
|
|
"description": "loginRequest of user",
|
|
"name": "inputUser",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/user.loginRequest"
|
|
}
|
|
},
|
|
{
|
|
"enum": [
|
|
"internal",
|
|
"external"
|
|
],
|
|
"type": "string",
|
|
"description": "Login mechanism",
|
|
"name": "mechanism",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "JSON web token, success status, message and authenticated user object",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseAuthenticate"
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error.",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/config": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"config"
|
|
],
|
|
"summary": "Get config VILLASweb to be used by frontend",
|
|
"operationId": "config",
|
|
"responses": {
|
|
"200": {
|
|
"description": "The configuration",
|
|
"schema": {
|
|
"$ref": "#/definitions/config.Config"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/configs": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"component-configurations"
|
|
],
|
|
"summary": "Get all component configurations of scenario",
|
|
"operationId": "getConfigs",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Scenario ID",
|
|
"name": "scenarioID",
|
|
"in": "query",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Component configurations which belong to scenario",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseConfigs"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"component-configurations"
|
|
],
|
|
"summary": "Add a component configuration to a scenario",
|
|
"operationId": "addConfig",
|
|
"parameters": [
|
|
{
|
|
"description": "component configuration to be added incl. IDs of scenario and IC",
|
|
"name": "inputConfig",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/component_configuration.addConfigRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Component configuration that was added",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseConfig"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/configs/{configID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"component-configurations"
|
|
],
|
|
"summary": "Get a component configuration",
|
|
"operationId": "getConfig",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Config ID",
|
|
"name": "configID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "component configuration that was requested",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseConfig"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"component-configurations"
|
|
],
|
|
"summary": "Update a component configuration",
|
|
"operationId": "updateConfig",
|
|
"parameters": [
|
|
{
|
|
"description": "component configuration to be updated",
|
|
"name": "inputConfig",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/component_configuration.updateConfigRequest"
|
|
}
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Config ID",
|
|
"name": "configID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Component configuration that was added",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseConfig"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"component-configurations"
|
|
],
|
|
"summary": "Delete a component configuration",
|
|
"operationId": "deleteConfig",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Config ID",
|
|
"name": "configID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "component configuration that was deleted",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseConfig"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/dashboards": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"dashboards"
|
|
],
|
|
"summary": "Get all dashboards of scenario",
|
|
"operationId": "getDashboards",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Scenario ID",
|
|
"name": "scenarioID",
|
|
"in": "query",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Dashboards which belong to scenario",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseDashboards"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"dashboards"
|
|
],
|
|
"summary": "Add a dashboard to a scenario",
|
|
"operationId": "addDashboard",
|
|
"parameters": [
|
|
{
|
|
"description": "Dashboard to be added incl. ID of Scenario",
|
|
"name": "inputDab",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/dashboard.addDashboardRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Dashboard that was added",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseDashboard"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/dashboards/{dashboardID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"dashboards"
|
|
],
|
|
"summary": "Get a dashboard",
|
|
"operationId": "getDashboard",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Dashboard ID",
|
|
"name": "dashboardID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Dashboard that was requested",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseDashboard"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"dashboards"
|
|
],
|
|
"summary": "Update a dashboard",
|
|
"operationId": "updateDashboard",
|
|
"parameters": [
|
|
{
|
|
"description": "Dashboard to be updated",
|
|
"name": "inputDab",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/dashboard.updateDashboardRequest"
|
|
}
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Dashboard ID",
|
|
"name": "dashboardID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Dashboard that was updated",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseDashboard"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"dashboards"
|
|
],
|
|
"summary": "Delete a dashboard",
|
|
"operationId": "deleteDashboard",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Dashboard ID",
|
|
"name": "dashboardID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Dashboard that was deleted",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseDashboard"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/files": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"files"
|
|
],
|
|
"summary": "Get all files of a specific scenario",
|
|
"operationId": "getFiles",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Scenario ID",
|
|
"name": "scenarioID",
|
|
"in": "query",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Files which belong to scenario",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseFiles"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"text/plain",
|
|
"image/png",
|
|
"image/jpeg",
|
|
"image/gif",
|
|
"model/x-cim",
|
|
"model/x-cim.zip",
|
|
"multipart/form-data"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"files"
|
|
],
|
|
"summary": "Add a file to a specific scenario",
|
|
"operationId": "addFile",
|
|
"parameters": [
|
|
{
|
|
"type": "file",
|
|
"description": "File to be uploaded",
|
|
"name": "inputFile",
|
|
"in": "formData",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "ID of scenario to which file shall be added",
|
|
"name": "scenarioID",
|
|
"in": "query",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "File that was added",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseFile"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/files/{fileID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"text/plain",
|
|
"text/csv",
|
|
"application/gzip",
|
|
"application/x-gtar",
|
|
"application/x-tar",
|
|
"application/x-ustar",
|
|
"application/zip",
|
|
"application/msexcel",
|
|
"application/xml",
|
|
"application/x-bag",
|
|
"image/png",
|
|
"image/jpeg",
|
|
"image/gif",
|
|
"model/x-cim",
|
|
"model/x-cim.zip"
|
|
],
|
|
"tags": [
|
|
"files"
|
|
],
|
|
"summary": "Download a file",
|
|
"operationId": "getFile",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "ID of the file to download",
|
|
"name": "fileID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "File that was requested",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseFile"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"text/plain",
|
|
"image/png",
|
|
"image/jpeg",
|
|
"image/gif",
|
|
"model/x-cim",
|
|
"model/x-cim.zip",
|
|
"multipart/form-data"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"files"
|
|
],
|
|
"summary": "Update a file",
|
|
"operationId": "updateFile",
|
|
"parameters": [
|
|
{
|
|
"type": "file",
|
|
"description": "File to be uploaded",
|
|
"name": "inputFile",
|
|
"in": "formData",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "ID of the file to update",
|
|
"name": "fileID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "File that was updated",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseFile"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"files"
|
|
],
|
|
"summary": "Delete a file",
|
|
"operationId": "deleteFile",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "ID of the file to update",
|
|
"name": "fileID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "File that was deleted",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseFile"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/healthz": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"healthz"
|
|
],
|
|
"summary": "Get health status of backend",
|
|
"operationId": "getHealth",
|
|
"responses": {
|
|
"204": {
|
|
"description": "Backend is healthy, database and AMQP broker connections are alive",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Backend is NOT healthy",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/ic": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"infrastructure-components"
|
|
],
|
|
"summary": "Get all infrastructure components",
|
|
"operationId": "getICs",
|
|
"responses": {
|
|
"200": {
|
|
"description": "ICs requested",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseICs"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"infrastructure-components"
|
|
],
|
|
"summary": "Add an infrastructure component",
|
|
"operationId": "addIC",
|
|
"parameters": [
|
|
{
|
|
"description": "Infrastructure Component to be added",
|
|
"name": "inputIC",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/infrastructure_component.AddICRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Infrastructure Component that was added",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseIC"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/ic/{ICID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"infrastructure-components"
|
|
],
|
|
"summary": "Get infrastructure component",
|
|
"operationId": "getIC",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Infrastructure Component ID",
|
|
"name": "ICID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Infrastructure Component that was requested",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseIC"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"infrastructure-components"
|
|
],
|
|
"summary": "Update an infrastructure component",
|
|
"operationId": "updateIC",
|
|
"parameters": [
|
|
{
|
|
"description": "InfrastructureComponent to be updated",
|
|
"name": "inputIC",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/infrastructure_component.UpdateICRequest"
|
|
}
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "InfrastructureComponent ID",
|
|
"name": "ICID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Infrastructure Component that was updated",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseIC"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"infrastructure-components"
|
|
],
|
|
"summary": "Delete an infrastructure component",
|
|
"operationId": "deleteIC",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Infrastructure Component ID",
|
|
"name": "ICID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Infrastructure Component that was deleted",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseIC"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/ic/{ICID}/action": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"infrastructure-components"
|
|
],
|
|
"summary": "Send an action to IC (only available if backend server is started with -amqp parameter)",
|
|
"operationId": "sendActionToIC",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Action for IC",
|
|
"name": "inputAction",
|
|
"in": "query",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "InfrastructureComponent ID",
|
|
"name": "ICID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Action sent successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/ic/{ICID}/configs": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"infrastructure-components"
|
|
],
|
|
"summary": "Get all configurations of the infrastructure component",
|
|
"operationId": "getConfigsOfIC",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Infrastructure Component ID",
|
|
"name": "ICID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Configs requested by user",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseConfigs"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/metrics": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"metrics"
|
|
],
|
|
"summary": "Prometheus metrics endpoint",
|
|
"operationId": "getMetrics",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Returns Prometheus metrics",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/openapi": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"openapi"
|
|
],
|
|
"summary": "Get OpenAPI 2.0 spec of API",
|
|
"operationId": "getOpenAPI",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A OpenAPI 2.0 specification of the API",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/results": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"results"
|
|
],
|
|
"summary": "Get all results of scenario",
|
|
"operationId": "getResults",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Scenario ID",
|
|
"name": "scenarioID",
|
|
"in": "query",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Results which belong to scenario",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseResults"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"results"
|
|
],
|
|
"summary": "Add a result to a scenario",
|
|
"operationId": "addResult",
|
|
"parameters": [
|
|
{
|
|
"description": "Result to be added incl. ID of Scenario",
|
|
"name": "inputResult",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/result.addResultRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Result that was added",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseResult"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/results/{resultID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"results"
|
|
],
|
|
"summary": "Get a Result",
|
|
"operationId": "getResult",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Result ID",
|
|
"name": "resultID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Result that was requested",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseResult"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"results"
|
|
],
|
|
"summary": "Update a result",
|
|
"operationId": "updateResult",
|
|
"parameters": [
|
|
{
|
|
"description": "Result to be updated",
|
|
"name": "inputResult",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/result.updateResultRequest"
|
|
}
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Result ID",
|
|
"name": "resultID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Result that was updated",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseResult"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"results"
|
|
],
|
|
"summary": "Delete a Result incl. all result files",
|
|
"operationId": "deleteResult",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Result ID",
|
|
"name": "resultID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Result that was deleted",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseResult"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/results/{resultID}/file": {
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"text/plain",
|
|
"text/csv",
|
|
"application/gzip",
|
|
"application/x-gtar",
|
|
"application/x-tar",
|
|
"application/x-ustar",
|
|
"application/zip",
|
|
"application/msexcel",
|
|
"application/xml",
|
|
"application/x-bag",
|
|
"multipart/form-data"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"results"
|
|
],
|
|
"summary": "Upload a result file to the DB and associate it with scenario and result",
|
|
"operationId": "addResultFile",
|
|
"parameters": [
|
|
{
|
|
"type": "file",
|
|
"description": "File to be uploaded",
|
|
"name": "inputFile",
|
|
"in": "formData",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Result ID",
|
|
"name": "resultID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Result that was updated",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseResult"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/results/{resultID}/file/{fileID}": {
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"results"
|
|
],
|
|
"summary": "Delete a result file",
|
|
"operationId": "deleteResultFile",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Result ID",
|
|
"name": "resultID",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "ID of the file to delete",
|
|
"name": "fileID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Result for which file was deleted",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseResult"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/scenarios": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"scenarios"
|
|
],
|
|
"summary": "Get all scenarios of requesting user",
|
|
"operationId": "getScenarios",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Scenarios to which user has access",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseScenarios"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"scenarios"
|
|
],
|
|
"summary": "Add a scenario",
|
|
"operationId": "addScenario",
|
|
"parameters": [
|
|
{
|
|
"description": "Scenario to be added",
|
|
"name": "inputScenario",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/scenario.addScenarioRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "scenario that was added",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseScenario"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/scenarios/{scenarioID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"scenarios"
|
|
],
|
|
"summary": "Get scenario",
|
|
"operationId": "getScenario",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Scenario ID",
|
|
"name": "scenarioID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Scenario requested by user",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseScenario"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"scenarios"
|
|
],
|
|
"summary": "Update a scenario",
|
|
"operationId": "updateScenario",
|
|
"parameters": [
|
|
{
|
|
"description": "Scenario to be updated",
|
|
"name": "inputScenario",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/scenario.updateScenarioRequest"
|
|
}
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Scenario ID",
|
|
"name": "scenarioID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Updated scenario.",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseScenario"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"scenarios"
|
|
],
|
|
"summary": "Delete a scenario",
|
|
"operationId": "deleteScenario",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Scenario ID",
|
|
"name": "scenarioID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Deleted scenario",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseScenario"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/scenarios/{scenarioID}/user": {
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"scenarios"
|
|
],
|
|
"summary": "Add a user to a a scenario",
|
|
"operationId": "addUserToScenario",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Scenario ID",
|
|
"name": "scenarioID",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "User name",
|
|
"name": "username",
|
|
"in": "query",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "User that was added to scenario",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseUser"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"scenarios"
|
|
],
|
|
"summary": "Delete a user from a scenario",
|
|
"operationId": "deleteUserFromScenario",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Scenario ID",
|
|
"name": "scenarioID",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "User name",
|
|
"name": "username",
|
|
"in": "query",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "User that was deleted from scenario",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseUser"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/scenarios/{scenarioID}/users/": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"scenarios"
|
|
],
|
|
"summary": "Get users of a scenario",
|
|
"operationId": "getUsersOfScenario",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Scenario ID",
|
|
"name": "scenarioID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Array of users that have access to the scenario",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseUsers"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/signals": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"signals"
|
|
],
|
|
"summary": "Get all signals of one direction",
|
|
"operationId": "getSignals",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Direction of signal (in or out)",
|
|
"name": "direction",
|
|
"in": "query",
|
|
"required": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Config ID of signals to be obtained",
|
|
"name": "configID",
|
|
"in": "query",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Signals which belong to component configuration",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseSignals"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"signals"
|
|
],
|
|
"summary": "Add a signal to a signal mapping of a component configuration",
|
|
"operationId": "AddSignal",
|
|
"parameters": [
|
|
{
|
|
"description": "A signal to be added to the component configuration incl. direction and config ID to which signal shall be added",
|
|
"name": "inputSignal",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/signal.addSignalRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Signal that was added",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseSignal"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/signals/{signalID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"signals"
|
|
],
|
|
"summary": "Get a signal",
|
|
"operationId": "getSignal",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "ID of signal to be obtained",
|
|
"name": "signalID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Signal that was requested",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseSignal"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"signals"
|
|
],
|
|
"summary": "Update a signal",
|
|
"operationId": "updateSignal",
|
|
"parameters": [
|
|
{
|
|
"description": "A signal to be updated",
|
|
"name": "inputSignal",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/signal.updateSignalRequest"
|
|
}
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "ID of signal to be updated",
|
|
"name": "signalID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Signal that was updated",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseSignal"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"signals"
|
|
],
|
|
"summary": "Delete a signal",
|
|
"operationId": "deleteSignal",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "ID of signal to be deleted",
|
|
"name": "signalID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Signal that was deleted",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseSignal"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"users"
|
|
],
|
|
"summary": "Get all users",
|
|
"operationId": "GetUsers",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Array of users",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseUsers"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"users"
|
|
],
|
|
"summary": "Add a user",
|
|
"operationId": "AddUser",
|
|
"parameters": [
|
|
{
|
|
"description": "User to be added",
|
|
"name": "inputUser",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/user.addUserRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contains added user object",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseUser"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{userID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"users"
|
|
],
|
|
"summary": "Get user",
|
|
"operationId": "GetUser",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "User ID",
|
|
"name": "userID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "requested user",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseUser"
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "Access forbidden.",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"users"
|
|
],
|
|
"summary": "Update a user",
|
|
"operationId": "UpdateUser",
|
|
"parameters": [
|
|
{
|
|
"description": "User to be updated (anything except for ID can be changed, role can only be change by admin)",
|
|
"name": "inputUser",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/user.updateUserRequest"
|
|
}
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "User ID",
|
|
"name": "userID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contains updated user",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseUser"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request.",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "Access forbidden.",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"users"
|
|
],
|
|
"summary": "Delete a user",
|
|
"operationId": "DeleteUser",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "User ID",
|
|
"name": "userID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "deleted user",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseUser"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/widgets": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"widgets"
|
|
],
|
|
"summary": "Get all widgets of dashboard",
|
|
"operationId": "getWidgets",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Dashboard ID",
|
|
"name": "dashboardID",
|
|
"in": "query",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Widgets to which belong to dashboard",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseWidgets"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"widgets"
|
|
],
|
|
"summary": "Add a widget to a dashboard",
|
|
"operationId": "addWidget",
|
|
"parameters": [
|
|
{
|
|
"description": "Widget to be added incl. ID of dashboard",
|
|
"name": "inputWidget",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/widget.addWidgetRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Widget that was added",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseWidget"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/widgets/{widgetID}": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"widgets"
|
|
],
|
|
"summary": "Get a widget",
|
|
"operationId": "getWidget",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Widget ID",
|
|
"name": "widgetID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Widget that was requested",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseWidget"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"widgets"
|
|
],
|
|
"summary": "Update a widget",
|
|
"operationId": "updateWidget",
|
|
"parameters": [
|
|
{
|
|
"description": "Widget to be updated",
|
|
"name": "inputWidget",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/widget.updateWidgetRequest"
|
|
}
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Widget ID",
|
|
"name": "widgetID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Widget that was updated",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseWidget"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"widgets"
|
|
],
|
|
"summary": "Delete a widget",
|
|
"operationId": "deleteWidget",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Widget ID",
|
|
"name": "widgetID",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Widget that was deleted",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseWidget"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"422": {
|
|
"description": "Unprocessable entity",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api.ResponseError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"definitions": {
|
|
"api.ResponseAuthenticate": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseConfig": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseConfigs": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseDashboard": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseDashboards": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseError": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseFile": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseFiles": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseIC": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseICs": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseResult": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseResults": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseScenario": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseScenarios": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseSignal": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseSignals": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseUser": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseUsers": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseWidget": {
|
|
"type": "object"
|
|
},
|
|
"api.ResponseWidgets": {
|
|
"type": "object"
|
|
},
|
|
"component_configuration.addConfigRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"config": {
|
|
"$ref": "#/definitions/component_configuration.validNewConfig"
|
|
}
|
|
}
|
|
},
|
|
"component_configuration.updateConfigRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"config": {
|
|
"$ref": "#/definitions/component_configuration.validUpdatedConfig"
|
|
}
|
|
}
|
|
},
|
|
"component_configuration.validNewConfig": {
|
|
"type": "object",
|
|
"required": [
|
|
"Name",
|
|
"ScenarioID",
|
|
"StartParameters"
|
|
],
|
|
"properties": {
|
|
"FileIDs": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"ICID": {
|
|
"type": "integer"
|
|
},
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"ScenarioID": {
|
|
"type": "integer"
|
|
},
|
|
"StartParameters": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
}
|
|
}
|
|
},
|
|
"component_configuration.validUpdatedConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"FileIDs": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"ICID": {
|
|
"type": "integer"
|
|
},
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"StartParameters": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
}
|
|
}
|
|
},
|
|
"config.Authentication": {
|
|
"type": "object",
|
|
"properties": {
|
|
"external": {
|
|
"$ref": "#/definitions/config.AuthenticationExternal"
|
|
},
|
|
"logout_url": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"config.AuthenticationExternal": {
|
|
"type": "object",
|
|
"properties": {
|
|
"authorize_url": {
|
|
"type": "string"
|
|
},
|
|
"enabled": {
|
|
"type": "boolean"
|
|
},
|
|
"provider_name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"config.Config": {
|
|
"type": "object",
|
|
"properties": {
|
|
"authentication": {
|
|
"$ref": "#/definitions/config.Authentication"
|
|
},
|
|
"contact": {
|
|
"$ref": "#/definitions/config.Contact"
|
|
},
|
|
"kubernetes": {
|
|
"$ref": "#/definitions/config.Kubernetes"
|
|
},
|
|
"mode": {
|
|
"type": "string"
|
|
},
|
|
"sub_title": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"webrtc": {
|
|
"$ref": "#/definitions/config.WebRTC"
|
|
}
|
|
}
|
|
},
|
|
"config.Contact": {
|
|
"type": "object",
|
|
"properties": {
|
|
"mail": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"config.ICEServer": {
|
|
"type": "object",
|
|
"properties": {
|
|
"password": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"username": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"config.Kubernetes": {
|
|
"type": "object",
|
|
"properties": {
|
|
"cluster_name": {
|
|
"type": "string"
|
|
},
|
|
"rancher_url": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"config.WebRTC": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ice_servers": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/config.ICEServer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"dashboard.addDashboardRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"dashboard": {
|
|
"$ref": "#/definitions/dashboard.validNewDashboard"
|
|
}
|
|
}
|
|
},
|
|
"dashboard.updateDashboardRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"dashboard": {
|
|
"$ref": "#/definitions/dashboard.validUpdatedDashboard"
|
|
}
|
|
}
|
|
},
|
|
"dashboard.validNewDashboard": {
|
|
"type": "object",
|
|
"required": [
|
|
"Grid",
|
|
"Name",
|
|
"ScenarioID"
|
|
],
|
|
"properties": {
|
|
"Grid": {
|
|
"type": "integer"
|
|
},
|
|
"Height": {
|
|
"type": "integer"
|
|
},
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"ScenarioID": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"dashboard.validUpdatedDashboard": {
|
|
"type": "object",
|
|
"properties": {
|
|
"grid": {
|
|
"type": "integer"
|
|
},
|
|
"height": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"infrastructure_component.AddICRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ic": {
|
|
"$ref": "#/definitions/infrastructure_component.validNewIC"
|
|
}
|
|
}
|
|
},
|
|
"infrastructure_component.UpdateICRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ic": {
|
|
"$ref": "#/definitions/infrastructure_component.validUpdatedIC"
|
|
}
|
|
}
|
|
},
|
|
"infrastructure_component.validNewIC": {
|
|
"type": "object",
|
|
"required": [
|
|
"Category",
|
|
"ManagedExternally",
|
|
"Name",
|
|
"Type"
|
|
],
|
|
"properties": {
|
|
"APIURL": {
|
|
"type": "string"
|
|
},
|
|
"Category": {
|
|
"type": "string"
|
|
},
|
|
"CreateParameterSchema": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
},
|
|
"Description": {
|
|
"type": "string"
|
|
},
|
|
"Location": {
|
|
"type": "string"
|
|
},
|
|
"ManagedExternally": {
|
|
"type": "boolean"
|
|
},
|
|
"Manager": {
|
|
"type": "string"
|
|
},
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"StartParameterSchema": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
},
|
|
"State": {
|
|
"type": "string"
|
|
},
|
|
"StatusUpdateRaw": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
},
|
|
"Type": {
|
|
"type": "string"
|
|
},
|
|
"UUID": {
|
|
"type": "string"
|
|
},
|
|
"Uptime": {
|
|
"type": "number"
|
|
},
|
|
"WebsocketURL": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"infrastructure_component.validUpdatedIC": {
|
|
"type": "object",
|
|
"properties": {
|
|
"APIURL": {
|
|
"type": "string"
|
|
},
|
|
"Category": {
|
|
"type": "string"
|
|
},
|
|
"CreateParameterSchema": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
},
|
|
"Description": {
|
|
"type": "string"
|
|
},
|
|
"Location": {
|
|
"type": "string"
|
|
},
|
|
"Manager": {
|
|
"type": "string"
|
|
},
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"StartParameterSchema": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
},
|
|
"State": {
|
|
"type": "string"
|
|
},
|
|
"StatusUpdateRaw": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
},
|
|
"Type": {
|
|
"type": "string"
|
|
},
|
|
"UUID": {
|
|
"type": "string"
|
|
},
|
|
"Uptime": {
|
|
"type": "number"
|
|
},
|
|
"WebsocketURL": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"postgres.Jsonb": {
|
|
"type": "object",
|
|
"properties": {
|
|
"json.RawMessage": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"result.addResultRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"result": {
|
|
"$ref": "#/definitions/result.validNewResult"
|
|
}
|
|
}
|
|
},
|
|
"result.updateResultRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"result": {
|
|
"$ref": "#/definitions/result.validUpdatedResult"
|
|
}
|
|
}
|
|
},
|
|
"result.validNewResult": {
|
|
"type": "object",
|
|
"required": [
|
|
"ConfigSnapshots",
|
|
"ScenarioID"
|
|
],
|
|
"properties": {
|
|
"ConfigSnapshots": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
},
|
|
"Description": {
|
|
"type": "string"
|
|
},
|
|
"ResultFileIDs": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"ScenarioID": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"result.validUpdatedResult": {
|
|
"type": "object",
|
|
"properties": {
|
|
"configSnapshots": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"resultFileIDs": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"scenario.addScenarioRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"scenario": {
|
|
"$ref": "#/definitions/scenario.validNewScenario"
|
|
}
|
|
}
|
|
},
|
|
"scenario.updateScenarioRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"scenario": {
|
|
"$ref": "#/definitions/scenario.validUpdatedScenario"
|
|
}
|
|
}
|
|
},
|
|
"scenario.validNewScenario": {
|
|
"type": "object",
|
|
"required": [
|
|
"Name",
|
|
"StartParameters"
|
|
],
|
|
"properties": {
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"StartParameters": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
}
|
|
}
|
|
},
|
|
"scenario.validUpdatedScenario": {
|
|
"type": "object",
|
|
"properties": {
|
|
"IsLocked": {
|
|
"type": "boolean"
|
|
},
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"StartParameters": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
}
|
|
}
|
|
},
|
|
"signal.addSignalRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"signal": {
|
|
"$ref": "#/definitions/signal.validNewSignal"
|
|
}
|
|
}
|
|
},
|
|
"signal.updateSignalRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"signal": {
|
|
"$ref": "#/definitions/signal.validUpdatedSignal"
|
|
}
|
|
}
|
|
},
|
|
"signal.validNewSignal": {
|
|
"type": "object",
|
|
"required": [
|
|
"ConfigID",
|
|
"Direction",
|
|
"Index",
|
|
"Name"
|
|
],
|
|
"properties": {
|
|
"ConfigID": {
|
|
"type": "integer"
|
|
},
|
|
"Direction": {
|
|
"type": "string",
|
|
"enum": [
|
|
"in",
|
|
"out"
|
|
]
|
|
},
|
|
"Index": {
|
|
"type": "integer"
|
|
},
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"ScalingFactor": {
|
|
"type": "number"
|
|
},
|
|
"Unit": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"signal.validUpdatedSignal": {
|
|
"type": "object",
|
|
"properties": {
|
|
"Index": {
|
|
"type": "integer"
|
|
},
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"ScalingFactor": {
|
|
"type": "number"
|
|
},
|
|
"Unit": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"user.addUserRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"user": {
|
|
"$ref": "#/definitions/user.validNewUser"
|
|
}
|
|
}
|
|
},
|
|
"user.loginRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"Password",
|
|
"Username"
|
|
],
|
|
"properties": {
|
|
"Password": {
|
|
"type": "string"
|
|
},
|
|
"Username": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"user.updateUserRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"user": {
|
|
"$ref": "#/definitions/user.validUpdatedRequest"
|
|
}
|
|
}
|
|
},
|
|
"user.validNewUser": {
|
|
"type": "object",
|
|
"required": [
|
|
"Mail",
|
|
"Password",
|
|
"Role",
|
|
"Username"
|
|
],
|
|
"properties": {
|
|
"Mail": {
|
|
"type": "string"
|
|
},
|
|
"Password": {
|
|
"type": "string",
|
|
"minLength": 6
|
|
},
|
|
"Role": {
|
|
"type": "string",
|
|
"enum": [
|
|
"Admin",
|
|
"User",
|
|
"Guest"
|
|
]
|
|
},
|
|
"Username": {
|
|
"type": "string",
|
|
"minLength": 3
|
|
}
|
|
}
|
|
},
|
|
"user.validUpdatedRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"Active": {
|
|
"type": "string",
|
|
"enum": [
|
|
"yes",
|
|
"no"
|
|
]
|
|
},
|
|
"Mail": {
|
|
"type": "string"
|
|
},
|
|
"OldPassword": {
|
|
"type": "string",
|
|
"minLength": 6
|
|
},
|
|
"Password": {
|
|
"type": "string",
|
|
"minLength": 6
|
|
},
|
|
"Role": {
|
|
"type": "string",
|
|
"enum": [
|
|
"Admin",
|
|
"User",
|
|
"Guest"
|
|
]
|
|
},
|
|
"Username": {
|
|
"type": "string",
|
|
"minLength": 3
|
|
}
|
|
}
|
|
},
|
|
"widget.addWidgetRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"widget": {
|
|
"$ref": "#/definitions/widget.validNewWidget"
|
|
}
|
|
}
|
|
},
|
|
"widget.updateWidgetRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"widget": {
|
|
"$ref": "#/definitions/widget.validUpdatedWidget"
|
|
}
|
|
}
|
|
},
|
|
"widget.validNewWidget": {
|
|
"type": "object",
|
|
"required": [
|
|
"DashboardID",
|
|
"Height",
|
|
"Type",
|
|
"Width"
|
|
],
|
|
"properties": {
|
|
"CustomProperties": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
},
|
|
"DashboardID": {
|
|
"type": "integer"
|
|
},
|
|
"Height": {
|
|
"type": "integer"
|
|
},
|
|
"IsLocked": {
|
|
"type": "boolean"
|
|
},
|
|
"MinHeight": {
|
|
"type": "integer"
|
|
},
|
|
"MinWidth": {
|
|
"type": "integer"
|
|
},
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"SignalIDs": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"Type": {
|
|
"type": "string"
|
|
},
|
|
"Width": {
|
|
"type": "integer"
|
|
},
|
|
"X": {
|
|
"type": "integer"
|
|
},
|
|
"Y": {
|
|
"type": "integer"
|
|
},
|
|
"Z": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"widget.validUpdatedWidget": {
|
|
"type": "object",
|
|
"properties": {
|
|
"CustomProperties": {
|
|
"$ref": "#/definitions/postgres.Jsonb"
|
|
},
|
|
"Height": {
|
|
"type": "integer"
|
|
},
|
|
"IsLocked": {
|
|
"type": "boolean"
|
|
},
|
|
"MinHeight": {
|
|
"type": "integer"
|
|
},
|
|
"MinWidth": {
|
|
"type": "integer"
|
|
},
|
|
"Name": {
|
|
"type": "string"
|
|
},
|
|
"SignalIDs": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"Type": {
|
|
"type": "string"
|
|
},
|
|
"Width": {
|
|
"type": "integer"
|
|
},
|
|
"X": {
|
|
"type": "integer"
|
|
},
|
|
"Y": {
|
|
"type": "integer"
|
|
},
|
|
"Z": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"securityDefinitions": {
|
|
"Bearer": {
|
|
"type": "apiKey",
|
|
"name": "Authorization",
|
|
"in": "header"
|
|
}
|
|
}
|
|
} |