skyline-apiserver/docs/api/swagger.json
zhu.boxiang 08c6265d1e feat: Support system scope for policy list and check
1. support system scope for policy list and check
2. add target for check policy api
3. update version of requirements and test-requirements

Change-Id: If251d26bdb522b03a8fb94ae0034d8ca44be5b61
2022-07-18 14:47:12 +08:00

3558 lines
134 KiB
JSON

{
"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/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": "\nList Servers.\n\n*Notes*:\n- The `host` of **sort_keys** is only used for admin/system_admin role users.\n- The `name` is to support for fuzzy queries.\n",
"operationId": "list_servers_api_v1_extension_servers_get",
"parameters": [
{
"required": false,
"schema": {
"title": "Limit",
"exclusiveMinimum": 0.0,
"type": "integer"
},
"name": "limit",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Marker",
"type": "string"
},
"name": "marker",
"in": "query"
},
{
"required": false,
"schema": {
"$ref": "#/components/schemas/SortDir"
},
"name": "sort_dirs",
"in": "query"
},
{
"required": false,
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServerSortKey"
}
},
"name": "sort_keys",
"in": "query"
},
{
"required": false,
"schema": {
"title": "All Projects",
"type": "boolean"
},
"name": "all_projects",
"in": "query"
},
{
"description": "Only works when the all_projects filter is also specified.",
"required": false,
"schema": {
"title": "Project Id",
"type": "string",
"description": "Only works when the all_projects filter is also specified."
},
"name": "project_id",
"in": "query"
},
{
"description": "Only works when the all_projects filter is also specified.",
"required": false,
"schema": {
"title": "Project Name",
"type": "string",
"description": "Only works when the all_projects filter is also specified."
},
"name": "project_name",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Name",
"type": "string"
},
"name": "name",
"in": "query"
},
{
"required": false,
"schema": {
"$ref": "#/components/schemas/ServerStatus"
},
"name": "status",
"in": "query"
},
{
"description": "It will be ignored for non-admin user.",
"required": false,
"schema": {
"title": "Host",
"type": "string",
"description": "It will be ignored for non-admin user."
},
"name": "host",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Flavor Id",
"type": "string"
},
"name": "flavor_id",
"in": "query"
},
{
"description": "UUID of server.",
"required": false,
"schema": {
"title": "Uuid",
"type": "string",
"description": "UUID of server."
},
"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": "\nList Recycle Servers.\n\n*Notes*:\n- The `updated_at` of **sort_keys** is used as `deleted_at`.\n- The `name` is to support for fuzzy queries.\n",
"operationId": "list_recycle_servers_api_v1_extension_recycle_servers_get",
"parameters": [
{
"required": false,
"schema": {
"title": "Limit",
"exclusiveMinimum": 0.0,
"type": "integer"
},
"name": "limit",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Marker",
"type": "string"
},
"name": "marker",
"in": "query"
},
{
"required": false,
"schema": {
"$ref": "#/components/schemas/SortDir"
},
"name": "sort_dirs",
"in": "query"
},
{
"required": false,
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/RecycleServerSortKey"
}
},
"name": "sort_keys",
"in": "query"
},
{
"required": false,
"schema": {
"title": "All Projects",
"type": "boolean"
},
"name": "all_projects",
"in": "query"
},
{
"description": "Only works when the all_projects filter is also specified.",
"required": false,
"schema": {
"title": "Project Id",
"type": "string",
"description": "Only works when the all_projects filter is also specified."
},
"name": "project_id",
"in": "query"
},
{
"description": "Only works when the all_projects filter is also specified.",
"required": false,
"schema": {
"title": "Project Name",
"type": "string",
"description": "Only works when the all_projects filter is also specified."
},
"name": "project_name",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Name",
"type": "string"
},
"name": "name",
"in": "query"
},
{
"description": "UUID of recycle server.",
"required": false,
"schema": {
"title": "Uuid",
"type": "string",
"description": "UUID of recycle server."
},
"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": [
{
"required": false,
"schema": {
"title": "Limit",
"exclusiveMinimum": 0.0,
"type": "integer"
},
"name": "limit",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Marker",
"type": "string"
},
"name": "marker",
"in": "query"
},
{
"required": false,
"schema": {
"$ref": "#/components/schemas/SortDir"
},
"name": "sort_dirs",
"in": "query"
},
{
"required": false,
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VolumeSortKey"
}
},
"name": "sort_keys",
"in": "query"
},
{
"required": false,
"schema": {
"title": "All Projects",
"type": "boolean"
},
"name": "all_projects",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Project Id",
"type": "string"
},
"name": "project_id",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Name",
"type": "string"
},
"name": "name",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Multiattach",
"type": "boolean"
},
"name": "multiattach",
"in": "query"
},
{
"required": false,
"schema": {
"$ref": "#/components/schemas/VolumeStatus"
},
"name": "status",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Bootable",
"type": "boolean"
},
"name": "bootable",
"in": "query"
},
{
"description": "UUID of volume.",
"required": false,
"schema": {
"title": "Uuid",
"type": "array",
"items": {
"type": "string"
},
"description": "UUID of volume."
},
"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": [
{
"required": false,
"schema": {
"title": "Limit",
"exclusiveMinimum": 0.0,
"type": "integer"
},
"name": "limit",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Marker",
"type": "string"
},
"name": "marker",
"in": "query"
},
{
"required": false,
"schema": {
"$ref": "#/components/schemas/SortDir"
},
"name": "sort_dirs",
"in": "query"
},
{
"required": false,
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VolumeSnapshotSortKey"
}
},
"name": "sort_keys",
"in": "query"
},
{
"required": false,
"schema": {
"title": "All Projects",
"type": "boolean"
},
"name": "all_projects",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Project Id",
"type": "string"
},
"name": "project_id",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Name",
"type": "string"
},
"name": "name",
"in": "query"
},
{
"required": false,
"schema": {
"$ref": "#/components/schemas/VolumeSnapshotStatus"
},
"name": "status",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Volume Id",
"type": "string"
},
"name": "volume_id",
"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": [
{
"required": false,
"schema": {
"title": "Limit",
"exclusiveMinimum": 0.0,
"type": "integer"
},
"name": "limit",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Marker",
"type": "string"
},
"name": "marker",
"in": "query"
},
{
"required": false,
"schema": {
"$ref": "#/components/schemas/SortDir"
},
"name": "sort_dirs",
"in": "query"
},
{
"required": false,
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PortSortKey"
}
},
"name": "sort_keys",
"in": "query"
},
{
"required": false,
"schema": {
"title": "All Projects",
"type": "boolean"
},
"name": "all_projects",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Project Id",
"type": "string"
},
"name": "project_id",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Name",
"type": "string"
},
"name": "name",
"in": "query"
},
{
"required": false,
"schema": {
"$ref": "#/components/schemas/PortStatus"
},
"name": "status",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Network Name",
"type": "string"
},
"name": "network_name",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Network Id",
"type": "string"
},
"name": "network_id",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Device Id",
"type": "string"
},
"name": "device_id",
"in": "query"
},
{
"required": false,
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PortDeviceOwner"
}
},
"name": "device_owner",
"in": "query"
},
{
"description": "UUID of port.",
"required": false,
"schema": {
"title": "Uuid",
"type": "array",
"items": {
"type": "string"
},
"description": "UUID of port."
},
"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": [
{
"required": false,
"schema": {
"title": "Binary",
"type": "string"
},
"name": "binary",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Host",
"type": "string"
},
"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": [
{
"required": false,
"schema": {
"title": "Query",
"type": "string"
},
"name": "query",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Time",
"type": "string"
},
"name": "time",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Timeout",
"type": "string"
},
"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": [
{
"required": false,
"schema": {
"title": "Query",
"type": "string"
},
"name": "query",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Start",
"type": "string"
},
"name": "start",
"in": "query"
},
{
"required": false,
"schema": {
"title": "End",
"type": "string"
},
"name": "end",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Step",
"type": "string"
},
"name": "step",
"in": "query"
},
{
"required": false,
"schema": {
"title": "Timeout",
"type": "string"
},
"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"
}
}
},
"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": [
"region",
"domain",
"username",
"password"
],
"type": "object",
"properties": {
"region": {
"title": "Region",
"type": "string",
"description": "Credential user 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",
"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"
],
"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_roles": {
"title": "Base Roles",
"type": "array",
"items": {
"type": "string"
},
"description": "User base roles"
},
"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"
},
"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"
}
}
},
"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"
}
}
},
"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": "Volume name"
},
"child_volumes": {
"title": "Child Volumes",
"type": "array",
"items": {},
"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
}
}
}
}
}
}