Swagger json
Diese Seite ist noch nicht in deiner Sprache verfügbar. Englische Seite aufrufen
This json file provides a documentation of all available endpoints of our MOSS (Managed Operations on STACKIT Servers) API and requests including examples. Use the Swagger Editor to read the file.
{ "openapi": "3.0.0", "info": { "description": "API endpoints for Managed servers on STACKIT.\n\n# Authentication\n\n<!-- ReDoc-Inject: <security-definitions> -->", "version": "1.0", "title": "STACKIT Managed Operating System Service API", "termsOfService": "https://stackit.de/en/imprint", "contact": { "email": "support@stackit.de" } }, "servers": [ { "url": "https://stackit-service-mos.apps.01.cf.eu01.stackit.cloud/v1", "description": "Production endpoint" } ], "security": [ { "bearerAuth": [] } ], "paths": { "/service-instances/{instanceId}/updates": { "post": { "summary": "trigger update job", "tags": ["Updates"], "operationId": "dashboard.createUpdate", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "required": ["maintenanceWindow", "backupBeforeUpdate"], "properties": { "maintenanceWindow": { "type": "integer", "example": 3 }, "backupBeforeUpdate": { "type": "boolean", "example": true }, "backupProperties": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1backups/post/requestBody/content/application~1json/schema" } } } } } }, "responses": { "202": { "description": "Request is accepted, but processing may take some time.", "content": { "application/json": { "schema": { "title": "updateJobCreated", "type": "object", "required": ["id", "startDate", "status"], "properties": { "id": { "type": "integer", "example": 58725 }, "startDate": { "type": "string", "example": "2020-07-22T15:12:36.951" }, "status": { "type": "string", "enum": [ "new", "pending", "waiting", "running", "successful", "failed", "error", "canceled" ], "example": "pending" } } } } } }, "400": { "description": "Bad Request" }, "404": { "description": "Server not found" } } }, "get": { "summary": "get list of update jobs", "tags": ["Updates"], "operationId": "dashboard.getUpdates", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "list with update jobs", "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1updates~1%7BupdateId%7D/get/responses/200/content/application~1json/schema" } } } } } } }, "404": { "description": "Server not found" } } } }, "/service-instances/{instanceId}/updates/{updateId}": { "get": { "summary": "get single update job details", "tags": ["Updates"], "operationId": "dashboard.getUpdate", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "updateId", "in": "path", "description": "update id", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "single update job results", "content": { "application/json": { "schema": { "title": "updateJob", "type": "object", "required": ["id", "startDate", "status"], "properties": { "id": { "type": "integer", "example": 58725 }, "startDate": { "type": "string", "example": "2020-07-22T15:12:36.951" }, "endDate": { "type": "string", "example": "2020-07-22T15:20:00.254" }, "status": { "type": "string", "enum": [ "new", "pending", "waiting", "running", "successful", "failed", "error", "canceled" ], "example": "successful" }, "installedUpdates": { "type": "integer", "example": 1 }, "failedUpdates": { "type": "integer", "example": 0 }, "serverBackupJobId": { "type": "string", "example": "d4431ddb-3010-4d44-8f68-36c34c38da4a" } } } } } }, "404": { "description": "Server | Update job not found" } } } }, "/service-instances/{instanceId}/update-schedules": { "post": { "summary": "create update schedule", "tags": ["Update Schedules"], "operationId": "dashboard.createUpdateSchedule", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "required": [ "name", "rrule", "enabled", "backupBeforeUpdate", "maintenanceWindow" ], "properties": { "name": { "type": "string", "example": "Monthly Schedule" }, "rrule": { "type": "string", "example": "DTSTART;TZID=Europe/Sofia:20200803T134000 RRULE:FREQ=MONTHLY;INTERVAL=1" }, "enabled": { "type": "boolean", "example": true }, "backupBeforeUpdate": { "type": "boolean", "example": true }, "maintenanceWindow": { "type": "integer", "example": 2 } } } } } }, "responses": { "201": { "description": "Schedule created", "content": { "application/json": { "schema": { "title": "updateSchedule", "type": "object", "required": [ "id", "name", "rrule", "enabled", "backupBeforeUpdate", "maintenanceWindow" ], "properties": { "id": { "type": "integer", "example": 52345 }, "name": { "type": "string", "example": "Monthly Schedule" }, "rrule": { "type": "string", "example": "DTSTART;TZID=Europe/Sofia:20200803T134000 RRULE:FREQ=MONTHLY;INTERVAL=1" }, "enabled": { "type": "boolean", "example": true }, "backupBeforeUpdate": { "type": "boolean", "example": true }, "maintenanceWindow": { "type": "integer", "example": 2 } } } } } }, "400": { "description": "Bad Request" }, "404": { "description": "Server not found" } } }, "get": { "summary": "get list of update schedules", "tags": ["Update Schedules"], "operationId": "dashboard.get_update_schedules", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "schedule list response", "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1update-schedules/post/responses/201/content/application~1json/schema" } } } } } } }, "404": { "description": "Server not found" } } } }, "/service-instances/{instanceId}/update-schedules/{updateScheduleId}": { "get": { "summary": "get single update schedule details", "tags": ["Update Schedules"], "operationId": "dashboard.get_update_schedule", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "updateScheduleId", "in": "path", "description": "update schedule id", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "update schedule response", "content": { "application/json": { "schema": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1update-schedules/post/responses/201/content/application~1json/schema" } } } }, "404": { "description": "Server | update schedule not found" } } }, "put": { "summary": "update update schedule", "tags": ["Update Schedules"], "operationId": "dashboard.updateUpdateSchedule", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "updateScheduleId", "in": "path", "description": "update schedule id", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "required": [ "name", "rrule", "enabled", "backupBeforeUpdate", "maintenanceWindow" ], "properties": { "name": { "type": "string", "example": "Monthly Schedule" }, "rrule": { "type": "string", "example": "DTSTART;TZID=Europe/Sofia:20200803T134000 RRULE:FREQ=MONTHLY;INTERVAL=1" }, "enabled": { "type": "boolean", "example": true }, "backupBeforeUpdate": { "type": "boolean", "example": true }, "maintenanceWindow": { "type": "integer", "example": 2 } } } } } }, "responses": { "200": { "description": "updated update schedule", "content": { "application/json": { "schema": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1update-schedules/post/responses/201/content/application~1json/schema" } } } }, "400": { "description": "Bad Request" }, "404": { "description": "Server | update schedule not found" } } }, "delete": { "summary": "delete update schedule", "tags": ["Update Schedules"], "operationId": "dashboard.deleteUpdateSchedule", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "updateScheduleId", "in": "path", "description": "update schedule id", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "update schedule successfully deleted" }, "404": { "description": "Server | update schedule not found" } } } }, "/service-instances/{instanceId}/backups": { "post": { "summary": "create backup", "tags": ["Backups"], "operationId": "dashboard.backup", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "title": "backupProperties", "type": "object", "required": ["name", "retentionPeriod"], "properties": { "name": { "type": "string" }, "retentionPeriod": { "type": "integer" }, "volumeIds": { "type": "array", "items": { "type": "string" } } }, "example": { "name": "Daily Backup", "retentionPeriod": 3, "volumeIds": [ "58335311-6acf-46c5-8652-cb96cd63181e", "38345f49-047b-437d-83a1-458f04fa3182" ] } } } } }, "responses": { "202": { "description": "Request is accepted, but processing may take some time.", "content": { "application/json": { "schema": { "title": "backupJob", "type": "object", "required": ["id"], "properties": { "id": { "type": "string", "example": "001c372f-5c15-418d-b2fb-b1f93ea2ffc8" } } } } } }, "400": { "description": "Bad Request" }, "404": { "description": "Server not found" } } }, "get": { "summary": "get list of backups", "tags": ["Backups"], "operationId": "dashboard.backups", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "backup list response", "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1backups~1%7BbackupId%7D/get/responses/200/content/application~1json/schema" } } } } } } }, "404": { "description": "Server not found" } } } }, "/service-instances/{instanceId}/backups/{backupId}": { "get": { "summary": "get backup", "tags": ["Backups"], "operationId": "dashboard.getbackup", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "backupId", "in": "path", "description": "id of the backup", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "backup response", "content": { "application/json": { "schema": { "title": "backup", "type": "object", "required": ["id", "name", "createdAt", "expireAt", "status"], "properties": { "id": { "type": "string", "example": "001c372f-5c15-418d-b2fb-b1f93ea2ffc8" }, "name": { "type": "string", "example": "Daily Backup" }, "createdAt": { "type": "string", "example": "2020-09-10T10:15:00.891409" }, "expireAt": { "type": "string", "example": "2020-09-13T10:15:00.891409" }, "size": { "type": "integer", "example": 55 }, "status": { "type": "string", "enum": [ "creating", "available", "deleting", "error", "restoring", "error_deleting", "backing up", "inconsistent" ], "example": "available" }, "volumeBackups": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "volumeId": { "type": "string" }, "size": { "type": "integer" }, "status": { "type": "string", "enum": [ "creating", "available", "deleting", "error", "restoring", "error_deleting" ] } }, "example": { "id": "f305beab-cedb-4958-ae4b-aa7434aa2103", "volumeId": "58335311-6acf-46c5-8652-cb96cd63181e", "size": 40, "status": "available" } } } } } } } }, "404": { "description": "Server | backup job not found" } } }, "delete": { "summary": "delete server backup", "tags": ["Backups"], "operationId": "dashboard.deleteBackup", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "backupId", "in": "path", "description": "id of the backup", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "Success" }, "404": { "description": "Server | backup job not found" } } } }, "/service-instances/{instanceId}/backups/{backupId}/volume-backups/{volumeBackupId}": { "delete": { "summary": "delete volume backup", "tags": ["Backups"], "operationId": "dashboard.deleteVolumeBackup", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "backupId", "in": "path", "description": "id of the backup", "required": true, "schema": { "type": "string" } }, { "name": "volumeBackupId", "in": "path", "description": "id of the volume backup", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "Success" }, "404": { "description": "Server | volume backup not found" } } } }, "/service-instances/{instanceId}/backups/{backupId}/restore": { "post": { "summary": "trigger restore of the requested backup", "tags": ["Backups"], "operationId": "dashboard.restore", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "backupId", "in": "path", "description": "backup id", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "required": ["startServerAfterRestore"], "properties": { "startServerAfterRestore": { "type": "boolean", "example": true }, "volumeIds": { "type": "array", "items": { "type": "string" }, "example": [ "58335311-6acf-46c5-8652-cb96cd63181e", "38345f49-047b-437d-83a1-458f04fa3182" ] } } } } } }, "responses": { "202": { "description": "Request is accepted, but processing may take some time." }, "400": { "description": "Bad Request" }, "404": { "description": "Server | backup not found" } } } }, "/service-instances/{instanceId}/backup-schedules": { "post": { "summary": "create backup schedule", "tags": ["Backup Schedules"], "operationId": "dashboard.createBackupSchedule", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "required": ["name", "rrule", "enabled"], "properties": { "name": { "type": "string", "example": "Daily Schedule" }, "rrule": { "type": "string", "example": "DTSTART;TZID=Europe/Sofia:20200803T023000 RRULE:FREQ=DAILY;INTERVAL=1" }, "enabled": { "type": "boolean", "example": true }, "backupProperties": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1backups/post/requestBody/content/application~1json/schema" } } } } } }, "responses": { "201": { "description": "Schedule created", "content": { "application/json": { "schema": { "title": "backupSchedule", "type": "object", "required": ["id", "name", "rrule", "enabled"], "properties": { "id": { "type": "integer", "example": 1480 }, "name": { "type": "string", "example": "Daily Schedule" }, "rrule": { "type": "string", "example": "DTSTART;TZID=Europe/Sofia:20200803T023000 RRULE:FREQ=DAILY;INTERVAL=1" }, "enabled": { "type": "boolean", "example": true }, "backupProperties": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1backups/post/requestBody/content/application~1json/schema" } } } } } }, "400": { "description": "Bad Request" }, "404": { "description": "Server not found" } } }, "get": { "summary": "get list of backup schedules", "tags": ["Backup Schedules"], "operationId": "dashboard.get_backup_schedules", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "schedule list response", "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1backup-schedules/post/responses/201/content/application~1json/schema" } } } } } } }, "404": { "description": "Server not found" } } } }, "/service-instances/{instanceId}/backup-schedules/{backupScheduleId}": { "get": { "summary": "get single backup schedule details", "tags": ["Backup Schedules"], "operationId": "dashboard.get_backup_schedule", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "backupScheduleId", "in": "path", "description": "backup schedule id", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "backup schedule response", "content": { "application/json": { "schema": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1backup-schedules/post/responses/201/content/application~1json/schema" } } } }, "404": { "description": "Server | backup schedule not found" } } }, "put": { "summary": "update backup schedule", "tags": ["Backup Schedules"], "operationId": "dashboard.updateBackupeSchedule", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "backupScheduleId", "in": "path", "description": "backup schedule id", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "required": ["name", "rrule", "enabled"], "properties": { "name": { "type": "string", "example": "Daily Schedule" }, "rrule": { "type": "string", "example": "DTSTART;TZID=Europe/Sofia:20200803T023000 RRULE:FREQ=DAILY;INTERVAL=1" }, "enabled": { "type": "boolean", "example": true }, "backupProperties": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1backups/post/requestBody/content/application~1json/schema" } } } } } }, "responses": { "200": { "description": "updated backup schedule", "content": { "application/json": { "schema": { "$ref": "#/paths/~1service-instances~1%7BinstanceId%7D~1backup-schedules/post/responses/201/content/application~1json/schema" } } } }, "400": { "description": "Bad Request" }, "404": { "description": "Server | schedule not found" } } }, "delete": { "summary": "delete backup schedule", "tags": ["Backup Schedules"], "operationId": "dashboard.deleteBackupSchedule", "parameters": [ { "name": "instanceId", "in": "path", "description": "openstack server id", "required": true, "schema": { "type": "string" } }, { "name": "backupScheduleId", "in": "path", "description": "backup schedule id", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "backup schedule successfully deleted" }, "404": { "description": "Server | schedule not found" } } } } }, "components": { "securitySchemes": { "bearerAuth": { "type": "http", "scheme": "bearer", "bearerFormat": "JWT" } }, "schemas": {} }}