{ "openapi": "3.0.2", "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": [ { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Credential" } } }, "required": true }, "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Profile" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/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": [ { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "requestBody": { "content": { "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/Body_websso_api_v1_websso_post" } } }, "required": true }, "responses": { "302": { "description": "Redirect" }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "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": [ { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Profile" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "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": [ { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "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": [ { "required": true, "schema": { "title": "Project Id", "type": "string" }, "name": "project_id", "in": "path" }, { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Profile" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "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": [ { "description": "Requests a page size of items. Returns a number of items up to a limit value.", "required": false, "schema": { "title": "Limit", "exclusiveMinimum": 0.0, "type": "integer", "description": "Requests a page size of items. Returns a number of items up to a limit value." }, "name": "limit", "in": "query" }, { "description": "The ID of the last-seen item.", "required": false, "schema": { "title": "Marker", "type": "string", "description": "The ID of the last-seen item." }, "name": "marker", "in": "query" }, { "description": "Indicates in which directions to sort.", "required": false, "schema": { "allOf": [ { "$ref": "#/components/schemas/SortDir" } ], "description": "Indicates in which directions to sort." }, "name": "sort_dirs", "in": "query" }, { "description": "Indicates in which attributes to sort. Host is only used for admin role users", "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" }, "name": "sort_keys", "in": "query" }, { "description": "List servers for all projects.", "required": false, "schema": { "title": "All Projects", "type": "boolean", "description": "List servers for all projects." }, "name": "all_projects", "in": "query" }, { "description": "Filter the list of servers by the given project ID. Only works when the all_projects filter is also specified.", "required": false, "schema": { "title": "Project Id", "type": "string", "description": "Filter the list of servers by the given project ID. Only works when the all_projects filter is also specified." }, "name": "project_id", "in": "query" }, { "description": "Filter the list of servers by the given project name. Only works when the all_projects filter is also specified.", "required": false, "schema": { "title": "Project Name", "type": "string", "description": "Filter the list of servers by the given project name. Only works when the all_projects filter is also specified." }, "name": "project_name", "in": "query" }, { "description": "Filter the list of servers by the given server name. Support fuzzy query.", "required": false, "schema": { "title": "Name", "type": "string", "description": "Filter the list of servers by the given server name. Support fuzzy query." }, "name": "name", "in": "query" }, { "description": "Filter the list of servers by the given server status.", "required": false, "schema": { "allOf": [ { "$ref": "#/components/schemas/ServerStatus" } ], "description": "Filter the list of servers by the given server status." }, "name": "status", "in": "query" }, { "description": "Filter the list of servers by the given host. It will be ignored for non-admin user.", "required": false, "schema": { "title": "Host", "type": "string", "description": "Filter the list of servers by the given host. It will be ignored for non-admin user." }, "name": "host", "in": "query" }, { "description": "Filter the list of servers by the given flavor ID.", "required": false, "schema": { "title": "Flavor Id", "type": "string", "description": "Filter the list of servers by the given flavor ID." }, "name": "flavor_id", "in": "query" }, { "description": "Filter the list of servers by the given server UUID.", "required": false, "schema": { "title": "Uuid", "type": "string", "description": "Filter the list of servers by the given server UUID." }, "name": "uuid", "in": "query" }, { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServersResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BadRequestMessage" } } } }, "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/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": [ { "description": "Requests a page size of items. Returns a number of items up to a limit value.", "required": false, "schema": { "title": "Limit", "exclusiveMinimum": 0.0, "type": "integer", "description": "Requests a page size of items. Returns a number of items up to a limit value." }, "name": "limit", "in": "query" }, { "description": "The ID of the last-seen item.", "required": false, "schema": { "title": "Marker", "type": "string", "description": "The ID of the last-seen item." }, "name": "marker", "in": "query" }, { "description": "Indicates in which directions to sort.", "required": false, "schema": { "allOf": [ { "$ref": "#/components/schemas/SortDir" } ], "description": "Indicates in which directions to sort." }, "name": "sort_dirs", "in": "query" }, { "description": "Indicates in which attributes to sort. Updated_at is used as deleted_at", "required": false, "schema": { "type": "array", "items": { "$ref": "#/components/schemas/RecycleServerSortKey" }, "description": "Indicates in which attributes to sort. Updated_at is used as deleted_at" }, "name": "sort_keys", "in": "query" }, { "description": "List recycle servers for all projects.", "required": false, "schema": { "title": "All Projects", "type": "boolean", "description": "List recycle servers for all projects." }, "name": "all_projects", "in": "query" }, { "description": "Filter the list of recycle servers by the given project ID. Only works when the all_projects filter is also specified.", "required": false, "schema": { "title": "Project Id", "type": "string", "description": "Filter the list of recycle servers by the given project ID. Only works when the all_projects filter is also specified." }, "name": "project_id", "in": "query" }, { "description": "Filter the list of recycle servers by the given project name. Only works when the all_projects filter is also specified.", "required": false, "schema": { "title": "Project Name", "type": "string", "description": "Filter the list of recycle servers by the given project name. Only works when the all_projects filter is also specified." }, "name": "project_name", "in": "query" }, { "description": "Filter the list of recycle servers by the given server name. Support fuzzy query.", "required": false, "schema": { "title": "Name", "type": "string", "description": "Filter the list of recycle servers by the given server name. Support fuzzy query." }, "name": "name", "in": "query" }, { "description": "Filter the list of recycle servers by the given recycle server UUID.", "required": false, "schema": { "title": "Uuid", "type": "string", "description": "Filter the list of recycle servers by the given recycle server UUID." }, "name": "uuid", "in": "query" }, { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RecycleServersResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BadRequestMessage" } } } }, "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/extension/volumes": { "get": { "tags": [ "Extension" ], "summary": "List Volumes", "description": "List Volumes", "operationId": "list_volumes_api_v1_extension_volumes_get", "parameters": [ { "description": "Requests a page size of items. Returns a number of items up to a limit value.", "required": false, "schema": { "title": "Limit", "exclusiveMinimum": 0.0, "type": "integer", "description": "Requests a page size of items. Returns a number of items up to a limit value." }, "name": "limit", "in": "query" }, { "description": "The ID of the last-seen item.", "required": false, "schema": { "title": "Marker", "type": "string", "description": "The ID of the last-seen item." }, "name": "marker", "in": "query" }, { "description": "Indicates in which directions to sort.", "required": false, "schema": { "allOf": [ { "$ref": "#/components/schemas/SortDir" } ], "description": "Indicates in which directions to sort." }, "name": "sort_dirs", "in": "query" }, { "description": "Indicates in which attributes to sort. Updated_at is used as deleted_at", "required": false, "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VolumeSortKey" }, "description": "Indicates in which attributes to sort. Updated_at is used as deleted_at" }, "name": "sort_keys", "in": "query" }, { "description": "List volumes for all projects.", "required": false, "schema": { "title": "All Projects", "type": "boolean", "description": "List volumes for all projects." }, "name": "all_projects", "in": "query" }, { "description": "Filter the list of volumes by the given project ID.", "required": false, "schema": { "title": "Project Id", "type": "string", "description": "Filter the list of volumes by the given project ID." }, "name": "project_id", "in": "query" }, { "description": "Filter the list of volumes by the given server name.", "required": false, "schema": { "title": "Name", "type": "string", "description": "Filter the list of volumes by the given server name." }, "name": "name", "in": "query" }, { "description": "Filter the list of volumes by the given multiattach.", "required": false, "schema": { "title": "Multiattach", "type": "boolean", "description": "Filter the list of volumes by the given multiattach." }, "name": "multiattach", "in": "query" }, { "description": "Filter the list of volumes by the given status.", "required": false, "schema": { "allOf": [ { "$ref": "#/components/schemas/VolumeStatus" } ], "description": "Filter the list of volumes by the given status." }, "name": "status", "in": "query" }, { "description": "Filter the list of volumes by the given bootable.", "required": false, "schema": { "title": "Bootable", "type": "boolean", "description": "Filter the list of volumes by the given bootable." }, "name": "bootable", "in": "query" }, { "description": "Filter the list of volumes by the given volumes UUID.", "required": false, "schema": { "title": "Uuid", "type": "array", "items": { "type": "string" }, "description": "Filter the list of volumes by the given volumes UUID." }, "name": "uuid", "in": "query" }, { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VolumesResponse" } } } }, "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/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": [ { "description": "Requests a page size of items. Returns a number of items up to a limit value.", "required": false, "schema": { "title": "Limit", "exclusiveMinimum": 0.0, "type": "integer", "description": "Requests a page size of items. Returns a number of items up to a limit value." }, "name": "limit", "in": "query" }, { "description": "The ID of the last-seen item.", "required": false, "schema": { "title": "Marker", "type": "string", "description": "The ID of the last-seen item." }, "name": "marker", "in": "query" }, { "description": "Indicates in which directions to sort.", "required": false, "schema": { "allOf": [ { "$ref": "#/components/schemas/SortDir" } ], "description": "Indicates in which directions to sort." }, "name": "sort_dirs", "in": "query" }, { "description": "Indicates in which attributes to sort.", "required": false, "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VolumeSnapshotSortKey" }, "description": "Indicates in which attributes to sort." }, "name": "sort_keys", "in": "query" }, { "description": "List volume snapshots for all projects.", "required": false, "schema": { "title": "All Projects", "type": "boolean", "description": "List volume snapshots for all projects." }, "name": "all_projects", "in": "query" }, { "description": "Filter the list of volume snapshots by the given project ID.", "required": false, "schema": { "title": "Project Id", "type": "string", "description": "Filter the list of volume snapshots by the given project ID." }, "name": "project_id", "in": "query" }, { "description": "Filter the list of volume snapshots by the given volume snapshot name.", "required": false, "schema": { "title": "Name", "type": "string", "description": "Filter the list of volume snapshots by the given volume snapshot name." }, "name": "name", "in": "query" }, { "description": "Filter the list of volume snapshots by the given volume snapshot status.", "required": false, "schema": { "allOf": [ { "$ref": "#/components/schemas/VolumeSnapshotStatus" } ], "description": "Filter the list of volume snapshots by the given volume snapshot status." }, "name": "status", "in": "query" }, { "description": "Filter the list of volume snapshots by the given volume ID.", "required": false, "schema": { "title": "Volume Id", "type": "string", "description": "Filter the list of volume snapshots by the given volume ID." }, "name": "volume_id", "in": "query" }, { "description": "Filter the list of volume snapshots by the given volume snapshot UUID.", "required": false, "schema": { "title": "Uuid", "type": "string", "description": "Filter the list of volume snapshots by the given volume snapshot UUID." }, "name": "uuid", "in": "query" }, { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VolumeSnapshotsResponse" } } } }, "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/extension/ports": { "get": { "tags": [ "Extension" ], "summary": "List Ports", "description": "List Ports.", "operationId": "list_ports_api_v1_extension_ports_get", "parameters": [ { "description": "Requests a page size of items. Returns a number of items up to a limit value.", "required": false, "schema": { "title": "Limit", "exclusiveMinimum": 0.0, "type": "integer", "description": "Requests a page size of items. Returns a number of items up to a limit value." }, "name": "limit", "in": "query" }, { "description": "The ID of the last-seen item.", "required": false, "schema": { "title": "Marker", "type": "string", "description": "The ID of the last-seen item." }, "name": "marker", "in": "query" }, { "description": "Indicates in which directions to sort.", "required": false, "schema": { "allOf": [ { "$ref": "#/components/schemas/SortDir" } ], "description": "Indicates in which directions to sort." }, "name": "sort_dirs", "in": "query" }, { "description": "Indicates in which attributes to sort.", "required": false, "schema": { "type": "array", "items": { "$ref": "#/components/schemas/PortSortKey" }, "description": "Indicates in which attributes to sort." }, "name": "sort_keys", "in": "query" }, { "description": "List ports for all projects.", "required": false, "schema": { "title": "All Projects", "type": "boolean", "description": "List ports for all projects." }, "name": "all_projects", "in": "query" }, { "description": "Filter the list of ports by the given project ID.", "required": false, "schema": { "title": "Project Id", "type": "string", "description": "Filter the list of ports by the given project ID." }, "name": "project_id", "in": "query" }, { "description": "Filter the list of ports by the given port name.", "required": false, "schema": { "title": "Name", "type": "string", "description": "Filter the list of ports by the given port name." }, "name": "name", "in": "query" }, { "description": "Filter the list of ports by the given port status.", "required": false, "schema": { "allOf": [ { "$ref": "#/components/schemas/PortStatus" } ], "description": "Filter the list of ports by the given port status." }, "name": "status", "in": "query" }, { "description": "Filter the list of ports by the given network name.", "required": false, "schema": { "title": "Network Name", "type": "string", "description": "Filter the list of ports by the given network name." }, "name": "network_name", "in": "query" }, { "description": "Filter the list of ports by the given network ID.", "required": false, "schema": { "title": "Network Id", "type": "string", "description": "Filter the list of ports by the given network ID." }, "name": "network_id", "in": "query" }, { "description": "The ID of the device that uses this port. For example, a server instance or a logical router.", "required": false, "schema": { "title": "Device Id", "type": "string", "description": "The ID of the device that uses this port. For example, a server instance or a logical router." }, "name": "device_id", "in": "query" }, { "description": "The entity type that uses this port.", "required": false, "schema": { "type": "array", "items": { "$ref": "#/components/schemas/PortDeviceOwner" }, "description": "The entity type that uses this port." }, "name": "device_owner", "in": "query" }, { "description": "Filter the list of ports by the given port UUID.", "required": false, "schema": { "title": "Uuid", "type": "array", "items": { "type": "string" }, "description": "Filter the list of ports by the given port UUID." }, "name": "uuid", "in": "query" }, { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PortsResponse" } } } }, "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/extension/compute-services": { "get": { "tags": [ "Extension" ], "summary": "Compute Services", "description": "List compute services", "operationId": "compute_services_api_v1_extension_compute_services_get", "parameters": [ { "description": "Filter the list of compute services by the given binary.", "required": false, "schema": { "title": "Binary", "type": "string", "description": "Filter the list of compute services by the given binary." }, "name": "binary", "in": "query" }, { "description": "Filter the list of compute services by the given host.", "required": false, "schema": { "title": "Host", "type": "string", "description": "Filter the list of compute services by the given host." }, "name": "host", "in": "query" }, { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ComputeServicesResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "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/query": { "get": { "tags": [ "Prometheus" ], "summary": "Prometheus Query", "description": "Prometheus query API.", "operationId": "prometheus_query_api_v1_query_get", "parameters": [ { "description": "The query expression of prometheus to filter.", "required": false, "schema": { "title": "Query", "type": "string", "description": "The query expression of prometheus to filter." }, "name": "query", "in": "query" }, { "description": "The time to filter.", "required": false, "schema": { "title": "Time", "type": "string", "description": "The time to filter." }, "name": "time", "in": "query" }, { "description": "The timeout to filter.", "required": false, "schema": { "title": "Timeout", "type": "string", "description": "The timeout to filter." }, "name": "timeout", "in": "query" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrometheusQueryResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "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/query_range": { "get": { "tags": [ "Prometheus" ], "summary": "Prometheus Query Range", "description": "Prometheus query_range API.", "operationId": "prometheus_query_range_api_v1_query_range_get", "parameters": [ { "description": "The query expression of prometheus to filter.", "required": false, "schema": { "title": "Query", "type": "string", "description": "The query expression of prometheus to filter." }, "name": "query", "in": "query" }, { "description": "The start time to filter.", "required": false, "schema": { "title": "Start", "type": "string", "description": "The start time to filter." }, "name": "start", "in": "query" }, { "description": "The end time to filter.", "required": false, "schema": { "title": "End", "type": "string", "description": "The end time to filter." }, "name": "end", "in": "query" }, { "description": "The step to filter.", "required": false, "schema": { "title": "Step", "type": "string", "description": "The step to filter." }, "name": "step", "in": "query" }, { "description": "The timeout to filter.", "required": false, "schema": { "title": "Timeout", "type": "string", "description": "The timeout to filter." }, "name": "timeout", "in": "query" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrometheusQueryRangeResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "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/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": { "title": "Response 200 List Keystone Endpoints Api V1 Contrib Keystone Endpoints Get", "type": "array", "items": { "$ref": "#/components/schemas/KeystoneEndpoints" } } } } }, "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", "parameters": [ { "required": false, "schema": { "title": "X-Openstack-Request-Id", "pattern": "^req-\\w{8}(-\\w{4}){3}-\\w{12}", "type": "string", "default": "" }, "name": "X-Openstack-Request-Id", "in": "header" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "title": "Response 200 List Domains Api V1 Contrib Domains Get", "type": "array", "items": { "type": "string" } } } } }, "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/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": { "title": "Response 200 List Regions Api V1 Contrib Regions Get", "type": "array", "items": { "type": "string" } } } } }, "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": [ { "required": true, "schema": { "title": "Key", "type": "string" }, "name": "key", "in": "path" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Setting" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedMessage" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NotFoundMessage" } } } }, "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": [ { "required": true, "schema": { "title": "Key", "type": "string" }, "name": "key", "in": "path" } ], "responses": { "204": { "description": "No Content" }, "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/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": { "title": "BadRequestMessage", "required": [ "detail" ], "type": "object", "properties": { "detail": { "title": "Detail", "type": "string", "description": "Detail message" } } }, "Body_websso_api_v1_websso_post": { "title": "Body_websso_api_v1_websso_post", "required": [ "token" ], "type": "object", "properties": { "token": { "title": "Token", "type": "string" } } }, "ComputeServicesResponse": { "title": "ComputeServicesResponse", "required": [ "services" ], "type": "object", "properties": { "services": { "title": "Services", "type": "array", "items": { "$ref": "#/components/schemas/ComputeServicesResponseBase" }, "description": "Services list" } } }, "ComputeServicesResponseBase": { "title": "ComputeServicesResponseBase", "required": [ "binary", "host", "status" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "Service id" }, "binary": { "title": "Binary", "type": "string", "description": "Service binary" }, "disabled_reason": { "title": "Disabled Reason", "type": "string", "description": "Disabled reason" }, "host": { "title": "Host", "type": "string", "description": "Host name" }, "state": { "title": "State", "type": "string", "description": "Service state" }, "status": { "title": "Status", "type": "string", "description": "Service status" }, "updated_at": { "title": "Updated At", "type": "string", "description": "Updated at" }, "forced_down": { "title": "Forced Down", "type": "boolean", "description": "Forced down" }, "zone": { "title": "Zone", "type": "string", "description": "Zone" } } }, "Credential": { "title": "Credential", "required": [ "domain", "username", "password" ], "type": "object", "properties": { "region": { "title": "Region", "type": "string", "description": "Credential identity service region" }, "domain": { "title": "Domain", "type": "string", "description": "Credential user domain" }, "username": { "title": "Username", "type": "string", "description": "Credential username" }, "password": { "title": "Password", "type": "string", "description": "Credential password for user" } }, "example": { "region": "RegionOne", "username": "admin", "domain": "default", "password": "admin" } }, "Domain": { "title": "Domain", "required": [ "id", "name" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "Domain ID" }, "name": { "title": "Name", "type": "string", "description": "Domain name" } } }, "FlavorInServer": { "title": "FlavorInServer", "type": "object", "properties": { "ephemeral": { "title": "Ephemeral", "type": "integer", "description": "Ephemeral disk size in GB" }, "ram": { "title": "Ram", "type": "integer", "description": "RAM size in MB" }, "original_name": { "title": "Original Name", "type": "string", "description": "Original flavor name" }, "vcpus": { "title": "Vcpus", "type": "integer", "description": "Number of vCPUs" }, "extra_specs": { "title": "Extra Specs", "type": "object", "description": "Extra specs" }, "swap": { "title": "Swap", "type": "integer", "description": "Swap size in MB" }, "disk": { "title": "Disk", "type": "integer", "description": "Disk size in GB" } } }, "ForbiddenMessage": { "title": "ForbiddenMessage", "required": [ "detail" ], "type": "object", "properties": { "detail": { "title": "Detail", "type": "string", "description": "Detail message" } } }, "HTTPValidationError": { "title": "HTTPValidationError", "type": "object", "properties": { "detail": { "title": "Detail", "type": "array", "items": { "$ref": "#/components/schemas/ValidationError" } } } }, "InternalServerErrorMessage": { "title": "InternalServerErrorMessage", "required": [ "detail" ], "type": "object", "properties": { "detail": { "title": "Detail", "type": "string", "description": "Detail message" } } }, "KeystoneEndpoints": { "title": "KeystoneEndpoints", "required": [ "region_name", "url" ], "type": "object", "properties": { "region_name": { "title": "Region Name", "type": "string", "description": "Region name" }, "url": { "title": "Url", "type": "string", "description": "Endpoint URL" } } }, "Message": { "title": "Message", "required": [ "message" ], "type": "object", "properties": { "message": { "title": "Message", "type": "string", "description": "Message" }, "code": { "title": "Code", "type": "integer", "description": "Code", "default": 200 }, "title": { "title": "Title", "type": "string", "description": "Title", "default": "OK" } } }, "NotFoundMessage": { "title": "NotFoundMessage", "required": [ "detail" ], "type": "object", "properties": { "detail": { "title": "Detail", "type": "string", "description": "Detail message" } } }, "Policies": { "title": "Policies", "required": [ "policies" ], "type": "object", "properties": { "policies": { "title": "Policies", "type": "array", "items": { "$ref": "#/components/schemas/Policy" }, "description": "Policies list" } } }, "PoliciesRules": { "title": "PoliciesRules", "required": [ "rules" ], "type": "object", "properties": { "rules": { "title": "Rules", "type": "array", "items": { "type": "string" }, "description": "Policies rules list" }, "target": { "title": "Target", "type": "object", "additionalProperties": { "type": "string" }, "description": "Policies targets" } } }, "Policy": { "title": "Policy", "required": [ "rule", "allowed" ], "type": "object", "properties": { "rule": { "title": "Rule", "type": "string", "description": "Policy rule" }, "allowed": { "title": "Allowed", "type": "boolean", "description": "Policy allowed" } } }, "PortDeviceOwner": { "title": "PortDeviceOwner", "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" ], "type": "string", "description": "An enumeration." }, "PortSortKey": { "title": "PortSortKey", "enum": [ "id", "name", "mac_address", "status", "project_id" ], "type": "string", "description": "An enumeration." }, "PortStatus": { "title": "PortStatus", "enum": [ "ACTIVE", "DOWN", "BUILD", "ERROR", "N/A" ], "type": "string", "description": "An enumeration." }, "PortsResponse": { "title": "PortsResponse", "required": [ "ports" ], "type": "object", "properties": { "ports": { "title": "Ports", "type": "array", "items": { "$ref": "#/components/schemas/PortsResponseBase" }, "description": "Ports list" } } }, "PortsResponseBase": { "title": "PortsResponseBase", "required": [ "id", "origin_data" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "Port ID" }, "origin_data": { "title": "Origin Data", "type": "object", "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": { "title": "Server Name", "type": "string", "description": "Server name" }, "network_name": { "title": "Network Name", "type": "string", "description": "Network name" }, "ipv4": { "title": "Ipv4", "type": "array", "items": {}, "description": "IPv4 addresses" }, "ipv6": { "title": "Ipv6", "type": "array", "items": {}, "description": "IPv6 addresses" }, "name": { "title": "Name", "type": "string", "description": "Will be removed, please use origin_data[name]", "deprecated": true }, "mac_address": { "title": "Mac Address", "type": "string", "description": "Will be removed, please use origin_data[mac_address]", "deprecated": true }, "project_id": { "title": "Project Id", "type": "string", "description": "Will be removed, please use origin_data[project_id]", "deprecated": true }, "device_owner": { "title": "Device Owner", "type": "string", "description": "Will be removed, please use origin_data[device_owner]", "deprecated": true }, "device_id": { "title": "Device Id", "type": "string", "description": "Will be removed, please use origin_data[device_id]", "deprecated": true }, "status": { "title": "Status", "type": "string", "description": "Will be removed, please use origin_data[status]", "deprecated": true }, "created_at": { "title": "Created At", "type": "string", "description": "Will be removed, please use origin_data[created_at]", "deprecated": true }, "network_id": { "title": "Network Id", "type": "string", "description": "Will be removed, please use origin_data[network_id]", "deprecated": true }, "binding_vnic_type": { "title": "Binding Vnic Type", "type": "string", "description": "Will be removed, please use origin_data[binding:vnic_type]", "deprecated": true }, "description": { "title": "Description", "type": "string", "description": "Will be removed, please use origin_data[description]", "deprecated": true }, "port_security_enabled": { "title": "Port Security Enabled", "type": "boolean", "description": "Will be removed, please use origin_data[port_security_enabled]", "deprecated": true }, "qos_policy_id": { "title": "Qos Policy Id", "type": "string", "description": "Will be removed, please use origin_data[qos_policy_id]", "deprecated": true }, "fixed_ips": { "title": "Fixed Ips", "type": "array", "items": {}, "description": "Will be removed, please use origin_data[fixed_ips]", "deprecated": true } } }, "Profile": { "title": "Profile", "required": [ "keystone_token", "region", "exp", "uuid", "project", "user", "roles", "keystone_token_exp", "version" ], "type": "object", "properties": { "keystone_token": { "title": "Keystone Token", "type": "string", "description": "Keystone token" }, "region": { "title": "Region", "type": "string", "description": "User region" }, "exp": { "title": "Exp", "type": "integer", "description": "Token expiration time" }, "uuid": { "title": "Uuid", "type": "string", "description": "UUID" }, "project": { "title": "Project", "allOf": [ { "$ref": "#/components/schemas/Project" } ], "description": "User project" }, "user": { "title": "User", "allOf": [ { "$ref": "#/components/schemas/User" } ], "description": "User" }, "roles": { "title": "Roles", "type": "array", "items": { "$ref": "#/components/schemas/Role" }, "description": "User roles" }, "keystone_token_exp": { "title": "Keystone Token Exp", "type": "string", "description": "Keystone token expiration time" }, "base_domains": { "title": "Base Domains", "type": "array", "items": { "type": "string" }, "description": "User base domains" }, "endpoints": { "title": "Endpoints", "type": "object", "description": "Keystone endpoints" }, "projects": { "title": "Projects", "type": "object", "description": "User projects" }, "default_project_id": { "title": "Default Project Id", "type": "string", "description": "User default project ID" }, "version": { "title": "Version", "type": "string", "description": "Version" } } }, "Project": { "title": "Project", "required": [ "id", "name", "domain" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "Project ID" }, "name": { "title": "Name", "type": "string", "description": "Project name" }, "domain": { "title": "Domain", "allOf": [ { "$ref": "#/components/schemas/Domain" } ], "description": "Project domain" } } }, "PrometheusQueryData": { "title": "PrometheusQueryData", "required": [ "resultType", "result" ], "type": "object", "properties": { "resultType": { "title": "Resulttype", "type": "string", "description": "Prometheus result type" }, "result": { "title": "Result", "type": "array", "items": { "$ref": "#/components/schemas/PrometheusQueryResult" }, "description": "Prometheus query result" } } }, "PrometheusQueryRangeData": { "title": "PrometheusQueryRangeData", "required": [ "resultType", "result" ], "type": "object", "properties": { "resultType": { "title": "Resulttype", "type": "string", "description": "Prometheus result type" }, "result": { "title": "Result", "type": "array", "items": { "$ref": "#/components/schemas/PrometheusQueryRangeResult" }, "description": "Prometheus query range result" } } }, "PrometheusQueryRangeResponse": { "title": "PrometheusQueryRangeResponse", "required": [ "status" ], "type": "object", "properties": { "status": { "title": "Status", "type": "string", "description": "Prometheus status" }, "errorType": { "title": "Errortype", "type": "string", "description": "Prometheus error type" }, "error": { "title": "Error", "type": "string", "description": "Prometheus error" }, "warnings": { "title": "Warnings", "type": "string", "description": "Prometheus warnings" }, "data": { "title": "Data", "allOf": [ { "$ref": "#/components/schemas/PrometheusQueryRangeData" } ], "description": "Prometheus query range data" } } }, "PrometheusQueryRangeResult": { "title": "PrometheusQueryRangeResult", "required": [ "metric", "value" ], "type": "object", "properties": { "metric": { "title": "Metric", "type": "object", "additionalProperties": { "type": "string" }, "description": "Prometheus metric" }, "value": { "title": "Value", "type": "array", "items": {}, "description": "Prometheus metric value" } } }, "PrometheusQueryResponse": { "title": "PrometheusQueryResponse", "required": [ "status" ], "type": "object", "properties": { "status": { "title": "Status", "type": "string", "description": "Prometheus status" }, "errorType": { "title": "Errortype", "type": "string", "description": "Prometheus error type" }, "error": { "title": "Error", "type": "string", "description": "Prometheus error" }, "warnings": { "title": "Warnings", "type": "string", "description": "Prometheus warnings" }, "data": { "title": "Data", "allOf": [ { "$ref": "#/components/schemas/PrometheusQueryData" } ], "description": "Prometheus query data" } } }, "PrometheusQueryResult": { "title": "PrometheusQueryResult", "required": [ "metric", "value" ], "type": "object", "properties": { "metric": { "title": "Metric", "type": "object", "additionalProperties": { "type": "string" }, "description": "Prometheus metric" }, "value": { "title": "Value", "type": "array", "items": {}, "description": "Prometheus metric value" } } }, "RecycleServerSortKey": { "title": "RecycleServerSortKey", "enum": [ "uuid", "display_name", "updated_at", "project_id" ], "type": "string", "description": "An enumeration." }, "RecycleServersResponse": { "title": "RecycleServersResponse", "required": [ "recycle_servers" ], "type": "object", "properties": { "recycle_servers": { "title": "Recycle Servers", "type": "array", "items": { "$ref": "#/components/schemas/RecycleServersResponseBase" }, "description": "Recycle servers list" } } }, "RecycleServersResponseBase": { "title": "RecycleServersResponseBase", "required": [ "id", "origin_data", "reclaim_timestamp" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "Recycle server id", "format": "uuid4" }, "origin_data": { "title": "Origin Data", "type": "object", "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": { "title": "Project Name", "type": "string", "description": "Project name" }, "image": { "title": "Image", "type": "string", "description": "Image id", "format": "uuid4" }, "image_name": { "title": "Image Name", "type": "string", "description": "Image name" }, "image_os_distro": { "title": "Image Os Distro", "type": "string", "description": "Image os distro" }, "fixed_addresses": { "title": "Fixed Addresses", "type": "array", "items": {}, "description": "Fixed addresses" }, "floating_addresses": { "title": "Floating Addresses", "type": "array", "items": {}, "description": "Floating addresses" }, "deleted_at": { "title": "Deleted At", "type": "string", "description": "Deleted at" }, "reclaim_timestamp": { "title": "Reclaim Timestamp", "type": "number", "description": "Reclaim timestamp" }, "name": { "title": "Name", "type": "string", "description": "Will be removed, please use origin_data[name]", "deprecated": true }, "project_id": { "title": "Project Id", "type": "string", "description": "Will be removed, please use origin_data[tenant_id]", "deprecated": true }, "host": { "title": "Host", "type": "string", "description": "Will be removed, please use origin_data[OS-EXT-SRV-ATTR:host]", "deprecated": true }, "hostname": { "title": "Hostname", "type": "string", "description": "Will be removed, please use origin_data[OS-EXT-SRV-ATTR:hostname]", "deprecated": true }, "flavor": { "title": "Flavor", "type": "string", "description": "Will be removed, please use origin_data[flavor][original_name]", "deprecated": true }, "flavor_info": { "title": "Flavor Info", "allOf": [ { "$ref": "#/components/schemas/FlavorInServer" } ], "description": "Will be removed, please use origin_data[flavor]", "deprecated": true }, "status": { "title": "Status", "type": "string", "description": "Will be removed, please use origin_data[status]", "deprecated": true } } }, "Role": { "title": "Role", "required": [ "id", "name" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "Role ID" }, "name": { "title": "Name", "type": "string", "description": "Role name" } } }, "SSO": { "title": "SSO", "required": [ "enable_sso", "protocols" ], "type": "object", "properties": { "enable_sso": { "title": "Enable Sso", "type": "boolean" }, "protocols": { "title": "Protocols", "type": "array", "items": { "$ref": "#/components/schemas/SSOInfo" } } } }, "SSOInfo": { "title": "SSOInfo", "required": [ "protocol", "url" ], "type": "object", "properties": { "protocol": { "title": "Protocol", "type": "string" }, "url": { "title": "Url", "type": "string" } } }, "ServerSortKey": { "title": "ServerSortKey", "enum": [ "uuid", "display_name", "vm_state", "locked", "created_at", "host", "project_id" ], "type": "string", "description": "An enumeration." }, "ServerStatus": { "title": "ServerStatus", "enum": [ "ACTIVE", "BUILD", "ERROR", "HARD_REBOOT", "MIGRATING", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN" ], "type": "string", "description": "An enumeration." }, "ServersResponse": { "title": "ServersResponse", "required": [ "servers" ], "type": "object", "properties": { "servers": { "title": "Servers", "type": "array", "items": { "$ref": "#/components/schemas/ServersResponseBase" }, "description": "Servers list" } } }, "ServersResponseBase": { "title": "ServersResponseBase", "required": [ "id", "origin_data" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "Server ID", "format": "uuid4" }, "origin_data": { "title": "Origin Data", "type": "object", "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": { "title": "Project Name", "type": "string", "description": "Project name" }, "image": { "title": "Image", "type": "string", "description": "Image ID", "format": "uuid4" }, "image_name": { "title": "Image Name", "type": "string", "description": "Image name" }, "image_os_distro": { "title": "Image Os Distro", "type": "string", "description": "Image OS distro" }, "fixed_addresses": { "title": "Fixed Addresses", "type": "array", "items": {}, "description": "Fixed addresses" }, "floating_addresses": { "title": "Floating Addresses", "type": "array", "items": {}, "description": "Floating addresses" }, "name": { "title": "Name", "type": "string", "description": "Will be removed, please use origin_data[name]", "deprecated": true }, "project_id": { "title": "Project Id", "type": "string", "description": "Will be removed, please use origin_data[tenant_id]", "deprecated": true }, "host": { "title": "Host", "type": "string", "description": "Will be removed, please use origin_data[OS-EXT-SRV-ATTR:host]", "deprecated": true }, "hostname": { "title": "Hostname", "type": "string", "description": "Will be removed, please use origin_data[OS-EXT-SRV-ATTR:hostname]", "deprecated": true }, "flavor": { "title": "Flavor", "type": "string", "description": "Will be removed, please use origin_data[flavor][original_name]", "deprecated": true }, "flavor_info": { "title": "Flavor Info", "allOf": [ { "$ref": "#/components/schemas/FlavorInServer" } ], "description": "Will be removed, please use origin_data[flavor]", "deprecated": true }, "status": { "title": "Status", "type": "string", "description": "Will be removed, please use origin_data[status]", "deprecated": true }, "locked": { "title": "Locked", "type": "boolean", "description": "Will be removed, please use origin_data[locked]", "deprecated": true }, "created_at": { "title": "Created At", "type": "string", "description": "Will be removed, please use origin_data[created]", "deprecated": true }, "task_state": { "title": "Task State", "type": "string", "description": "Will be removed, please use origin_data[OS-EXT-STS:task_state]", "deprecated": true }, "vm_state": { "title": "Vm State", "type": "string", "description": "Will be removed, please use origin_data[OS-EXT-STS:vm_state]", "deprecated": true }, "power_state": { "title": "Power State", "type": "integer", "description": "Will be removed, please use origin_data[OS-EXT-STS:power_state]", "deprecated": true }, "root_device_name": { "title": "Root Device Name", "type": "string", "description": "Will be removed, please use origin_data[OS-EXT-SRV-ATTR:root_device_name]", "deprecated": true }, "metadata": { "title": "Metadata", "type": "object", "description": "Will be removed, please use origin_data[metadata]", "deprecated": true } } }, "Setting": { "title": "Setting", "required": [ "key", "value", "restart_service" ], "type": "object", "properties": { "key": { "title": "Key", "type": "string", "description": "Key of setting" }, "value": { "title": "Value", "description": "Value of setting" }, "hidden": { "title": "Hidden", "type": "boolean", "description": "Hidden setting or not" }, "restart_service": { "title": "Restart Service", "type": "boolean", "description": "Restart service or not to apply setting" } } }, "Settings": { "title": "Settings", "required": [ "settings" ], "type": "object", "properties": { "settings": { "title": "Settings", "type": "array", "items": { "$ref": "#/components/schemas/Setting" }, "description": "Settings" } } }, "SortDir": { "title": "SortDir", "enum": [ "desc", "asc" ], "type": "string", "description": "An enumeration." }, "UnauthorizedMessage": { "title": "UnauthorizedMessage", "required": [ "detail" ], "type": "object", "properties": { "detail": { "title": "Detail", "type": "string", "description": "Detail message" } } }, "UpdateSetting": { "title": "UpdateSetting", "required": [ "key", "value" ], "type": "object", "properties": { "key": { "title": "Key", "type": "string", "description": "Key of setting" }, "value": { "title": "Value", "description": "Value of setting" } } }, "User": { "title": "User", "required": [ "id", "name", "domain" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "User ID" }, "name": { "title": "Name", "type": "string", "description": "User name" }, "domain": { "title": "Domain", "allOf": [ { "$ref": "#/components/schemas/Domain" } ], "description": "User domain" } } }, "ValidationError": { "title": "ValidationError", "required": [ "loc", "msg", "type" ], "type": "object", "properties": { "loc": { "title": "Location", "type": "array", "items": { "type": "string" } }, "msg": { "title": "Message", "type": "string" }, "type": { "title": "Error Type", "type": "string" } } }, "VolumeAttachment": { "title": "VolumeAttachment", "required": [ "id" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "Volume attachment id" }, "device": { "title": "Device", "type": "string", "description": "Device name" }, "server_id": { "title": "Server Id", "type": "string", "description": "Server id" }, "server_name": { "title": "Server Name", "type": "string", "description": "Server name" } } }, "VolumeSnapshotChildVolume": { "title": "VolumeSnapshotChildVolume", "type": "object", "properties": { "volume_id": { "title": "Volume Id", "type": "string", "description": "ID of volume", "example": "00000000-0000-0000-0000-000000000000" }, "volume_name": { "title": "Volume Name", "type": "string", "description": "Name of volume", "example": "child-volume-demo" } } }, "VolumeSnapshotSortKey": { "title": "VolumeSnapshotSortKey", "enum": [ "id", "name", "status", "created_at" ], "type": "string", "description": "An enumeration." }, "VolumeSnapshotStatus": { "title": "VolumeSnapshotStatus", "enum": [ "CREATING", "AVAILABLE", "DELETING", "ERROR", "ERROR_DELETING" ], "type": "string", "description": "An enumeration." }, "VolumeSnapshotsResponse": { "title": "VolumeSnapshotsResponse", "required": [ "volume_snapshots" ], "type": "object", "properties": { "count": { "title": "Count", "type": "integer", "description": "Count of volume snapshots", "default": 0 }, "volume_snapshots": { "title": "Volume Snapshots", "type": "array", "items": { "$ref": "#/components/schemas/VolumeSnapshotsResponseBase" }, "description": "Volume snapshots list" } } }, "VolumeSnapshotsResponseBase": { "title": "VolumeSnapshotsResponseBase", "required": [ "id", "origin_data" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "Snapshot ID" }, "origin_data": { "title": "Origin Data", "type": "object", "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": { "title": "Project Name", "type": "string", "description": "Project name" }, "host": { "title": "Host", "type": "string", "description": "Host name" }, "volume_name": { "title": "Volume Name", "type": "string", "description": "Name of volume", "example": "volume-demo" }, "child_volumes": { "title": "Child Volumes", "type": "array", "items": { "$ref": "#/components/schemas/VolumeSnapshotChildVolume" }, "description": "Child volumes" }, "name": { "title": "Name", "type": "string", "description": "Will be removed, please use origin_data[name]", "deprecated": true }, "project_id": { "title": "Project Id", "type": "string", "description": "Will be removed, please use origin_data[os-extended-snapshot-attributes:project_id]", "deprecated": true }, "size": { "title": "Size", "type": "integer", "description": "Will be removed, please use origin_data[size]", "deprecated": true }, "status": { "title": "Status", "type": "string", "description": "Will be removed, please use origin_data[status]", "deprecated": true }, "volume_id": { "title": "Volume Id", "type": "string", "description": "Will be removed, please use origin_data[volume_id]", "deprecated": true }, "created_at": { "title": "Created At", "type": "string", "description": "Will be removed, please use origin_data[created_at]", "deprecated": true }, "metadata": { "title": "Metadata", "type": "object", "description": "Will be removed, please use origin_data[metadata]", "deprecated": true } } }, "VolumeSortKey": { "title": "VolumeSortKey", "enum": [ "id", "name", "size", "status", "bootable", "created_at" ], "type": "string", "description": "An enumeration." }, "VolumeStatus": { "title": "VolumeStatus", "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" ], "type": "string", "description": "An enumeration." }, "VolumesResponse": { "title": "VolumesResponse", "required": [ "volumes" ], "type": "object", "properties": { "count": { "title": "Count", "type": "integer", "description": "Count of volumes", "default": 0 }, "volumes": { "title": "Volumes", "type": "array", "items": { "$ref": "#/components/schemas/VolumesResponseBase" }, "description": "Volumes list" } } }, "VolumesResponseBase": { "title": "VolumesResponseBase", "required": [ "id", "origin_data" ], "type": "object", "properties": { "id": { "title": "Id", "type": "string", "description": "Volume ID", "format": "uuid4" }, "origin_data": { "title": "Origin Data", "type": "object", "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": { "title": "Project Name", "type": "string", "description": "Project name" }, "attachments": { "title": "Attachments", "type": "array", "items": { "$ref": "#/components/schemas/VolumeAttachment" }, "description": "Volume attachments" }, "name": { "title": "Name", "type": "string", "description": "Will be removed, please use origin_data[name]", "deprecated": true }, "project_id": { "title": "Project Id", "type": "string", "description": "Will be removed, please use origin_data[os-vol-tenant-attr:tenant_id]", "deprecated": true }, "host": { "title": "Host", "type": "string", "description": "Will be removed, please use origin_data[os-vol-host-attr:host]", "deprecated": true }, "snapshot_id": { "title": "Snapshot Id", "type": "string", "description": "Will be removed, please use origin_data[snapshot_id]", "deprecated": true }, "source_volid": { "title": "Source Volid", "type": "string", "description": "Will be removed, please use origin_data[source_volid]", "deprecated": true }, "size": { "title": "Size", "type": "integer", "description": "Will be removed, please use origin_data[size]", "deprecated": true }, "status": { "title": "Status", "type": "string", "description": "Will be removed, please use origin_data[status]", "deprecated": true }, "volume_type": { "title": "Volume Type", "type": "string", "description": "Will be removed, please use origin_data[volume_type]", "deprecated": true }, "encrypted": { "title": "Encrypted", "type": "boolean", "description": "Will be removed, please use origin_data[encrypted]", "deprecated": true }, "bootable": { "title": "Bootable", "type": "string", "description": "Will be removed, please use origin_data[bootable]", "deprecated": true }, "multiattach": { "title": "Multiattach", "type": "boolean", "description": "Will be removed, please use origin_data[multiattach]", "deprecated": true }, "availability_zone": { "title": "Availability Zone", "type": "string", "description": "Will be removed, please use origin_data[availability_zone]", "deprecated": true }, "created_at": { "title": "Created At", "type": "string", "description": "Will be removed, please use origin_data[created_at]", "deprecated": true } } } } } }