{ "openapi": "3.1.0", "info": { "title": "Skyline API", "version": "0.1.0" }, "paths": { "/api/v1/login": { "post": { "tags": [ "Login" ], "summary": "Login", "description": "Login & get user profile.", "operationId": "login_api_v1_login_post", "parameters": [ { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Credential" } } } }, "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Profile" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LoginUnauthorizedMessage" } } }, "description": "Unauthorized" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/login/totp": { "post": { "tags": [ "Login" ], "summary": "Login Totp", "description": "Complete login with TOTP passcode after password auth.", "operationId": "login_totp_api_v1_login_totp_post", "parameters": [ { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TOTPCredential" } } } }, "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Profile" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/config": { "get": { "tags": [ "Login" ], "summary": "Get Config", "description": "Get public configuration", "operationId": "get_config_api_v1_config_get", "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Config" } } } } } } }, "/api/v1/sso": { "get": { "tags": [ "Login" ], "summary": "Get Sso", "description": "SSO configuration.", "operationId": "get_sso_api_v1_sso_get", "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SSO" } } } } } } }, "/api/v1/websso": { "post": { "tags": [ "Login" ], "summary": "Websso", "description": "Websso", "operationId": "websso_api_v1_websso_post", "parameters": [ { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "requestBody": { "required": true, "content": { "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/Body_websso_api_v1_websso_post" } } } }, "responses": { "302": { "description": "Redirect to SSO provider" }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/profile": { "get": { "tags": [ "Login" ], "summary": "Get Profile", "description": "Get user profile.", "operationId": "get_profile_api_v1_profile_get", "parameters": [ { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Profile" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/logout": { "post": { "tags": [ "Login" ], "summary": "Logout", "description": "Log out.", "operationId": "logout_api_v1_logout_post", "parameters": [ { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Message" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/switch_project/{project_id}": { "post": { "tags": [ "Login" ], "summary": "Switch Project", "description": "Switch project.", "operationId": "switch_project_api_v1_switch_project__project_id__post", "parameters": [ { "name": "project_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Project Id" } }, { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Profile" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/switch_region/{region}": { "post": { "tags": [ "Login" ], "summary": "Switch Region", "description": "Switch region.", "operationId": "switch_region_api_v1_switch_region__region__post", "parameters": [ { "name": "region", "in": "path", "required": true, "schema": { "type": "string", "title": "Region" } }, { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Profile" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/extension/servers": { "get": { "tags": [ "Extension" ], "summary": "List Servers", "description": "List Servers", "operationId": "list_servers_api_v1_extension_servers_get", "parameters": [ { "name": "limit", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "integer", "exclusiveMinimum": 0 }, { "type": "null" } ], "description": "Requests a page size of items. Returns a number of items up to a limit value.", "title": "Limit" }, "description": "Requests a page size of items. Returns a number of items up to a limit value." }, { "name": "marker", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "The ID of the last-seen item.", "title": "Marker" }, "description": "The ID of the last-seen item." }, { "name": "sort_dirs", "in": "query", "required": false, "schema": { "anyOf": [ { "$ref": "#/components/schemas/SortDir" }, { "type": "null" } ], "description": "Indicates in which directions to sort.", "title": "Sort Dirs" }, "description": "Indicates in which directions to sort." }, { "name": "sort_keys", "in": "query", "required": false, "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ServerSortKey" }, "description": "Indicates in which attributes to sort. Host is only used for admin role users", "title": "Sort Keys" }, "description": "Indicates in which attributes to sort. Host is only used for admin role users" }, { "name": "all_projects", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "List servers for all projects.", "title": "All Projects" }, "description": "List servers for all projects." }, { "name": "project_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of servers by the given project ID. Only works when the all_projects filter is also specified.", "title": "Project Id" }, "description": "Filter the list of servers by the given project ID. Only works when the all_projects filter is also specified." }, { "name": "project_name", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of servers by the given project name. Only works when the all_projects filter is also specified.", "title": "Project Name" }, "description": "Filter the list of servers by the given project name. Only works when the all_projects filter is also specified." }, { "name": "name", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of servers by the given server name. Support fuzzy query.", "title": "Name" }, "description": "Filter the list of servers by the given server name. Support fuzzy query." }, { "name": "status", "in": "query", "required": false, "schema": { "anyOf": [ { "$ref": "#/components/schemas/ServerStatus" }, { "type": "null" } ], "description": "Filter the list of servers by the given server status.", "title": "Status" }, "description": "Filter the list of servers by the given server status." }, { "name": "host", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of servers by the given host. It will be ignored for non-admin user.", "title": "Host" }, "description": "Filter the list of servers by the given host. It will be ignored for non-admin user." }, { "name": "flavor_id", "in": "query", "required": false, "schema": { "type": "string", "description": "Filter the list of servers by the given flavor ID.", "title": "Flavor Id" }, "description": "Filter the list of servers by the given flavor ID." }, { "name": "uuid", "in": "query", "required": false, "schema": { "type": "string", "description": "Filter the list of servers by the given server UUID.", "title": "Uuid" }, "description": "Filter the list of servers by the given server UUID." }, { "name": "ip", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of servers by the given IP address (only fixed, not floating). Also passed to Nova API if supported.", "title": "Ip" }, "description": "Filter the list of servers by the given IP address (only fixed, not floating). Also passed to Nova API if supported." }, { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServersResponse" } } } }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BadRequestMessage" } } }, "description": "Bad Request" }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenMessage" } } }, "description": "Forbidden" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } }, "description": "Internal Server Error" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/extension/recycle_servers": { "get": { "tags": [ "Extension" ], "summary": "List Recycle Servers", "description": "List Recycle Servers", "operationId": "list_recycle_servers_api_v1_extension_recycle_servers_get", "parameters": [ { "name": "limit", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "integer", "exclusiveMinimum": 0 }, { "type": "null" } ], "description": "Requests a page size of items. Returns a number of items up to a limit value.", "title": "Limit" }, "description": "Requests a page size of items. Returns a number of items up to a limit value." }, { "name": "marker", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "The ID of the last-seen item.", "title": "Marker" }, "description": "The ID of the last-seen item." }, { "name": "sort_dirs", "in": "query", "required": false, "schema": { "anyOf": [ { "$ref": "#/components/schemas/SortDir" }, { "type": "null" } ], "description": "Indicates in which directions to sort.", "title": "Sort Dirs" }, "description": "Indicates in which directions to sort." }, { "name": "sort_keys", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "array", "items": { "$ref": "#/components/schemas/RecycleServerSortKey" } }, { "type": "null" } ], "description": "Indicates in which attributes to sort. Updated_at is used as deleted_at", "title": "Sort Keys" }, "description": "Indicates in which attributes to sort. Updated_at is used as deleted_at" }, { "name": "all_projects", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "List recycle servers for all projects.", "title": "All Projects" }, "description": "List recycle servers for all projects." }, { "name": "project_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of recycle servers by the given project ID. Only works when the all_projects filter is also specified.", "title": "Project Id" }, "description": "Filter the list of recycle servers by the given project ID. Only works when the all_projects filter is also specified." }, { "name": "project_name", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of recycle servers by the given project name. Only works when the all_projects filter is also specified.", "title": "Project Name" }, "description": "Filter the list of recycle servers by the given project name. Only works when the all_projects filter is also specified." }, { "name": "name", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of recycle servers by the given server name. Support fuzzy query.", "title": "Name" }, "description": "Filter the list of recycle servers by the given server name. Support fuzzy query." }, { "name": "uuid", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of recycle servers by the given recycle server UUID.", "title": "Uuid" }, "description": "Filter the list of recycle servers by the given recycle server UUID." }, { "name": "ip", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of recycle servers by the given IP address (only fixed, not floating). Also passed to Nova API if supported.", "title": "Ip" }, "description": "Filter the list of recycle servers by the given IP address (only fixed, not floating). Also passed to Nova API if supported." }, { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RecycleServersResponse" } } } }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BadRequestMessage" } } }, "description": "Bad Request" }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenMessage" } } }, "description": "Forbidden" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } }, "description": "Internal Server Error" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/extension/volumes": { "get": { "tags": [ "Extension" ], "summary": "List Volumes", "description": "List Volumes", "operationId": "list_volumes_api_v1_extension_volumes_get", "parameters": [ { "name": "limit", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "integer", "exclusiveMinimum": 0 }, { "type": "null" } ], "description": "Requests a page size of items. Returns a number of items up to a limit value.", "title": "Limit" }, "description": "Requests a page size of items. Returns a number of items up to a limit value." }, { "name": "marker", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "The ID of the last-seen item.", "title": "Marker" }, "description": "The ID of the last-seen item." }, { "name": "sort_dirs", "in": "query", "required": false, "schema": { "anyOf": [ { "$ref": "#/components/schemas/SortDir" }, { "type": "null" } ], "description": "Indicates in which directions to sort.", "title": "Sort Dirs" }, "description": "Indicates in which directions to sort." }, { "name": "sort_keys", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "array", "items": { "$ref": "#/components/schemas/VolumeSortKey" } }, { "type": "null" } ], "description": "Indicates in which attributes to sort. Updated_at is used as deleted_at", "title": "Sort Keys" }, "description": "Indicates in which attributes to sort. Updated_at is used as deleted_at" }, { "name": "all_projects", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "List volumes for all projects.", "title": "All Projects" }, "description": "List volumes for all projects." }, { "name": "project_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of volumes by the given project ID.", "title": "Project Id" }, "description": "Filter the list of volumes by the given project ID." }, { "name": "name", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of volumes by the given server name.", "title": "Name" }, "description": "Filter the list of volumes by the given server name." }, { "name": "multiattach", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Filter the list of volumes by the given multiattach.", "title": "Multiattach" }, "description": "Filter the list of volumes by the given multiattach." }, { "name": "status", "in": "query", "required": false, "schema": { "anyOf": [ { "$ref": "#/components/schemas/VolumeStatus" }, { "type": "null" } ], "description": "Filter the list of volumes by the given status.", "title": "Status" }, "description": "Filter the list of volumes by the given status." }, { "name": "bootable", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Filter the list of volumes by the given bootable.", "title": "Bootable" }, "description": "Filter the list of volumes by the given bootable." }, { "name": "uuid", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ], "description": "Filter the list of volumes by the given volumes UUID.", "title": "Uuid" }, "description": "Filter the list of volumes by the given volumes UUID." }, { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VolumesResponse" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenMessage" } } }, "description": "Forbidden" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } }, "description": "Internal Server Error" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/extension/volume_snapshots": { "get": { "tags": [ "Extension" ], "summary": "List Volume Snapshots", "description": "List Volume Snapshots.", "operationId": "list_volume_snapshots_api_v1_extension_volume_snapshots_get", "parameters": [ { "name": "limit", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "integer", "exclusiveMinimum": 0 }, { "type": "null" } ], "description": "Requests a page size of items. Return items up to the limit value.", "title": "Limit" }, "description": "Requests a page size of items. Return items up to the limit value." }, { "name": "marker", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "The ID of the last-seen item.", "title": "Marker" }, "description": "The ID of the last-seen item." }, { "name": "sort_dirs", "in": "query", "required": false, "schema": { "anyOf": [ { "$ref": "#/components/schemas/SortDir" }, { "type": "null" } ], "description": "Indicates in which directions to sort.", "title": "Sort Dirs" }, "description": "Indicates in which directions to sort." }, { "name": "sort_keys", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "array", "items": { "$ref": "#/components/schemas/VolumeSnapshotSortKey" } }, { "type": "null" } ], "description": "Indicates in which attributes to sort.", "title": "Sort Keys" }, "description": "Indicates in which attributes to sort." }, { "name": "all_projects", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "List snapshots for all projects.", "title": "All Projects" }, "description": "List snapshots for all projects." }, { "name": "project_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of snapshots by the given project ID.", "title": "Project Id" }, "description": "Filter the list of snapshots by the given project ID." }, { "name": "name", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of snapshots by the given snapshot name.", "title": "Name" }, "description": "Filter the list of snapshots by the given snapshot name." }, { "name": "status", "in": "query", "required": false, "schema": { "anyOf": [ { "$ref": "#/components/schemas/VolumeSnapshotStatus" }, { "type": "null" } ], "description": "Filter the list of snapshots by the given snapshot status.", "title": "Status" }, "description": "Filter the list of snapshots by the given snapshot status." }, { "name": "volume_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of snapshots by the given volume ID.", "title": "Volume Id" }, "description": "Filter the list of snapshots by the given volume ID." }, { "name": "uuid", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of snapshots by the given snapshot UUID.", "title": "Uuid" }, "description": "Filter the list of snapshots by the given snapshot UUID." }, { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VolumeSnapshotsResponse" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenMessage" } } }, "description": "Forbidden" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } }, "description": "Internal Server Error" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/extension/ports": { "get": { "tags": [ "Extension" ], "summary": "List Ports", "description": "List Ports.", "operationId": "list_ports_api_v1_extension_ports_get", "parameters": [ { "name": "limit", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "integer", "exclusiveMinimum": 0 }, { "type": "null" } ], "description": "Requests a page size of items. Returns a number of items up to a limit value.", "title": "Limit" }, "description": "Requests a page size of items. Returns a number of items up to a limit value." }, { "name": "marker", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "The ID of the last-seen item.", "title": "Marker" }, "description": "The ID of the last-seen item." }, { "name": "sort_dirs", "in": "query", "required": false, "schema": { "anyOf": [ { "$ref": "#/components/schemas/SortDir" }, { "type": "null" } ], "description": "Indicates in which directions to sort.", "title": "Sort Dirs" }, "description": "Indicates in which directions to sort." }, { "name": "sort_keys", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "array", "items": { "$ref": "#/components/schemas/PortSortKey" } }, { "type": "null" } ], "description": "Indicates in which attributes to sort.", "title": "Sort Keys" }, "description": "Indicates in which attributes to sort." }, { "name": "all_projects", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "List ports for all projects.", "title": "All Projects" }, "description": "List ports for all projects." }, { "name": "project_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of ports by the given project ID.", "title": "Project Id" }, "description": "Filter the list of ports by the given project ID." }, { "name": "name", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of ports by the given port name.", "title": "Name" }, "description": "Filter the list of ports by the given port name." }, { "name": "status", "in": "query", "required": false, "schema": { "anyOf": [ { "$ref": "#/components/schemas/PortStatus" }, { "type": "null" } ], "description": "Filter the list of ports by the given port status.", "title": "Status" }, "description": "Filter the list of ports by the given port status." }, { "name": "network_name", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of ports by the given network name.", "title": "Network Name" }, "description": "Filter the list of ports by the given network name." }, { "name": "network_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Filter the list of ports by the given network ID.", "title": "Network Id" }, "description": "Filter the list of ports by the given network ID." }, { "name": "device_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "The ID of the device that uses this port. For example, a server instance or a logical router.", "title": "Device Id" }, "description": "The ID of the device that uses this port. For example, a server instance or a logical router." }, { "name": "device_owner", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "array", "items": { "$ref": "#/components/schemas/PortDeviceOwner" } }, { "type": "null" } ], "description": "The entity type that uses this port.", "title": "Device Owner" }, "description": "The entity type that uses this port." }, { "name": "uuid", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ], "description": "Filter the list of ports by the given port UUID.", "title": "Uuid" }, "description": "Filter the list of ports by the given port UUID." }, { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PortsResponse" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenMessage" } } }, "description": "Forbidden" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } }, "description": "Internal Server Error" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/extension/compute-services": { "get": { "tags": [ "Extension" ], "summary": "Compute Services", "description": "List compute services", "operationId": "compute_services_api_v1_extension_compute_services_get", "parameters": [ { "name": "binary", "in": "query", "required": false, "schema": { "type": "string", "description": "Filter the list of compute services by the given binary.", "title": "Binary" }, "description": "Filter the list of compute services by the given binary." }, { "name": "host", "in": "query", "required": false, "schema": { "type": "string", "description": "Filter the list of compute services by the given host.", "title": "Host" }, "description": "Filter the list of compute services by the given host." }, { "name": "X-Openstack-Request-Id", "in": "header", "required": false, "schema": { "type": "string", "pattern": "^$|^req-\\w{8}(-\\w{4}){3}-\\w{12}", "default": "", "title": "X-Openstack-Request-Id" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ComputeServicesResponse" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } }, "description": "Internal Server Error" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/query": { "get": { "tags": [ "Prometheus" ], "summary": "Prometheus Query", "description": "Prometheus query API.", "operationId": "prometheus_query_api_v1_query_get", "parameters": [ { "name": "query", "in": "query", "required": false, "schema": { "type": "string", "description": "The query expression of prometheus to filter.", "title": "Query" }, "description": "The query expression of prometheus to filter." }, { "name": "time", "in": "query", "required": false, "schema": { "type": "string", "description": "The time to filter.", "title": "Time" }, "description": "The time to filter." }, { "name": "timeout", "in": "query", "required": false, "schema": { "type": "string", "description": "The timeout to filter.", "title": "Timeout" }, "description": "The timeout to filter." } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrometheusQueryResponse" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } }, "description": "Internal Server Error" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/query_range": { "get": { "tags": [ "Prometheus" ], "summary": "Prometheus Query Range", "description": "Prometheus query_range API.", "operationId": "prometheus_query_range_api_v1_query_range_get", "parameters": [ { "name": "query", "in": "query", "required": false, "schema": { "type": "string", "description": "The query expression of prometheus to filter.", "title": "Query" }, "description": "The query expression of prometheus to filter." }, { "name": "start", "in": "query", "required": false, "schema": { "type": "string", "description": "The start time to filter.", "title": "Start" }, "description": "The start time to filter." }, { "name": "end", "in": "query", "required": false, "schema": { "type": "string", "description": "The end time to filter.", "title": "End" }, "description": "The end time to filter." }, { "name": "step", "in": "query", "required": false, "schema": { "type": "string", "description": "The step to filter.", "title": "Step" }, "description": "The step to filter." }, { "name": "timeout", "in": "query", "required": false, "schema": { "type": "string", "description": "The timeout to filter.", "title": "Timeout" }, "description": "The timeout to filter." } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrometheusQueryRangeResponse" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "500": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } }, "description": "Internal Server Error" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/contrib/keystone_endpoints": { "get": { "tags": [ "Contrib" ], "summary": "List Keystone Endpoints", "description": "List Keystone Endpoints", "operationId": "list_keystone_endpoints_api_v1_contrib_keystone_endpoints_get", "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/KeystoneEndpoints" }, "type": "array", "title": "Response 200 List Keystone Endpoints Api V1 Contrib Keystone Endpoints Get" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } } } } } }, "/api/v1/contrib/domains": { "get": { "tags": [ "Contrib" ], "summary": "List Domains", "description": "List Domains", "operationId": "list_domains_api_v1_contrib_domains_get", "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "items": { "type": "string" }, "type": "array", "title": "Response 200 List Domains Api V1 Contrib Domains Get" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } } } } } }, "/api/v1/contrib/regions": { "get": { "tags": [ "Contrib" ], "summary": "List Regions", "description": "List Regions", "operationId": "list_regions_api_v1_contrib_regions_get", "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "items": { "type": "string" }, "type": "array", "title": "Response 200 List Regions Api V1 Contrib Regions Get" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } } } } } }, "/api/v1/policies": { "get": { "tags": [ "Policy" ], "summary": "List Policies", "description": "List policies and permissions", "operationId": "list_policies_api_v1_policies_get", "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Policies" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } } } } } }, "/api/v1/policies/check": { "post": { "tags": [ "Policy" ], "summary": "Check Policies", "description": "Check policies permissions", "operationId": "check_policies_api_v1_policies_check_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PoliciesRules" } } }, "required": true }, "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Policies" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenMessage" } } } }, "500": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InternalServerErrorMessage" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/setting/{key}": { "get": { "tags": [ "Setting" ], "summary": "Show Setting", "description": "Get a setting item.", "operationId": "show_setting_api_v1_setting__key__get", "parameters": [ { "name": "key", "in": "path", "required": true, "schema": { "type": "string", "title": "Key" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Setting" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NotFoundMessage" } } }, "description": "Not Found" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "delete": { "tags": [ "Setting" ], "summary": "Reset Setting", "description": "Reset a setting item to default", "operationId": "reset_setting_api_v1_setting__key__delete", "parameters": [ { "name": "key", "in": "path", "required": true, "schema": { "type": "string", "title": "Key" } } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Setting" } } } }, "401": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } }, "description": "Unauthorized" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenMessage" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NotFoundMessage" } } }, "description": "Not Found" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/setting": { "put": { "tags": [ "Setting" ], "summary": "Update Setting", "description": "Update a setting item.", "operationId": "update_setting_api_v1_setting_put", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateSetting" } } }, "required": true }, "responses": { "200": { "description": "ok", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Setting" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenMessage" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NotFoundMessage" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/settings": { "get": { "tags": [ "Setting" ], "summary": "List Settings", "description": "Get all settings.", "operationId": "list_settings_api_v1_settings_get", "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Settings" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } } } } } }, "components": { "schemas": { "BadRequestMessage": { "properties": { "detail": { "type": "string", "title": "Detail", "description": "Detail message" } }, "type": "object", "required": [ "detail" ], "title": "BadRequestMessage" }, "Body_websso_api_v1_websso_post": { "properties": { "token": { "type": "string", "title": "Token" } }, "type": "object", "required": [ "token" ], "title": "Body_websso_api_v1_websso_post" }, "ComputeServicesResponse": { "properties": { "services": { "items": { "$ref": "#/components/schemas/ComputeServicesResponseBase" }, "type": "array", "title": "Services", "description": "Services list" } }, "type": "object", "required": [ "services" ], "title": "ComputeServicesResponse" }, "ComputeServicesResponseBase": { "properties": { "id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Id", "description": "Service id" }, "binary": { "type": "string", "title": "Binary", "description": "Service binary" }, "disabled_reason": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Disabled Reason", "description": "Disabled reason" }, "host": { "type": "string", "title": "Host", "description": "Host name" }, "state": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "State", "description": "Service state" }, "status": { "type": "string", "title": "Status", "description": "Service status" }, "updated_at": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Updated At", "description": "Updated at" }, "forced_down": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Forced Down", "description": "Forced down" }, "zone": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Zone", "description": "Zone" } }, "type": "object", "required": [ "binary", "host", "status" ], "title": "ComputeServicesResponseBase" }, "Config": { "properties": { "default_domain": { "type": "string", "title": "Default Domain" }, "default_region": { "type": "string", "title": "Default Region" } }, "type": "object", "required": [ "default_domain", "default_region" ], "title": "Config" }, "Credential": { "properties": { "region": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Region", "description": "Credential identity service region" }, "domain": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Domain", "description": "Credential user domain" }, "username": { "type": "string", "title": "Username", "description": "Credential username" }, "password": { "type": "string", "title": "Password", "description": "Credential password for user" } }, "type": "object", "required": [ "username", "password" ], "title": "Credential", "examples": [ { "domain": "default", "password": "admin", "region": "RegionOne", "username": "admin" } ] }, "Domain": { "properties": { "id": { "type": "string", "title": "Id", "description": "Domain ID" }, "name": { "type": "string", "title": "Name", "description": "Domain name" } }, "type": "object", "required": [ "id", "name" ], "title": "Domain" }, "FlavorInServer": { "properties": { "ephemeral": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Ephemeral", "description": "Ephemeral disk size in GB" }, "ram": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Ram", "description": "RAM size in MB" }, "original_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Original Name", "description": "Original flavor name" }, "vcpus": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Vcpus", "description": "Number of vCPUs" }, "extra_specs": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Extra Specs", "description": "Extra specs" }, "swap": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Swap", "description": "Swap size in MB" }, "disk": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Disk", "description": "Disk size in GB" } }, "type": "object", "title": "FlavorInServer" }, "ForbiddenMessage": { "properties": { "detail": { "type": "string", "title": "Detail", "description": "Detail message" } }, "type": "object", "required": [ "detail" ], "title": "ForbiddenMessage" }, "HTTPValidationError": { "properties": { "detail": { "items": { "$ref": "#/components/schemas/ValidationError" }, "type": "array", "title": "Detail" } }, "type": "object", "title": "HTTPValidationError" }, "InternalServerErrorMessage": { "properties": { "detail": { "type": "string", "title": "Detail", "description": "Detail message" } }, "type": "object", "required": [ "detail" ], "title": "InternalServerErrorMessage" }, "KeystoneEndpoints": { "properties": { "region_name": { "type": "string", "title": "Region Name", "description": "Region name" }, "url": { "type": "string", "title": "Url", "description": "Endpoint URL" } }, "type": "object", "required": [ "region_name", "url" ], "title": "KeystoneEndpoints" }, "LoginUnauthorizedMessage": { "properties": { "detail": { "anyOf": [ { "type": "string" }, { "$ref": "#/components/schemas/TOTPRequiredDetail" } ], "title": "Detail", "description": "Unauthorized detail message or TOTP challenge payload" } }, "type": "object", "required": [ "detail" ], "title": "LoginUnauthorizedMessage" }, "Message": { "properties": { "message": { "type": "string", "title": "Message", "description": "Message" }, "code": { "type": "integer", "title": "Code", "description": "Code", "default": 200 }, "title": { "type": "string", "title": "Title", "description": "Title", "default": "OK" } }, "type": "object", "required": [ "message" ], "title": "Message" }, "NotFoundMessage": { "properties": { "detail": { "type": "string", "title": "Detail", "description": "Detail message" } }, "type": "object", "required": [ "detail" ], "title": "NotFoundMessage" }, "Policies": { "properties": { "policies": { "items": { "$ref": "#/components/schemas/Policy" }, "type": "array", "title": "Policies", "description": "Policies list" } }, "type": "object", "required": [ "policies" ], "title": "Policies" }, "PoliciesRules": { "properties": { "rules": { "items": { "type": "string" }, "type": "array", "title": "Rules", "description": "Policies rules list" }, "target": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "title": "Target", "description": "Policies targets" } }, "type": "object", "required": [ "rules" ], "title": "PoliciesRules" }, "Policy": { "properties": { "rule": { "type": "string", "title": "Rule", "description": "Policy rule" }, "allowed": { "type": "boolean", "title": "Allowed", "description": "Policy allowed" } }, "type": "object", "required": [ "rule", "allowed" ], "title": "Policy" }, "PortDeviceOwner": { "type": "string", "enum": [ "", "compute:nova", "compute:kuryr", "network:router_ha_interface", "network:ha_router_replicated_interface", "network:router_interface", "network:router_gateway", "network:floatingip", "network:local_ip", "network:dhcp", "network:router_interface_distributed", "network:floatingip_agent_gateway", "network:router_centralized_snat", "network:routed", "network:distributed", "Octavia" ], "title": "PortDeviceOwner" }, "PortSortKey": { "type": "string", "enum": [ "id", "name", "mac_address", "status", "project_id" ], "title": "PortSortKey" }, "PortStatus": { "type": "string", "enum": [ "ACTIVE", "DOWN", "BUILD", "ERROR", "N/A" ], "title": "PortStatus" }, "PortsResponse": { "properties": { "ports": { "items": { "$ref": "#/components/schemas/PortsResponseBase" }, "type": "array", "title": "Ports", "description": "Ports list" } }, "type": "object", "required": [ "ports" ], "title": "PortsResponse" }, "PortsResponseBase": { "properties": { "id": { "type": "string", "title": "Id", "description": "Port ID" }, "origin_data": { "additionalProperties": true, "type": "object", "title": "Origin Data", "description": "The origin_data is the same like the response of https://docs.openstack.org/api-ref/network/v2/index.html?expanded=list-ports-detail#list-ports" }, "server_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Server Name", "description": "Server name" }, "network_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Network Name", "description": "Network name" }, "ipv4": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Ipv4", "description": "IPv4 addresses" }, "ipv6": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Ipv6", "description": "IPv6 addresses" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name", "description": "Will be removed, please use origin_data[name]", "deprecated": true }, "mac_address": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Mac Address", "description": "Will be removed, please use origin_data[mac_address]", "deprecated": true }, "project_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Project Id", "description": "Will be removed, please use origin_data[project_id]", "deprecated": true }, "device_owner": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Device Owner", "description": "Will be removed, please use origin_data[device_owner]", "deprecated": true }, "device_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Device Id", "description": "Will be removed, please use origin_data[device_id]", "deprecated": true }, "status": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Status", "description": "Will be removed, please use origin_data[status]", "deprecated": true }, "created_at": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Created At", "description": "Will be removed, please use origin_data[created_at]", "deprecated": true }, "network_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Network Id", "description": "Will be removed, please use origin_data[network_id]", "deprecated": true }, "binding_vnic_type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Binding Vnic Type", "description": "Will be removed, please use origin_data[binding:vnic_type]", "deprecated": true }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description", "description": "Will be removed, please use origin_data[description]", "deprecated": true }, "port_security_enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Port Security Enabled", "description": "Will be removed, please use origin_data[port_security_enabled]", "deprecated": true }, "qos_policy_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Qos Policy Id", "description": "Will be removed, please use origin_data[qos_policy_id]", "deprecated": true }, "fixed_ips": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Fixed Ips", "description": "Will be removed, please use origin_data[fixed_ips]", "deprecated": true } }, "type": "object", "required": [ "id", "origin_data", "name", "mac_address", "project_id", "device_owner", "device_id", "status", "created_at", "network_id", "binding_vnic_type", "description", "port_security_enabled", "qos_policy_id", "fixed_ips" ], "title": "PortsResponseBase" }, "Profile": { "properties": { "keystone_token": { "type": "string", "title": "Keystone Token", "description": "Keystone token" }, "region": { "type": "string", "title": "Region", "description": "User region" }, "exp": { "type": "integer", "title": "Exp", "description": "Token expiration time" }, "uuid": { "type": "string", "title": "Uuid", "description": "UUID" }, "project": { "$ref": "#/components/schemas/Project", "description": "User project" }, "user": { "$ref": "#/components/schemas/User", "description": "User" }, "roles": { "items": { "$ref": "#/components/schemas/Role" }, "type": "array", "title": "Roles", "description": "User roles" }, "keystone_token_exp": { "type": "string", "title": "Keystone Token Exp", "description": "Keystone token expiration time" }, "base_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Base Domains", "description": "User base domains" }, "endpoints": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Endpoints", "description": "Keystone endpoints" }, "projects": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Projects", "description": "User projects" }, "default_project_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Default Project Id", "description": "User default project ID" }, "version": { "type": "string", "title": "Version", "description": "Version" }, "regions": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Regions", "description": "Available regions for the user" } }, "type": "object", "required": [ "keystone_token", "region", "exp", "uuid", "project", "user", "roles", "keystone_token_exp", "version" ], "title": "Profile" }, "Project": { "properties": { "id": { "type": "string", "title": "Id", "description": "Project ID" }, "name": { "type": "string", "title": "Name", "description": "Project name" }, "domain": { "$ref": "#/components/schemas/Domain", "description": "Project domain" } }, "type": "object", "required": [ "id", "name", "domain" ], "title": "Project" }, "PrometheusQueryData": { "properties": { "resultType": { "type": "string", "title": "Resulttype", "description": "Prometheus result type" }, "result": { "items": { "$ref": "#/components/schemas/PrometheusQueryResult" }, "type": "array", "title": "Result", "description": "Prometheus query result" } }, "type": "object", "required": [ "resultType", "result" ], "title": "PrometheusQueryData" }, "PrometheusQueryRangeData": { "properties": { "resultType": { "type": "string", "title": "Resulttype", "description": "Prometheus result type" }, "result": { "items": { "$ref": "#/components/schemas/PrometheusQueryRangeResult" }, "type": "array", "title": "Result", "description": "Prometheus query range result" } }, "type": "object", "required": [ "resultType", "result" ], "title": "PrometheusQueryRangeData" }, "PrometheusQueryRangeResponse": { "properties": { "status": { "type": "string", "title": "Status", "description": "Prometheus status" }, "errorType": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Errortype", "description": "Prometheus error type" }, "error": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Error", "description": "Prometheus error" }, "warnings": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Warnings", "description": "Prometheus warnings" }, "data": { "anyOf": [ { "$ref": "#/components/schemas/PrometheusQueryRangeData" }, { "type": "null" } ], "description": "Prometheus query range data" } }, "type": "object", "required": [ "status" ], "title": "PrometheusQueryRangeResponse" }, "PrometheusQueryRangeResult": { "properties": { "metric": { "additionalProperties": { "type": "string" }, "type": "object", "title": "Metric", "description": "Prometheus metric" }, "value": { "items": {}, "type": "array", "title": "Value", "description": "Prometheus metric value" } }, "type": "object", "required": [ "metric", "value" ], "title": "PrometheusQueryRangeResult" }, "PrometheusQueryResponse": { "properties": { "status": { "type": "string", "title": "Status", "description": "Prometheus status" }, "errorType": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Errortype", "description": "Prometheus error type" }, "error": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Error", "description": "Prometheus error" }, "warnings": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Warnings", "description": "Prometheus warnings" }, "data": { "anyOf": [ { "$ref": "#/components/schemas/PrometheusQueryData" }, { "type": "null" } ], "description": "Prometheus query data" } }, "type": "object", "required": [ "status" ], "title": "PrometheusQueryResponse" }, "PrometheusQueryResult": { "properties": { "metric": { "additionalProperties": { "type": "string" }, "type": "object", "title": "Metric", "description": "Prometheus metric" }, "value": { "items": {}, "type": "array", "title": "Value", "description": "Prometheus metric value" } }, "type": "object", "required": [ "metric", "value" ], "title": "PrometheusQueryResult" }, "RecycleServerSortKey": { "type": "string", "enum": [ "uuid", "display_name", "updated_at", "project_id" ], "title": "RecycleServerSortKey" }, "RecycleServersResponse": { "properties": { "recycle_servers": { "items": { "$ref": "#/components/schemas/RecycleServersResponseBase" }, "type": "array", "title": "Recycle Servers", "description": "Recycle servers list" } }, "type": "object", "required": [ "recycle_servers" ], "title": "RecycleServersResponse" }, "RecycleServersResponseBase": { "properties": { "id": { "type": "string", "format": "uuid4", "title": "Id", "description": "Recycle server id" }, "origin_data": { "additionalProperties": true, "type": "object", "title": "Origin Data", "description": "The origin_data is the same like the response of https://docs.openstack.org/api-ref/compute/?expanded=list-servers-detailed-detail#list-servers-detailed" }, "project_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Project Name", "description": "Project name" }, "image": { "anyOf": [ { "type": "string", "format": "uuid4" }, { "type": "null" } ], "title": "Image", "description": "Image id" }, "image_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Image Name", "description": "Image name" }, "image_os_distro": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Image Os Distro", "description": "Image os distro" }, "fixed_addresses": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Fixed Addresses", "description": "Fixed addresses" }, "floating_addresses": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Floating Addresses", "description": "Floating addresses" }, "deleted_at": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Deleted At", "description": "Deleted at" }, "updated_at": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Updated At", "description": "Updated at" }, "reclaim_timestamp": { "type": "number", "title": "Reclaim Timestamp", "description": "Reclaim timestamp" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name", "description": "Will be removed, please use origin_data[name]", "deprecated": true }, "project_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Project Id", "description": "Will be removed, please use origin_data[tenant_id]", "deprecated": true }, "host": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Host", "description": "Will be removed, please use origin_data[OS-EXT-SRV-ATTR:host]", "deprecated": true }, "hostname": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Hostname", "description": "Will be removed, please use origin_data[OS-EXT-SRV-ATTR:hostname]", "deprecated": true }, "flavor": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Flavor", "description": "Will be removed, please use origin_data[flavor][original_name]", "deprecated": true }, "flavor_info": { "anyOf": [ { "$ref": "#/components/schemas/FlavorInServer" }, { "type": "null" } ], "description": "Will be removed, please use origin_data[flavor]", "deprecated": true }, "status": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Status", "description": "Will be removed, please use origin_data[status]", "deprecated": true } }, "type": "object", "required": [ "id", "origin_data", "reclaim_timestamp", "name", "project_id", "host", "hostname", "flavor", "flavor_info", "status" ], "title": "RecycleServersResponseBase" }, "Role": { "properties": { "id": { "type": "string", "title": "Id", "description": "Role ID" }, "name": { "type": "string", "title": "Name", "description": "Role name" } }, "type": "object", "required": [ "id", "name" ], "title": "Role" }, "SSO": { "properties": { "enable_sso": { "type": "boolean", "title": "Enable Sso" }, "protocols": { "items": { "$ref": "#/components/schemas/SSOInfo" }, "type": "array", "title": "Protocols" } }, "type": "object", "required": [ "enable_sso", "protocols" ], "title": "SSO" }, "SSOInfo": { "properties": { "protocol": { "type": "string", "title": "Protocol" }, "url": { "type": "string", "title": "Url" } }, "type": "object", "required": [ "protocol", "url" ], "title": "SSOInfo" }, "ServerSortKey": { "type": "string", "enum": [ "uuid", "display_name", "vm_state", "locked", "created_at", "host", "project_id" ], "title": "ServerSortKey" }, "ServerStatus": { "type": "string", "enum": [ "ACTIVE", "BUILD", "ERROR", "HARD_REBOOT", "MIGRATING", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN" ], "title": "ServerStatus" }, "ServersResponse": { "properties": { "servers": { "items": { "$ref": "#/components/schemas/ServersResponseBase" }, "type": "array", "title": "Servers", "description": "Servers list" } }, "type": "object", "required": [ "servers" ], "title": "ServersResponse" }, "ServersResponseBase": { "properties": { "id": { "type": "string", "format": "uuid4", "title": "Id", "description": "Server ID" }, "origin_data": { "additionalProperties": true, "type": "object", "title": "Origin Data", "description": "The origin_data is the same like the response of https://docs.openstack.org/api-ref/compute/?expanded=list-servers-detailed-detail#list-servers-detailed" }, "project_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Project Name", "description": "Project name" }, "image": { "anyOf": [ { "type": "string", "format": "uuid4" }, { "type": "null" } ], "title": "Image", "description": "Image ID" }, "image_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Image Name", "description": "Image name" }, "image_os_distro": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Image Os Distro", "description": "Image OS distro" }, "fixed_addresses": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Fixed Addresses", "description": "Fixed addresses" }, "floating_addresses": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Floating Addresses", "description": "Floating addresses" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name", "description": "Will be removed, please use origin_data[name]", "deprecated": true }, "project_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Project Id", "description": "Will be removed, please use origin_data[tenant_id]", "deprecated": true }, "host": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Host", "description": "Will be removed, please use origin_data[OS-EXT-SRV-ATTR:host]", "deprecated": true }, "hostname": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Hostname", "description": "Will be removed, please use origin_data[OS-EXT-SRV-ATTR:hostname]", "deprecated": true }, "flavor": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Flavor", "description": "Will be removed, please use origin_data[flavor][original_name]", "deprecated": true }, "flavor_info": { "anyOf": [ { "$ref": "#/components/schemas/FlavorInServer" }, { "type": "null" } ], "description": "Will be removed, please use origin_data[flavor]", "deprecated": true }, "status": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Status", "description": "Will be removed, please use origin_data[status]", "deprecated": true }, "locked": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Locked", "description": "Will be removed, please use origin_data[locked]", "deprecated": true }, "created_at": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Created At", "description": "Will be removed, please use origin_data[created]", "deprecated": true }, "task_state": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Task State", "description": "Will be removed, please use origin_data[OS-EXT-STS:task_state]", "deprecated": true }, "vm_state": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Vm State", "description": "Will be removed, please use origin_data[OS-EXT-STS:vm_state]", "deprecated": true }, "power_state": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Power State", "description": "Will be removed, please use origin_data[OS-EXT-STS:power_state]", "deprecated": true }, "root_device_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Root Device Name", "description": "Will be removed, please use origin_data[OS-EXT-SRV-ATTR:root_device_name]", "deprecated": true }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata", "description": "Will be removed, please use origin_data[metadata]", "deprecated": true } }, "type": "object", "required": [ "id", "origin_data", "name", "project_id", "host", "hostname", "flavor", "flavor_info", "status", "locked", "created_at", "task_state", "vm_state", "power_state", "root_device_name", "metadata" ], "title": "ServersResponseBase" }, "Setting": { "properties": { "key": { "type": "string", "title": "Key", "description": "Key of setting" }, "value": { "title": "Value", "description": "Value of setting" }, "hidden": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Hidden", "description": "Hidden setting or not" }, "restart_service": { "type": "boolean", "title": "Restart Service", "description": "Restart service or not to apply setting" } }, "type": "object", "required": [ "key", "value", "restart_service" ], "title": "Setting" }, "Settings": { "properties": { "settings": { "items": { "$ref": "#/components/schemas/Setting" }, "type": "array", "title": "Settings", "description": "Settings" } }, "type": "object", "required": [ "settings" ], "title": "Settings" }, "SortDir": { "type": "string", "enum": [ "desc", "asc" ], "title": "SortDir" }, "TOTPCredential": { "properties": { "region": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Region", "description": "Credential identity service region" }, "domain": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Domain", "description": "Credential user domain" }, "username": { "type": "string", "title": "Username", "description": "Credential username" }, "passcode": { "type": "string", "pattern": "^\\d{6}$", "title": "Passcode", "description": "TOTP passcode" }, "receipt": { "type": "string", "title": "Receipt", "description": "Keystone receipt from first auth step" } }, "type": "object", "required": [ "username", "passcode", "receipt" ], "title": "TOTPCredential", "examples": [ { "domain": "default", "passcode": "123456", "receipt": "receipt-token-from-first-step", "region": "RegionOne", "username": "admin" } ] }, "TOTPRequiredDetail": { "properties": { "totp_required": { "type": "boolean", "const": true, "title": "Totp Required", "default": true }, "receipt": { "type": "string", "title": "Receipt", "description": "Keystone receipt from first auth step" } }, "type": "object", "required": [ "receipt" ], "title": "TOTPRequiredDetail" }, "UnauthorizedMessage": { "properties": { "detail": { "type": "string", "title": "Detail", "description": "Detail message" } }, "type": "object", "required": [ "detail" ], "title": "UnauthorizedMessage" }, "UpdateSetting": { "properties": { "key": { "type": "string", "title": "Key", "description": "Key of setting" }, "value": { "title": "Value", "description": "Value of setting" } }, "type": "object", "required": [ "key", "value" ], "title": "UpdateSetting" }, "User": { "properties": { "id": { "type": "string", "title": "Id", "description": "User ID" }, "name": { "type": "string", "title": "Name", "description": "User name" }, "domain": { "$ref": "#/components/schemas/Domain", "description": "User domain" } }, "type": "object", "required": [ "id", "name", "domain" ], "title": "User" }, "ValidationError": { "properties": { "loc": { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" } ] }, "type": "array", "title": "Location" }, "msg": { "type": "string", "title": "Message" }, "type": { "type": "string", "title": "Error Type" }, "input": { "title": "Input" }, "ctx": { "type": "object", "title": "Context" } }, "type": "object", "required": [ "loc", "msg", "type" ], "title": "ValidationError" }, "VolumeAttachment": { "properties": { "id": { "type": "string", "title": "Id", "description": "Volume attachment id" }, "device": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Device", "description": "Device name" }, "server_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Server Id", "description": "Server id" }, "server_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Server Name", "description": "Server name" } }, "type": "object", "required": [ "id" ], "title": "VolumeAttachment" }, "VolumeSnapshotChildVolume": { "properties": { "volume_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Volume Id", "description": "ID of volume", "examples": [ "00000000-0000-0000-0000-000000000000" ] }, "volume_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Volume Name", "description": "Name of volume", "examples": [ "child-volume-demo" ] } }, "type": "object", "title": "VolumeSnapshotChildVolume" }, "VolumeSnapshotSortKey": { "type": "string", "enum": [ "id", "name", "status", "created_at" ], "title": "VolumeSnapshotSortKey" }, "VolumeSnapshotStatus": { "type": "string", "enum": [ "CREATING", "AVAILABLE", "DELETING", "ERROR", "ERROR_DELETING" ], "title": "VolumeSnapshotStatus" }, "VolumeSnapshotsResponse": { "properties": { "count": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Count", "description": "Count of volume snapshots", "default": 0 }, "volume_snapshots": { "items": { "$ref": "#/components/schemas/VolumeSnapshotsResponseBase" }, "type": "array", "title": "Volume Snapshots", "description": "Volume snapshots list" } }, "type": "object", "required": [ "volume_snapshots" ], "title": "VolumeSnapshotsResponse" }, "VolumeSnapshotsResponseBase": { "properties": { "id": { "type": "string", "title": "Id", "description": "Snapshot ID" }, "origin_data": { "additionalProperties": true, "type": "object", "title": "Origin Data", "description": "The origin_data is the same like the response of https://docs.openstack.org/api-ref/block-storage/v3/index.html?expanded=list-snapshots-and-details-detail#list-snapshots-and-details" }, "project_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Project Name", "description": "Project name" }, "host": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Host", "description": "Host name" }, "volume_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Volume Name", "description": "Name of volume", "examples": [ "volume-demo" ] }, "child_volumes": { "anyOf": [ { "items": { "$ref": "#/components/schemas/VolumeSnapshotChildVolume" }, "type": "array" }, { "type": "null" } ], "title": "Child Volumes", "description": "Child volumes" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name", "description": "Will be removed, please use origin_data[name]", "deprecated": true }, "project_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Project Id", "description": "Will be removed, please use origin_data[os-extended-snapshot-attributes:project_id]", "deprecated": true }, "size": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Size", "description": "Will be removed, please use origin_data[size]", "deprecated": true }, "status": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Status", "description": "Will be removed, please use origin_data[status]", "deprecated": true }, "volume_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Volume Id", "description": "Will be removed, please use origin_data[volume_id]", "deprecated": true }, "created_at": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Created At", "description": "Will be removed, please use origin_data[created_at]", "deprecated": true }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata", "description": "Will be removed, please use origin_data[metadata]", "deprecated": true } }, "type": "object", "required": [ "id", "origin_data", "name", "project_id", "size", "status", "volume_id", "created_at", "metadata" ], "title": "VolumeSnapshotsResponseBase" }, "VolumeSortKey": { "type": "string", "enum": [ "id", "name", "size", "status", "bootable", "created_at" ], "title": "VolumeSortKey" }, "VolumeStatus": { "type": "string", "enum": [ "creating", "available", "reserved", "attaching", "detaching", "in-use", "maintenance", "deleting", "awaiting-transfer", "error", "error_deleting", "backing-up", "restoring-backup", "error_backing-up", "error_restoring", "error_extending", "downloading", "uploading", "retyping", "extending" ], "title": "VolumeStatus" }, "VolumesResponse": { "properties": { "count": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Count", "description": "Count of volumes", "default": 0 }, "volumes": { "items": { "$ref": "#/components/schemas/VolumesResponseBase" }, "type": "array", "title": "Volumes", "description": "Volumes list" } }, "type": "object", "required": [ "volumes" ], "title": "VolumesResponse" }, "VolumesResponseBase": { "properties": { "id": { "type": "string", "format": "uuid4", "title": "Id", "description": "Volume ID" }, "origin_data": { "additionalProperties": true, "type": "object", "title": "Origin Data", "description": "The origin_data is the same like the response of https://docs.openstack.org/api-ref/block-storage/v3/index.html?expanded=list-accessible-volumes-with-details-detail#list-accessible-volumes-with-details" }, "project_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Project Name", "description": "Project name" }, "attachments": { "anyOf": [ { "items": { "$ref": "#/components/schemas/VolumeAttachment" }, "type": "array" }, { "type": "null" } ], "title": "Attachments", "description": "Volume attachments" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name", "description": "Will be removed, please use origin_data[name]", "deprecated": true }, "project_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Project Id", "description": "Will be removed, please use origin_data[os-vol-tenant-attr:tenant_id]", "deprecated": true }, "host": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Host", "description": "Will be removed, please use origin_data[os-vol-host-attr:host]", "deprecated": true }, "snapshot_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Snapshot Id", "description": "Will be removed, please use origin_data[snapshot_id]", "deprecated": true }, "source_volid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Volid", "description": "Will be removed, please use origin_data[source_volid]", "deprecated": true }, "size": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Size", "description": "Will be removed, please use origin_data[size]", "deprecated": true }, "status": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Status", "description": "Will be removed, please use origin_data[status]", "deprecated": true }, "volume_type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Volume Type", "description": "Will be removed, please use origin_data[volume_type]", "deprecated": true }, "encrypted": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Encrypted", "description": "Will be removed, please use origin_data[encrypted]", "deprecated": true }, "bootable": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Bootable", "description": "Will be removed, please use origin_data[bootable]", "deprecated": true }, "multiattach": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Multiattach", "description": "Will be removed, please use origin_data[multiattach]", "deprecated": true }, "availability_zone": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Availability Zone", "description": "Will be removed, please use origin_data[availability_zone]", "deprecated": true }, "created_at": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Created At", "description": "Will be removed, please use origin_data[created_at]", "deprecated": true } }, "type": "object", "required": [ "id", "origin_data", "name", "project_id", "host", "snapshot_id", "source_volid", "size", "status", "volume_type", "encrypted", "bootable", "multiattach", "availability_zone", "created_at" ], "title": "VolumesResponseBase" } } } }