{
"openapi": "3.0.1",
"info": {
"title": "XpanseAPI",
"description": "RESTful Services to interact with Xpanse runtime.",
"version": "1.0.22-SNAPSHOT"
},
"servers": [
{
"url": "http://localhost:8080",
"description": "Generated server url"
}
],
"security": [
{
"OAuth2Flow": []
}
],
"tags": [
{
"name": "CloudServiceProvider",
"description": "APIs for cloud service provider to manage service templates."
},
{
"name": "AuthManagement",
"description": "APIs for user authentication and authorization."
},
{
"name": "ServiceOrders",
"description": "APIs to manage orders of services"
},
{
"name": "CredentialsConfiguration",
"description": "APIs Viewing Cloud Credentials Configuration"
},
{
"name": "CloudResources",
"description": "API to view cloud resources by type"
},
{
"name": "Service",
"description": "APIs to manage the services"
},
{
"name": "ServiceCatalog",
"description": "APIs to query the services which are available for the user to order."
},
{
"name": "UserPoliciesManagement",
"description": "APIs for managing user's infra policies."
},
{
"name": "Migration",
"description": "APIs to manage the service migration."
},
{
"name": "Admin",
"description": "APIs for administrating Xpanse"
},
{
"name": "Workflow",
"description": "APIs to manage the Workflow"
},
{
"name": "ServiceStatusManagement",
"description": "APIs to manage status of the service instances"
},
{
"name": "ServicePrices",
"description": "API to manage prices of the flavors of the service."
},
{
"name": "ISVCloudCredentialsManagement",
"description": "APIs for managing isv's cloud provider credentials"
},
{
"name": "ServicePoliciesManagement",
"description": "APIs for managing service's infra policies."
},
{
"name": "ServiceVendor",
"description": "APIs to manage service templates."
},
{
"name": "UserCloudCredentialsManagement",
"description": "APIs for managing user's cloud provider credentials"
},
{
"name": "Agent Api",
"description": "APIs for agent to poll pending configuration change requests."
},
{
"name": "ServiceConfiguration",
"description": "APIs for managing service's configuration."
},
{
"name": "Monitor",
"description": "APIs for getting metrics of deployed services."
}
],
"paths": {
"/xpanse/workflow/task/{id}": {
"put": {
"tags": ["Workflow"],
"description": "Manage failed task orders.
Required role: admin or user ",
"operationId": "manageFailedOrder",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of the workflow task that needs to be handled",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "retryOrder",
"in": "query",
"description": "Controls if the order must be retried again or simply closed.",
"required": true,
"schema": {
"type": "boolean"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK"
}
}
}
},
"/xpanse/workflow/complete/task/{id}": {
"put": {
"tags": ["Workflow"],
"description": "Complete tasks by task ID and set global process variables .
Required role: admin or user ",
"operationId": "completeTask",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of the workflow task that needs to be handled",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": {
"type": "object"
}
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK"
}
}
}
},
"/xpanse/user/credentials": {
"get": {
"tags": ["UserCloudCredentialsManagement"],
"description": "List all cloud provider credentials added by the user for a cloud service provider.
Required role: admin or user ",
"operationId": "getUserCloudCredentials",
"parameters": [
{
"name": "cspName",
"in": "query",
"description": "The cloud service provider.",
"required": false,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "type",
"in": "query",
"description": "The type of credential.",
"required": false,
"schema": {
"type": "string",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AbstractCredentialInfo"
}
}
}
}
}
}
},
"put": {
"tags": ["UserCloudCredentialsManagement"],
"description": "Update user's credential for connecting to the cloud service provider.
Required role: admin or user ",
"operationId": "updateUserCloudCredential",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateCredential"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
},
"post": {
"tags": ["UserCloudCredentialsManagement"],
"description": "Add user's credential for connecting to the cloud service provider.
Required role: admin or user ",
"operationId": "addUserCloudCredential",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateCredential"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
},
"delete": {
"tags": ["UserCloudCredentialsManagement"],
"description": "Delete user's credential for connecting to the cloud service provider.
Required role: admin or user ",
"operationId": "deleteUserCloudCredential",
"parameters": [
{
"name": "cspName",
"in": "query",
"description": "The cloud service provider.",
"required": true,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "siteName",
"in": "query",
"description": "The site of the provider.",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "type",
"in": "query",
"description": "The type of credential.",
"required": true,
"schema": {
"type": "string",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
}
},
{
"name": "name",
"in": "query",
"description": "The name of of credential.",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/services/stop/{serviceId}": {
"put": {
"tags": ["ServiceStatusManagement"],
"description": "Start a task to stop the service instance.
Required role: admin or user ",
"operationId": "stopService",
"parameters": [
{
"name": "serviceId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"202": {
"description": "Accepted",
"content": {
"application/json": {
"schema": {
"type": "string",
"format": "uuid"
}
}
}
}
}
}
},
"/xpanse/services/start/{serviceId}": {
"put": {
"tags": ["ServiceStatusManagement"],
"description": "Start a task to start the service instance.
Required role: admin or user ",
"operationId": "startService",
"parameters": [
{
"name": "serviceId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"202": {
"description": "Accepted",
"content": {
"application/json": {
"schema": {
"type": "string",
"format": "uuid"
}
}
}
}
}
}
},
"/xpanse/services/restart/{serviceId}": {
"put": {
"tags": ["ServiceStatusManagement"],
"description": "Start a task to restart the service instance.
Required role: admin or user ",
"operationId": "restartService",
"parameters": [
{
"name": "serviceId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"202": {
"description": "Accepted",
"content": {
"application/json": {
"schema": {
"type": "string",
"format": "uuid"
}
}
}
}
}
}
},
"/xpanse/services/recreate/{serviceId}": {
"put": {
"tags": ["Service"],
"description": "Create a job to recreate the deployed service.
Required role: admin or user ",
"operationId": "recreateService",
"parameters": [
{
"name": "serviceId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"202": {
"description": "Accepted",
"content": {
"application/json": {
"schema": {
"type": "string",
"format": "uuid"
}
}
}
}
}
}
},
"/xpanse/services/modify/{serviceId}": {
"put": {
"tags": ["Service"],
"description": "Create an order task to modify the deployed service.
Required role: admin or user ",
"operationId": "modify",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "Id of the service",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModifyRequest"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"401": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"502": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"422": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"400": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"403": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"408": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"202": {
"description": "Accepted",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceOrder"
}
}
}
}
}
}
},
"/xpanse/services/deploy/retry/{serviceId}": {
"put": {
"tags": ["Service"],
"description": "Create an order to redeploy the failed service using service id.
Required role: admin or user ",
"operationId": "redeployFailedDeployment",
"parameters": [
{
"name": "serviceId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"401": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"502": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"422": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"400": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"403": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"408": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"202": {
"description": "Accepted",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceOrder"
}
}
}
}
}
}
},
"/xpanse/services/config/{serviceId}": {
"put": {
"tags": ["ServiceConfiguration"],
"description": "Update the service's configuration to the registered service template.
Required role: admin or user ",
"operationId": "changeServiceConfiguration",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "The id of the deployed service",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceConfigurationUpdate"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceOrder"
}
}
}
}
}
}
},
"/xpanse/services/changelock/{serviceId}": {
"put": {
"tags": ["Service"],
"description": "Change the lock config of the service.
Required role: admin or user ",
"operationId": "changeServiceLockConfig",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "Id of the service",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceLockConfig"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/service_templates/{id}": {
"get": {
"tags": ["ServiceVendor"],
"description": "Get service template using id.
Required role: admin or isv ",
"operationId": "details",
"parameters": [
{
"name": "id",
"in": "path",
"description": "id of service template",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceTemplateDetailVo"
}
}
}
}
}
},
"put": {
"tags": ["ServiceVendor"],
"description": "Update service template using id and ocl model.
Required role: admin or isv ",
"operationId": "update",
"parameters": [
{
"name": "id",
"in": "path",
"description": "id of service template",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Ocl"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceTemplateDetailVo"
}
}
}
}
}
},
"delete": {
"tags": ["ServiceVendor"],
"description": "Delete unregistered service template using id.
Required role: admin or isv ",
"operationId": "deleteServiceTemplate",
"parameters": [
{
"name": "id",
"in": "path",
"description": "id of service template",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/service_templates/unregister/{id}": {
"put": {
"tags": ["ServiceVendor"],
"description": "Unregister service template using id.
Required role: admin or isv ",
"operationId": "unregister",
"parameters": [
{
"name": "id",
"in": "path",
"description": "id of service template",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceTemplateDetailVo"
}
}
}
}
}
}
},
"/xpanse/service_templates/review/{id}": {
"put": {
"tags": ["CloudServiceProvider"],
"description": "Review service template registration.
Required role: admin or csp ",
"operationId": "reviewRegistration",
"parameters": [
{
"name": "id",
"in": "path",
"description": "id of service template",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReviewRegistrationRequest"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/service_templates/re-register/{id}": {
"put": {
"tags": ["ServiceVendor"],
"description": "Re-register the unregistered service template using id.
Required role: admin or isv ",
"operationId": "reRegisterServiceTemplate",
"parameters": [
{
"name": "id",
"in": "path",
"description": "id of service template",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceTemplateDetailVo"
}
}
}
}
}
}
},
"/xpanse/service_templates/file/{id}": {
"put": {
"tags": ["ServiceVendor"],
"description": "Update service template using id and URL of Ocl file.
Required role: admin or isv ",
"operationId": "fetchUpdate",
"parameters": [
{
"name": "id",
"in": "path",
"description": "id of service template",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oclLocation",
"in": "query",
"description": "URL of Ocl file",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceTemplateDetailVo"
}
}
}
}
}
}
},
"/xpanse/service/policies/{id}": {
"get": {
"tags": ["ServicePoliciesManagement"],
"description": "Get details of policy belongs to the registered service template.
Required role: admin or isv ",
"operationId": "getServicePolicyDetails",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServicePolicy"
}
}
}
}
}
},
"put": {
"tags": ["ServicePoliciesManagement"],
"description": "Update the policy belongs to the registered service template.
Required role: admin or isv ",
"operationId": "updateServicePolicy",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of the policy to be updated",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServicePolicyUpdateRequest"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServicePolicy"
}
}
}
}
}
},
"delete": {
"tags": ["ServicePoliciesManagement"],
"description": "Delete the policy belongs to the registered service template.
Required role: admin or isv ",
"operationId": "deleteServicePolicy",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/policies/{id}": {
"get": {
"tags": ["UserPoliciesManagement"],
"description": "Get the details of the policy created by the user.
Required role: admin or user ",
"operationId": "getPolicyDetails",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserPolicy"
}
}
}
}
}
},
"put": {
"tags": ["UserPoliciesManagement"],
"description": "Update the policy created by the user.
Required role: admin or user ",
"operationId": "updateUserPolicy",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of the policy to be updated",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserPolicyUpdateRequest"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserPolicy"
}
}
}
}
}
},
"delete": {
"tags": ["UserPoliciesManagement"],
"description": "Delete the policy created by the user.
Required role: admin or user ",
"operationId": "deleteUserPolicy",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/isv/credentials": {
"get": {
"tags": ["ISVCloudCredentialsManagement"],
"description": "Users in the ISV role get all cloud provider credentials added by the user for a cloud service provider.
Required role: isv ",
"operationId": "getIsvCloudCredentials",
"parameters": [
{
"name": "cspName",
"in": "query",
"description": "The cloud service provider.",
"required": false,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "type",
"in": "query",
"description": "The type of credential.",
"required": false,
"schema": {
"type": "string",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AbstractCredentialInfo"
}
}
}
}
}
}
},
"put": {
"tags": ["ISVCloudCredentialsManagement"],
"description": "Update the user credentials used for ISV to connect to the cloud service provider.
Required role: isv ",
"operationId": "updateIsvCloudCredential",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateCredential"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
},
"post": {
"tags": ["ISVCloudCredentialsManagement"],
"description": "Add the user credentials for the ISV role used to connect to the cloud service provider.
Required role: isv ",
"operationId": "addIsvCloudCredential",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateCredential"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
},
"delete": {
"tags": ["ISVCloudCredentialsManagement"],
"description": "Delete the credentials of the user in the USER role to connect to the cloud service provider.
Required role: isv ",
"operationId": "deleteIsvCloudCredential",
"parameters": [
{
"name": "cspName",
"in": "query",
"description": "The cloud service provider.",
"required": true,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "siteName",
"in": "query",
"description": "The site of the provider.",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "type",
"in": "query",
"description": "The type of credential.",
"required": true,
"schema": {
"type": "string",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
}
},
{
"name": "name",
"in": "query",
"description": "The name of of credential.",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/agent/update/status/{changeId}": {
"put": {
"tags": ["Agent Api"],
"description": "Update configuration change result for agents.",
"operationId": "updateConfigurationChangeResult",
"parameters": [
{
"name": "changeId",
"in": "path",
"description": "id of the update request.",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceConfigurationChangeResult"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/services": {
"get": {
"tags": ["Service"],
"description": "List all deployed services belongs to the user.
Required role: admin or user ",
"operationId": "listDeployedServices",
"parameters": [
{
"name": "categoryName",
"in": "query",
"description": "category of the service",
"required": false,
"schema": {
"type": "string",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
}
},
{
"name": "cspName",
"in": "query",
"description": "name of the cloud service provider",
"required": false,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "serviceName",
"in": "query",
"description": "name of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceVersion",
"in": "query",
"description": "version of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceState",
"in": "query",
"description": "deployment state of the service",
"required": false,
"schema": {
"type": "string",
"enum": [
"deploying",
"deployment successful",
"deployment failed",
"destroying",
"destroy successful",
"destroy failed",
"manual cleanup required",
"rollback failed",
"modifying",
"modification failed",
"modification successful"
]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DeployedService"
}
}
}
}
}
}
},
"post": {
"tags": ["Service"],
"description": "Create an order task to deploy new service using approved service template.
Required role: admin or user ",
"operationId": "deploy",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeployRequest"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"401": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"502": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"422": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"400": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"403": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"408": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"202": {
"description": "Accepted",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceOrder"
}
}
}
}
}
}
},
"/xpanse/services/migration": {
"post": {
"tags": ["Migration"],
"description": "Create a job to migrate the deployed service.
Required role: admin or user ",
"operationId": "migrate",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MigrateRequest"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"202": {
"description": "Accepted",
"content": {
"application/json": {
"schema": {
"type": "string",
"format": "uuid"
}
}
}
}
}
}
},
"/xpanse/service_templates": {
"get": {
"tags": ["ServiceVendor"],
"description": "List service templates with query params.
Required role: admin or isv ",
"operationId": "listServiceTemplates",
"parameters": [
{
"name": "categoryName",
"in": "query",
"description": "category of the service",
"required": false,
"schema": {
"type": "string",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
}
},
{
"name": "cspName",
"in": "query",
"description": "name of the cloud service provider",
"required": false,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "serviceName",
"in": "query",
"description": "name of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceVersion",
"in": "query",
"description": "version of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceHostingType",
"in": "query",
"description": "who hosts ths cloud resources",
"required": false,
"schema": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
}
},
{
"name": "serviceRegistrationState",
"in": "query",
"description": "state of registration",
"required": false,
"schema": {
"type": "string",
"enum": ["unregistered", "approval pending", "approved", "rejected"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceTemplateDetailVo"
}
}
}
}
}
}
},
"post": {
"tags": ["ServiceVendor"],
"description": "Register new service template using ocl model.
Required role: admin or isv ",
"operationId": "register",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Ocl"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceTemplateDetailVo"
}
}
}
}
}
}
},
"/xpanse/service_templates/file": {
"post": {
"tags": ["ServiceVendor"],
"description": "Register new service template using URL of Ocl file.
Required role: admin or isv ",
"operationId": "fetch",
"parameters": [
{
"name": "oclLocation",
"in": "query",
"description": "URL of Ocl file",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceTemplateDetailVo"
}
}
}
}
}
}
},
"/xpanse/service/policies": {
"get": {
"tags": ["ServicePoliciesManagement"],
"description": "List the policies belongs to the service.
Required role: admin or isv ",
"operationId": "listServicePolicies",
"parameters": [
{
"name": "serviceTemplateId",
"in": "query",
"description": "The id of registered service template which the policy belongs to.",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServicePolicy"
}
}
}
}
}
}
},
"post": {
"tags": ["ServicePoliciesManagement"],
"description": "Add policy for the registered service template.
Required role: admin or isv ",
"operationId": "addServicePolicy",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServicePolicyCreateRequest"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServicePolicy"
}
}
}
}
}
}
},
"/xpanse/policies": {
"get": {
"tags": ["UserPoliciesManagement"],
"description": "List the policies defined by the user.
Required role: admin or user ",
"operationId": "listUserPolicies",
"parameters": [
{
"name": "cspName",
"in": "query",
"description": "Name of csp which the policy belongs to.",
"required": false,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "enabled",
"in": "query",
"description": "Is the policy enabled.",
"required": false,
"schema": {
"type": "boolean"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserPolicy"
}
}
}
}
}
}
},
"post": {
"tags": ["UserPoliciesManagement"],
"description": "Add policy created by the user.
Required role: admin or user ",
"operationId": "addUserPolicy",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserPolicyCreateRequest"
}
}
},
"required": true
},
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserPolicy"
}
}
}
}
}
}
},
"/xpanse/workflow/tasks": {
"get": {
"tags": ["Workflow"],
"description": "Query all tasks of the given user
Required role: admin or user ",
"operationId": "queryTasks",
"parameters": [
{
"name": "status",
"in": "query",
"description": "the status of task",
"required": false,
"schema": {
"type": "string",
"enum": ["done", "failed"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkFlowTask"
}
}
}
}
}
}
}
},
"/xpanse/services/{serviceId}/tasks": {
"get": {
"tags": ["ServiceStatusManagement"],
"description": "List state management tasks of the service.
Required role: admin or user ",
"operationId": "listServiceStateManagementTasks",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "id of the service",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "taskType",
"in": "query",
"description": "type of the management task",
"required": false,
"schema": {
"type": "string",
"enum": ["start", "stop", "restart"]
}
},
{
"name": "taskStatus",
"in": "query",
"description": "status of the task",
"required": false,
"schema": {
"type": "string",
"enum": ["created", "in progress", "successful", "failed"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceStateManagementTaskDetails"
}
}
}
}
}
}
},
"delete": {
"tags": ["ServiceStatusManagement"],
"description": "Delete all state management tasks of the service.
Required role: admin or user ",
"operationId": "deleteManagementTasksByServiceId",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "id of the service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/services/{serviceId}/resources/compute": {
"get": {
"tags": ["Service"],
"description": "List compute resources of the service.
Required role: admin or user ",
"operationId": "getComputeResourceInventoryOfService",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "Id of the deployed service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DeployResource"
}
}
}
}
}
}
}
},
"/xpanse/services/{serviceId}/orders": {
"get": {
"tags": ["ServiceOrders"],
"description": "List service orders of the service
Required role: admin or isv or user ",
"operationId": "getAllOrdersByServiceId",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "Id of the service",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "taskType",
"in": "query",
"description": "Task type of the service order.",
"required": false,
"schema": {
"type": "string",
"enum": ["deploy", "redeploy", "modify", "destroy", "serviceConfigurationUpdate", "purge"]
}
},
{
"name": "taskStatus",
"in": "query",
"description": "Task status of the service order",
"required": false,
"schema": {
"type": "string",
"enum": ["created", "in progress", "successful", "failed"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceOrderDetails"
}
}
}
}
}
}
},
"delete": {
"tags": ["ServiceOrders"],
"description": "Delete all service orders of the service.
Required role: admin or isv or user ",
"operationId": "deleteOrdersByServiceId",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "Id of the service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/services/{serviceId}/deployment/status": {
"get": {
"tags": ["Service"],
"description": "Long-polling method to get the latest service deployment or service update status.
Required role: admin or isv or user ",
"operationId": "getLatestServiceDeploymentStatus",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "ID of the service",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "lastKnownServiceDeploymentState",
"in": "query",
"description": "Last known service status to client. When provided, the service will wait for a configured period time until to see if there is a change to the last known state.",
"required": false,
"schema": {
"type": "string",
"enum": [
"deploying",
"deployment successful",
"deployment failed",
"destroying",
"destroy successful",
"destroy failed",
"manual cleanup required",
"rollback failed",
"modifying",
"modification failed",
"modification successful"
]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeploymentStatusUpdate"
}
}
}
}
}
}
},
"/xpanse/services/tasks/{taskId}": {
"get": {
"tags": ["ServiceStatusManagement"],
"description": "Get state management task details by the task id.
Required role: admin or user ",
"operationId": "getManagementTaskDetailsByTaskId",
"parameters": [
{
"name": "taskId",
"in": "path",
"description": "id of the task",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceStateManagementTaskDetails"
}
}
}
}
}
},
"delete": {
"tags": ["ServiceStatusManagement"],
"description": "Delete service state management task by the task id.
Required role: admin or user ",
"operationId": "deleteManagementTaskByTaskId",
"parameters": [
{
"name": "taskId",
"in": "path",
"description": "id of the task",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/services/recreate": {
"get": {
"tags": ["Service"],
"description": "List all services recreate by a user.
Required role: admin or user ",
"operationId": "listServiceRecreates",
"parameters": [
{
"name": "recreateId",
"in": "query",
"description": "Id of the service recreate",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceId",
"in": "query",
"description": "Id of the old service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "recreateStatus",
"in": "query",
"description": "Status of the service recreate",
"required": false,
"schema": {
"type": "string",
"enum": [
"RecreateStarted",
"RecreateCompleted",
"RecreateFailed",
"DestroyStarted",
"DestroyFailed",
"DestroyCompleted",
"DeployStarted",
"DeployFailed",
"DeployCompleted"
]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceRecreateDetails"
}
}
}
}
}
}
}
},
"/xpanse/services/recreate/{recreateId}": {
"get": {
"tags": ["Service"],
"description": "Get recreate records based on recreate id.
Required role: admin or user ",
"operationId": "getRecreateOrderDetailsById",
"parameters": [
{
"name": "recreateId",
"in": "path",
"description": "Recreate ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceRecreateDetails"
}
}
}
}
}
}
},
"/xpanse/services/orders/{orderId}": {
"get": {
"tags": ["ServiceOrders"],
"description": "Get details of the service order by the order id.
Required role: admin or isv or user ",
"operationId": "getOrderDetailsByOrderId",
"parameters": [
{
"name": "orderId",
"in": "path",
"description": "Id of the service order",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceOrderDetails"
}
}
}
}
}
},
"delete": {
"tags": ["ServiceOrders"],
"description": "Delete the service order by the order id.
Required role: admin or isv or user ",
"operationId": "deleteOrderByOrderId",
"parameters": [
{
"name": "orderId",
"in": "path",
"description": "Id of the service order",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"204": {
"description": "No Content"
}
}
}
},
"/xpanse/services/orders/{orderId}/status": {
"get": {
"tags": ["ServiceOrders"],
"description": "Long-polling method to get the latest or updated task status of the service order.
Required role: admin or isv or user ",
"operationId": "getLatestServiceOrderStatus",
"parameters": [
{
"name": "orderId",
"in": "path",
"description": "Id of the service order",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "lastKnownServiceDeploymentState",
"in": "query",
"description": "Last known service order task status to client. When provided, the service will wait for a configured period time until to see if there is a change to the last known state.",
"required": false,
"schema": {
"type": "string",
"enum": ["created", "in progress", "successful", "failed"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceOrderStatusUpdate"
}
}
}
}
}
}
},
"/xpanse/services/migrations": {
"get": {
"tags": ["Migration"],
"description": "List all services migration by a user.
Required role: admin or user ",
"operationId": "listServiceMigrations",
"parameters": [
{
"name": "migrationId",
"in": "query",
"description": "Id of the service migrate",
"required": false,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "newServiceId",
"in": "query",
"description": "Id of the new service",
"required": false,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "oldServiceId",
"in": "query",
"description": "Id of the old service",
"required": false,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "migrationStatus",
"in": "query",
"description": "Status of the service migrate",
"required": false,
"schema": {
"type": "string",
"enum": [
"MigrationStarted",
"MigrationCompleted",
"MigrationFailed",
"DataExportStarted",
"DataExportFailed",
"DataExportCompleted",
"DeployStarted",
"DeployFailed",
"DeployCompleted",
"DataImportStarted",
"DataImportFailed",
"DataImportCompleted",
"DestroyStarted",
"DestroyFailed",
"DestroyCompleted"
]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceMigrationDetails"
}
}
}
}
}
}
}
},
"/xpanse/services/migration/{migrationId}": {
"get": {
"tags": ["Migration"],
"description": "Get migration records based on migration id.
Required role: admin or user ",
"operationId": "getMigrationOrderDetailsById",
"parameters": [
{
"name": "migrationId",
"in": "path",
"description": "Migration ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceMigrationDetails"
}
}
}
}
}
}
},
"/xpanse/services/isv": {
"get": {
"tags": ["Service"],
"description": "List all deployed services by a user.
Required role: isv ",
"operationId": "listDeployedServicesOfIsv",
"parameters": [
{
"name": "categoryName",
"in": "query",
"description": "category of the service",
"required": false,
"schema": {
"type": "string",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
}
},
{
"name": "cspName",
"in": "query",
"description": "name of the cloud service provider",
"required": false,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "serviceName",
"in": "query",
"description": "name of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceVersion",
"in": "query",
"description": "version of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceState",
"in": "query",
"description": "deployment state of the service",
"required": false,
"schema": {
"type": "string",
"enum": [
"deploying",
"deployment successful",
"deployment failed",
"destroying",
"destroy successful",
"destroy failed",
"manual cleanup required",
"rollback failed",
"modifying",
"modification failed",
"modification successful"
]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DeployedService"
}
}
}
}
}
}
}
},
"/xpanse/services/isv/details/vendor_hosted/{serviceId}": {
"get": {
"tags": ["Service"],
"description": "Get the details of the deployed service by service id.
Required role: isv ",
"operationId": "getServiceDetailsByIdForIsv",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "Id of deployed service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeployedServiceDetails"
}
}
}
}
}
}
},
"/xpanse/services/details": {
"get": {
"tags": ["Service"],
"description": "List details of deployed services using parameters.
Required role: admin or user ",
"operationId": "listDeployedServicesDetails",
"parameters": [
{
"name": "categoryName",
"in": "query",
"description": "category of the service",
"required": false,
"schema": {
"type": "string",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
}
},
{
"name": "cspName",
"in": "query",
"description": "name of the cloud service provider",
"required": false,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "serviceName",
"in": "query",
"description": "name of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceVersion",
"in": "query",
"description": "version of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceState",
"in": "query",
"description": "deployment state of the service",
"required": false,
"schema": {
"type": "string",
"enum": [
"deploying",
"deployment successful",
"deployment failed",
"destroying",
"destroy successful",
"destroy failed",
"manual cleanup required",
"rollback failed",
"modifying",
"modification failed",
"modification successful"
]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DeployedService"
}
}
}
}
}
}
}
},
"/xpanse/services/details/vendor_hosted/{serviceId}": {
"get": {
"tags": ["Service"],
"description": "Get deployed service details by serviceId.
Required role: admin or user ",
"operationId": "getVendorHostedServiceDetailsById",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "Id of the service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VendorHostedDeployedServiceDetails"
}
}
}
}
}
}
},
"/xpanse/services/details/self_hosted/{serviceId}": {
"get": {
"tags": ["Service"],
"description": "Get details of the deployed service by id.
Required role: admin or user ",
"operationId": "getSelfHostedServiceDetailsById",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "Id of the service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeployedServiceDetails"
}
}
}
}
}
}
},
"/xpanse/services/config/requests": {
"get": {
"tags": ["ServiceConfiguration"],
"description": "List service's configuration.
Required role: admin or user ",
"operationId": "getAllServiceConfigurationChangeDetails",
"parameters": [
{
"name": "serviceId",
"in": "query",
"description": "Id of the deployed service",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "orderId",
"in": "query",
"description": "id of the service order",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "resourceName",
"in": "query",
"description": "name of the service resource",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "configManager",
"in": "query",
"description": "Manager of the service configuration parameter.",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "status",
"in": "query",
"description": "Status of the service configuration",
"required": false,
"schema": {
"type": "string",
"enum": ["pending", "processing", "successful", "error"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceConfigurationChangeOrderDetails"
}
}
}
}
}
}
}
},
"/xpanse/service/current/config/{serviceId}": {
"get": {
"tags": ["ServiceConfiguration"],
"description": "Query the service's current configuration by id of the deployed service.
Required role: admin or user ",
"operationId": "getCurrentConfigurationOfService",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "The id of the deployed service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceConfigurationDetails"
}
}
}
}
}
}
},
"/xpanse/pricing/{templateId}/{regionName}/{siteName}/{billingMode}/{flavorName}": {
"get": {
"tags": ["ServicePrices"],
"description": "Get the price of one specific flavor of the service.
Required role: admin or user ",
"operationId": "getServicePriceByFlavor",
"parameters": [
{
"name": "templateId",
"in": "path",
"description": "id of the service template",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "regionName",
"in": "path",
"description": "region name of the service",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "siteName",
"in": "path",
"description": "site name of the region belongs to",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "billingMode",
"in": "path",
"description": "mode of billing",
"required": true,
"schema": {
"type": "string",
"enum": ["Fixed", "Pay per Use"]
}
},
{
"name": "flavorName",
"in": "path",
"description": "flavor name of the service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlavorPriceResult"
}
}
}
}
}
}
},
"/xpanse/pricing/service/{templateId}/{regionName}/{siteName}/{billingMode}": {
"get": {
"tags": ["ServicePrices"],
"description": "Get the prices of all flavors of the service
Required role: admin or user ",
"operationId": "getPricesByService",
"parameters": [
{
"name": "templateId",
"in": "path",
"description": "id of the service template",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "regionName",
"in": "path",
"description": "region name of the service",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "siteName",
"in": "path",
"description": "site name of the region belongs to",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "billingMode",
"in": "path",
"description": "mode of billing",
"required": true,
"schema": {
"type": "string",
"enum": ["Fixed", "Pay per Use"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FlavorPriceResult"
}
}
}
}
}
}
}
},
"/xpanse/metrics": {
"get": {
"tags": ["Monitor"],
"description": "Get metrics of a deployed service or a resource.
Required role: admin or user ",
"operationId": "getMetrics",
"parameters": [
{
"name": "serviceId",
"in": "query",
"description": "Id of the deployed service",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "resourceId",
"in": "query",
"description": "Id of resource in the deployed service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "monitorResourceType",
"in": "query",
"description": "Types of the monitor resource.",
"required": false,
"schema": {
"type": "string",
"enum": ["cpu", "mem", "vm_network_incoming", "vm_network_outgoing"]
}
},
{
"name": "from",
"in": "query",
"description": "Start UNIX timestamp in milliseconds. If no value filled,the default value is the UNIX timestamp in milliseconds of the five minutes ago.",
"required": false,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int64"
}
},
{
"name": "to",
"in": "query",
"description": "End UNIX timestamp in milliseconds. If no value filled,the default value is the UNIX timestamp in milliseconds of the current time.",
"required": false,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int64"
}
},
{
"name": "granularity",
"in": "query",
"description": "Return metrics collected in provided time interval. This depends on how the source systems have generated/collected metrics.",
"required": false,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "onlyLastKnownMetric",
"in": "query",
"description": "Returns only the last known metric. When this parameter is set then all other query parameters are ignored.",
"required": false,
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Metric"
}
}
}
}
}
}
}
},
"/xpanse/health": {
"get": {
"tags": ["Admin"],
"description": "Check health of API service and backend systems.
Required role: admin or csp or isv or user ",
"operationId": "healthCheck",
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SystemStatus"
}
}
}
}
}
}
},
"/xpanse/csps/{cspName}/sites": {
"get": {
"tags": ["CredentialsConfiguration"],
"description": "List the sites of the cloud service provider.
Required role: isv or admin or user ",
"operationId": "getSitesOfCsp",
"parameters": [
{
"name": "cspName",
"in": "path",
"description": "The cloud service provider",
"required": true,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
},
"/xpanse/csps/active": {
"get": {
"tags": ["Admin"],
"description": "List cloud service providers with active plugin.
Required role: admin or csp or isv or user ",
"operationId": "getActiveCsps",
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
}
}
}
}
}
}
},
"/xpanse/csp/service_templates": {
"get": {
"tags": ["CloudServiceProvider"],
"description": "List managed service templates with query params.
Required role: admin or csp ",
"operationId": "listManagedServiceTemplates",
"parameters": [
{
"name": "categoryName",
"in": "query",
"description": "category of the service",
"required": false,
"schema": {
"type": "string",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
}
},
{
"name": "serviceName",
"in": "query",
"description": "name of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceVersion",
"in": "query",
"description": "version of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceHostingType",
"in": "query",
"description": "who hosts ths cloud resources",
"required": false,
"schema": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
}
},
{
"name": "serviceRegistrationState",
"in": "query",
"description": "state of registration",
"required": false,
"schema": {
"type": "string",
"enum": ["unregistered", "approval pending", "approved", "rejected"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceTemplateDetailVo"
}
}
}
}
}
}
}
},
"/xpanse/csp/service_templates/{id}": {
"get": {
"tags": ["CloudServiceProvider"],
"description": "view service template by id.
Required role: admin or csp ",
"operationId": "getRegistrationDetails",
"parameters": [
{
"name": "id",
"in": "path",
"description": "id of service template",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceTemplateDetailVo"
}
}
}
}
}
}
},
"/xpanse/csp/resources/{deployResourceKind}": {
"get": {
"tags": ["CloudResources"],
"description": "List existing cloud resource names with kind
Required role: admin or user ",
"operationId": "getExistingResourceNamesWithKind",
"parameters": [
{
"name": "csp",
"in": "query",
"description": "name of the cloud service provider",
"required": true,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "siteName",
"in": "query",
"description": "the site of the service belongs to",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "regionName",
"in": "query",
"description": "name of the region",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "deployResourceKind",
"in": "path",
"description": "kind of the CloudResource",
"required": true,
"schema": {
"type": "string",
"enum": [
"vm",
"container",
"publicIP",
"vpc",
"volume",
"unknown",
"security_group",
"security_group_rule",
"keypair",
"subnet"
]
}
},
{
"name": "serviceId",
"in": "query",
"description": "id of the deployed service",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
},
"/xpanse/csp/region/azs": {
"get": {
"tags": ["Service"],
"description": "Get availability zones with csp and region.
Required role: admin or csp or isv or user ",
"operationId": "getAvailabilityZones",
"parameters": [
{
"name": "cspName",
"in": "query",
"description": "name of the cloud service provider",
"required": true,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "siteName",
"in": "query",
"description": "site of the region belongs to",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "regionName",
"in": "query",
"description": "name of the region",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "serviceId",
"in": "query",
"description": "Id of the deployed service",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
},
"/xpanse/credentials/openapi/{csp}/{type}": {
"get": {
"tags": ["CredentialsConfiguration"],
"description": "Returns the OpenAPI document for adding a credential.
Required role: isv or admin or user ",
"operationId": "getCredentialOpenApi",
"parameters": [
{
"name": "csp",
"in": "path",
"description": "The cloud service provider.",
"required": true,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "type",
"in": "path",
"description": "The type of credential.",
"required": true,
"schema": {
"type": "string",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Link"
}
}
}
}
}
}
},
"/xpanse/credentials/capabilities": {
"get": {
"tags": ["CredentialsConfiguration"],
"description": "List the credential capabilities defined by the cloud service provider.
Required role: isv or admin or user ",
"operationId": "getCredentialCapabilities",
"parameters": [
{
"name": "cspName",
"in": "query",
"description": "name of the cloud service provider.",
"required": true,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "type",
"in": "query",
"description": "The type of credential.",
"required": false,
"schema": {
"type": "string",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
}
},
{
"name": "name",
"in": "query",
"description": "The name of credential.",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AbstractCredentialInfo"
}
}
}
}
}
}
}
},
"/xpanse/credential_types": {
"get": {
"tags": ["CredentialsConfiguration"],
"description": "List the credential types supported by the cloud service provider.
Required role: isv or admin or user ",
"operationId": "getCredentialTypes",
"parameters": [
{
"name": "cspName",
"in": "query",
"description": "The cloud service provider.",
"required": false,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
}
}
}
}
}
}
}
},
"/xpanse/catalog/services": {
"get": {
"tags": ["ServiceCatalog"],
"description": "List of all approved services which are available for user to order.
Required role: admin or user ",
"operationId": "listOrderableServices",
"parameters": [
{
"name": "categoryName",
"in": "query",
"description": "category of the service",
"required": false,
"schema": {
"type": "string",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
}
},
{
"name": "cspName",
"in": "query",
"description": "name of the cloud service provider",
"required": false,
"schema": {
"type": "string",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
}
},
{
"name": "serviceName",
"in": "query",
"description": "name of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceVersion",
"in": "query",
"description": "version of the service",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "serviceHostingType",
"in": "query",
"description": "who hosts ths cloud resources",
"required": false,
"schema": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserOrderableServiceVo"
}
}
},
"application/hal+json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserOrderableServiceVo"
}
}
}
}
}
}
}
},
"/xpanse/catalog/services/{id}": {
"get": {
"tags": ["ServiceCatalog"],
"description": "Get deployable service by id.
Required role: admin or user ",
"operationId": "getOrderableServiceDetails",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The id of orderable service.",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserOrderableServiceVo"
}
}
}
}
}
}
},
"/xpanse/catalog/services/{id}/openapi": {
"get": {
"tags": ["ServiceCatalog"],
"description": "Get the API document of the orderable service.
Required role: admin or isv or user ",
"operationId": "openApi",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Link"
}
}
}
}
}
}
},
"/xpanse/agent/poll/{serviceId}/{resourceName}": {
"get": {
"tags": ["Agent Api"],
"description": "Get pending configuration change request for agents to poll.",
"operationId": "getPendingConfigurationChangeRequest",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "The id of the deployed service",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "resourceName",
"in": "path",
"description": "The name of the resource of deployed service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "pending configuration update request details",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceConfigurationChangeRequest"
}
}
}
},
"204": {
"description": "no pending configuration update requests"
}
}
}
},
"/auth/token": {
"get": {
"tags": ["AuthManagement"],
"description": "Get token info by authorization code.",
"operationId": "getAccessToken",
"parameters": [
{
"name": "code",
"in": "query",
"description": "The authorization code.",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "state",
"in": "query",
"description": "Opaque value used to maintain state.",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TokenResponse"
}
}
}
}
}
}
},
"/auth/authorize": {
"get": {
"tags": ["AuthManagement"],
"description": "Get and redirect authorization url for user to authenticate.",
"operationId": "authorize",
"responses": {
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"502": {
"description": "Bad Gateway",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"408": {
"description": "Request Timeout",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Response"
}
}
}
},
"200": {
"description": "OK"
}
}
}
},
"/xpanse/services/{serviceId}": {
"delete": {
"tags": ["Service"],
"description": "Create an order task to destroy the deployed service using id.
Required role: admin or user ",
"operationId": "destroy",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "Id of the service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"401": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"502": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"422": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"400": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"403": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"408": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"202": {
"description": "Accepted",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceOrder"
}
}
}
}
}
}
},
"/xpanse/services/purge/{serviceId}": {
"delete": {
"tags": ["Service"],
"description": "Create an order task to purge the deployed service using service id.
Required role: admin or user ",
"operationId": "purge",
"parameters": [
{
"name": "serviceId",
"in": "path",
"description": "Id of the service",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"500": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"401": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"502": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"422": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"400": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"403": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"408": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrderFailedResponse"
}
}
}
},
"202": {
"description": "Accepted",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceOrder"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"Response": {
"required": ["details", "resultType", "success"],
"type": "object",
"properties": {
"resultType": {
"type": "string",
"description": "The result code of response.",
"enum": [
"Success",
"Runtime Error",
"Parameters Invalid",
"Terraform Script Invalid",
"Unprocessable Entity",
"Response Not Valid",
"Failure while connecting to backend",
"Credential Capability Not Found",
"Credentials Not Found",
"Credential Variables Not Complete",
"Flavor Invalid",
"Terraform Execution Failed",
"Plugin Not Found",
"Deployer Not Found",
"No Credential Definition Available",
"Invalid Service State",
"Resource Invalid For Monitoring",
"Unhandled Exception",
"Service Template Already Registered",
"Icon Processing Failed",
"Service Template Not Registered",
"Service Template Not Approved",
"Service Template Already Reviewed",
"Invalid Service Version",
"Invalid Service Flavors",
"Invalid Billing Config",
"Unavailable Service Regions",
"Service Deployment Not Found",
"Resource Not Found",
"Deployment Variable Invalid",
"Service Template Update Not Allowed",
"Service Template Still In Use",
"Unauthorized",
"Access Denied",
"Sensitive Field Encryption Or Decryption Failed Exception",
"Unsupported Enum Value",
"Terraform Boot Request Failed",
"Tofu Maker Request Failed",
"Metrics Data Not Ready",
"Variable Validation Failed",
"Variable Schema Definition Invalid",
"Policy Not Found",
"Duplicate Policy",
"Policy Validation Failed",
"Policy Evaluation Failed",
"Current Login User No Found",
"Service Details No Accessible",
"Migrating activiti Task Not Found",
"Service Migration Failed Exception",
"Service Migration Not Found",
"Service Locked",
"Eula Not Accepted",
"Service Flavor Downgrade Not Allowed",
"Billing Mode Not Supported",
"Service State Management Task Not Found",
"Service Order Not Found",
"Service Price Calculation Failed",
"Invalid Git Repo Details",
"File Locked",
"Service Configuration Invalid",
"Service Configuration Update Request Not Found",
"Service Configuration Not Found",
"Invalid Deployer Tool"
]
},
"details": {
"type": "array",
"description": "Details of the errors occurred",
"items": {
"type": "string",
"description": "Details of the errors occurred"
}
},
"success": {
"type": "boolean",
"description": "Describes if the request is successful"
}
}
},
"CreateCredential": {
"required": ["csp", "name", "site", "timeToLive", "type", "variables"],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the credential"
},
"csp": {
"type": "string",
"description": "The cloud service provider of the credential.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"site": {
"type": "string",
"description": "The site to which the credentials belong to."
},
"description": {
"type": "string",
"description": "The description of the credential"
},
"type": {
"type": "string",
"description": "The type of the credential",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
},
"variables": {
"type": "array",
"description": "The variables list of the credential. The list elements must be unique.",
"items": {
"$ref": "#/components/schemas/CredentialVariable"
}
},
"timeToLive": {
"type": "integer",
"description": "The time in seconds to live of the credential",
"format": "int32",
"default": 3600
}
}
},
"CredentialVariable": {
"required": ["description", "isSensitive", "name", "value"],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the CredentialVariable,this field is provided by the plugin of cloud service provider."
},
"description": {
"type": "string",
"description": "The description of the CredentialVariable,this field is provided by the plugin of cloud service provider."
},
"isMandatory": {
"type": "boolean",
"description": "If the variable is mandatory. If is optional then the credential completeness check will ignore this variable. It is upto the plugin to decide what needs to be done if this optional credential variable is present.",
"default": true
},
"isSensitive": {
"type": "boolean",
"description": "Defines if the particular variable contains sensitive data. For example the value is false for username and true for password variables respectively."
},
"value": {
"type": "string",
"description": "The value of the CredentialVariable, this field is filled by the user."
}
},
"description": "The variables list of the credential. The list elements must be unique."
},
"ModifyRequest": {
"type": "object",
"properties": {
"customerServiceName": {
"type": "string",
"description": "Customer's name for the service. Used only for customer's reference. If not provided, the existing customerServiceName from the service will be reused."
},
"flavor": {
"type": "string",
"description": "The flavor of the Service."
},
"serviceRequestProperties": {
"type": "object",
"additionalProperties": true,
"description": "The properties for the requested service"
}
}
},
"OrderFailedResponse": {
"required": ["details", "resultType", "success"],
"type": "object",
"properties": {
"resultType": {
"type": "string",
"description": "The result code of response.",
"enum": [
"Success",
"Runtime Error",
"Parameters Invalid",
"Terraform Script Invalid",
"Unprocessable Entity",
"Response Not Valid",
"Failure while connecting to backend",
"Credential Capability Not Found",
"Credentials Not Found",
"Credential Variables Not Complete",
"Flavor Invalid",
"Terraform Execution Failed",
"Plugin Not Found",
"Deployer Not Found",
"No Credential Definition Available",
"Invalid Service State",
"Resource Invalid For Monitoring",
"Unhandled Exception",
"Service Template Already Registered",
"Icon Processing Failed",
"Service Template Not Registered",
"Service Template Not Approved",
"Service Template Already Reviewed",
"Invalid Service Version",
"Invalid Service Flavors",
"Invalid Billing Config",
"Unavailable Service Regions",
"Service Deployment Not Found",
"Resource Not Found",
"Deployment Variable Invalid",
"Service Template Update Not Allowed",
"Service Template Still In Use",
"Unauthorized",
"Access Denied",
"Sensitive Field Encryption Or Decryption Failed Exception",
"Unsupported Enum Value",
"Terraform Boot Request Failed",
"Tofu Maker Request Failed",
"Metrics Data Not Ready",
"Variable Validation Failed",
"Variable Schema Definition Invalid",
"Policy Not Found",
"Duplicate Policy",
"Policy Validation Failed",
"Policy Evaluation Failed",
"Current Login User No Found",
"Service Details No Accessible",
"Migrating activiti Task Not Found",
"Service Migration Failed Exception",
"Service Migration Not Found",
"Service Locked",
"Eula Not Accepted",
"Service Flavor Downgrade Not Allowed",
"Billing Mode Not Supported",
"Service State Management Task Not Found",
"Service Order Not Found",
"Service Price Calculation Failed",
"Invalid Git Repo Details",
"File Locked",
"Service Configuration Invalid",
"Service Configuration Update Request Not Found",
"Service Configuration Not Found",
"Invalid Deployer Tool"
]
},
"details": {
"type": "array",
"description": "Details of the errors occurred",
"items": {
"type": "string",
"description": "Details of the errors occurred"
}
},
"success": {
"type": "boolean",
"description": "Describes if the request is successful"
},
"serviceId": {
"type": "string",
"description": "The service id associated with the request."
},
"orderId": {
"type": "string",
"description": "The order id associated with the request."
}
}
},
"ServiceOrder": {
"required": ["orderId", "serviceId"],
"type": "object",
"properties": {
"orderId": {
"type": "string",
"description": "The id of the service order.",
"format": "uuid"
},
"serviceId": {
"type": "string",
"description": "The id of the deployed service.",
"format": "uuid"
}
}
},
"ServiceConfigurationUpdate": {
"required": ["configuration"],
"type": "object",
"properties": {
"configuration": {
"type": "object",
"additionalProperties": true,
"description": "The service configuration to be modified"
}
}
},
"ServiceLockConfig": {
"type": "object",
"properties": {
"modifyLocked": {
"type": "boolean"
},
"destroyLocked": {
"type": "boolean"
}
}
},
"AnsibleScriptConfig": {
"required": [
"branch",
"galaxyFile",
"isPrepareAnsibleEnvironment",
"playbookName",
"pythonVersion",
"repoUrl",
"requirementsFile",
"virtualEnv"
],
"type": "object",
"properties": {
"playbookName": {
"type": "string",
"description": "name of the ansible playbook. Should be the fully qualified file name (including the directory path) in the repo.",
"example": "playbook-name.yml"
},
"virtualEnv": {
"type": "string",
"description": "Path where the virtualenv must be created.",
"example": "/tmp/virtualEnv"
},
"pythonVersion": {
"type": "string",
"description": "Version of the python. This version of python must be available in node which is acting as the configManager.",
"example": "3.1"
},
"isPrepareAnsibleEnvironment": {
"type": "boolean",
"description": "The agent will prepare the virtual environment if this true.Otherwise it is assumed that the environment is already prepared as part of the resource creation or the VM base image build."
},
"repoUrl": {
"type": "string",
"description": "Url of the script repo."
},
"branch": {
"type": "string",
"description": "Branch of the git repo."
},
"requirementsFile": {
"type": "string",
"description": "the python module requirements file in GIT repo. Should be the fully qualified file name (including the directory path). ",
"example": "modules/requirements.txt"
},
"galaxyFile": {
"type": "string",
"description": "Full path of the roles and collections requirements file in GIT repo."
},
"ansibleInventoryRequired": {
"type": "boolean",
"description": "Defines if the complete service inventory is necessary for running the ansible job."
}
}
},
"AutoFill": {
"required": ["deployResourceKind", "isAllowCreate"],
"type": "object",
"properties": {
"deployResourceKind": {
"type": "string",
"description": "Type of the cloud resource to be reused.",
"enum": [
"vm",
"container",
"publicIP",
"vpc",
"volume",
"unknown",
"security_group",
"security_group_rule",
"keypair",
"subnet"
]
},
"isAllowCreate": {
"type": "boolean",
"description": " defines if the required cloud resource can be newly created or should the existing resources must only be used."
}
},
"description": "Service config parameter autofill"
},
"AvailabilityZoneConfig": {
"required": ["displayName", "mandatory", "varName"],
"type": "object",
"properties": {
"displayName": {
"type": "string",
"description": "The display name of availability zone."
},
"varName": {
"type": "string",
"description": "The variable name of availability zone."
},
"mandatory": {
"type": "boolean",
"description": "Indicates if the variable is mandatory."
},
"description": {
"type": "string",
"description": "The description of availability zone."
}
},
"description": "The list of availability zone configuration of the service.The list elements must be unique."
},
"Billing": {
"required": ["billingModes"],
"type": "object",
"properties": {
"billingModes": {
"type": "array",
"description": "Supported billing modes by the managed service. The list elements must be unique.",
"items": {
"type": "string",
"description": "Supported billing modes by the managed service. The list elements must be unique.",
"enum": ["Fixed", "Pay per Use"]
}
},
"defaultBillingMode": {
"type": "string",
"description": " This is used only for display purposes. When provided, this billingMode will be selected in the frontends by default.",
"enum": ["Fixed", "Pay per Use"]
}
},
"description": "The billing policy of the managed service"
},
"CloudServiceProvider": {
"required": ["name", "regions"],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The Cloud Service Provider.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"regions": {
"type": "array",
"description": "The regions of the Cloud Service Provider. The list elements must be unique.",
"items": {
"$ref": "#/components/schemas/Region"
}
}
},
"description": "The cloud service provider of the managed service"
},
"ConfigManageScript": {
"required": ["ansibleScriptConfig", "configManager", "runOnlyOnce"],
"type": "object",
"properties": {
"configManager": {
"type": "string",
"description": "should be the name of the resource available in the deployer script."
},
"runOnlyOnce": {
"type": "boolean",
"description": "Means should the configuration update run on each node of the specific component or just one."
},
"ansibleScriptConfig": {
"$ref": "#/components/schemas/AnsibleScriptConfig"
}
},
"description": "The collection of the configuration manage script."
},
"DeployVariable": {
"required": ["dataType", "description", "kind", "mandatory", "modificationImpact", "name"],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the deploy variable"
},
"kind": {
"$ref": "#/components/schemas/DeployVariableKind"
},
"dataType": {
"type": "string",
"description": "The type of the deploy variable",
"enum": ["string", "number", "boolean"]
},
"example": {
"type": "string",
"description": "The example value of the deploy variable"
},
"description": {
"type": "string",
"description": "The description of the deploy variable"
},
"value": {
"type": "string",
"description": "The value of the deploy variable. Value can be provided for default variables"
},
"mandatory": {
"type": "boolean",
"description": "Indicates if the variable is mandatory"
},
"valueSchema": {
"type": "object",
"additionalProperties": true,
"description": "valueSchema of the variable. The key be any keyword that is part of the JSON schema definition which can be found here https://json-schema.org/draft/2020-12/schema"
},
"sensitiveScope": {
"type": "string",
"description": "Sensitive scope of variable storage",
"enum": ["none", "once", "always"]
},
"autoFill": {
"$ref": "#/components/schemas/AutoFill"
},
"modificationImpact": {
"$ref": "#/components/schemas/ModificationImpact"
}
},
"description": "The variables for the deployment, which will be passed to the deployer.The list elements must be unique."
},
"DeployVariableKind": {
"type": "string",
"description": "- `fix_env`: Values for variable of this type are defined by the managed service provider \nin the OCL template. Runtime will inject it to deployer as environment variables. \nThis variable is not visible to the end user.\n- `fix_variable`: Values for variable of this type are defined by the managed service \nprovider in the OCL template. Runtime will inject it to deployer as usual variables. \nThis variable is not visible to the end user.\n- `env`: Value for a variable of this type can be provided by end user. \nIf marked as mandatory then end user must provide value to this variable. \nIf marked as optional and if end user does not provide it, \nthen the fallback value to this variable is read by runtime (it can read from other sources,\n e.g., OS env variables). This variable is injected as an environment \n variable to the deployer.\n- `variable`: Value for a variable of this type can be provided by end user. \nIf marked as mandatory then end user must provide value to this variable. \nIf marked as optional and if end user does not provide it, \nthen the fallback value to this variable is read by runtime (it can read from other sources,\n e.g., OS env variables). This variable is injected as a regular variable to the deployer.\n- `env_env`: Value to this variable is read by runtime \n(it can read from other sources, e.g., OS env variables) \nand injected as an environment variable to the deployer. \nEnd user cannot see or change this variable.\n- `env_variable`: Value to this variable is read by runtime \n(it can read from other sources, e.g., OS env variables) \nand injected as a regular variable to the deployer. \nEnd user cannot see or change this variable.",
"enum": ["fix_env", "fix_variable", "env", "variable", "env_env", "env_variable"]
},
"DeployerTool": {
"required": ["kind", "version"],
"type": "object",
"properties": {
"kind": {
"type": "string",
"description": "The type of the deployer which will handle the service deployment.",
"enum": ["terraform", "opentofu"]
},
"version": {
"pattern": "^(=|>=|<=)\\s*[vV]?\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}$",
"type": "string",
"description": "The version of the deployer which will handle the service deployment."
}
},
"description": "The deployer tool which will handle the service deployment."
},
"Deployment": {
"required": ["deployerTool", "variables"],
"type": "object",
"properties": {
"deployerTool": {
"$ref": "#/components/schemas/DeployerTool"
},
"variables": {
"type": "array",
"description": "The variables for the deployment, which will be passed to the deployer.The list elements must be unique.",
"items": {
"$ref": "#/components/schemas/DeployVariable"
}
},
"credentialType": {
"type": "string",
"description": "The credential type to do the deployment",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
},
"serviceAvailabilityConfig": {
"maxItems": 2147483647,
"minItems": 1,
"type": "array",
"description": "The list of availability zone configuration of the service.The list elements must be unique.",
"items": {
"$ref": "#/components/schemas/AvailabilityZoneConfig"
}
},
"deployer": {
"type": "string",
"description": "The real deployer, something like terraform scripts. Either deployer or deployFromGitRepo must be provided."
},
"scriptsRepo": {
"$ref": "#/components/schemas/ScriptsRepo"
}
},
"description": "The deployment of the managed service"
},
"FlavorsWithPrice": {
"required": ["isDowngradeAllowed", "modificationImpact", "serviceFlavors"],
"type": "object",
"properties": {
"serviceFlavors": {
"type": "array",
"description": "The flavors of the managed service. The list elements must be unique.",
"items": {
"$ref": "#/components/schemas/ServiceFlavorWithPrice"
}
},
"modificationImpact": {
"$ref": "#/components/schemas/ModificationImpact"
},
"isDowngradeAllowed": {
"type": "boolean",
"description": "Whether the downgrading is allowed, default value: true."
},
"downgradeAllowed": {
"type": "boolean"
}
},
"description": "The flavors of the managed service"
},
"ModificationImpact": {
"type": "object",
"properties": {
"isDataLost": {
"type": "boolean",
"description": "Is data lost when service configuration is modified."
},
"isServiceInterrupted": {
"type": "boolean",
"description": "Is service availability interrupted when the configuration is interrupted."
}
},
"description": "Service config parameter modificationImpact"
},
"Ocl": {
"required": [
"billing",
"category",
"cloudServiceProvider",
"deployment",
"description",
"flavors",
"icon",
"name",
"namespace",
"serviceHostingType",
"serviceProviderContactDetails",
"serviceVersion",
"version"
],
"type": "object",
"properties": {
"category": {
"type": "string",
"description": "The catalog of the service",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
},
"version": {
"type": "string",
"description": "The version of the Ocl"
},
"name": {
"type": "string",
"description": "The name of the managed service"
},
"serviceVersion": {
"type": "string",
"description": "The version of the managed service"
},
"description": {
"type": "string",
"description": "The description of the managed service"
},
"namespace": {
"type": "string",
"description": "The namespace of the managed service"
},
"icon": {
"type": "string",
"description": "The icon of the managed service"
},
"cloudServiceProvider": {
"$ref": "#/components/schemas/CloudServiceProvider"
},
"deployment": {
"$ref": "#/components/schemas/Deployment"
},
"flavors": {
"$ref": "#/components/schemas/FlavorsWithPrice"
},
"billing": {
"$ref": "#/components/schemas/Billing"
},
"serviceHostingType": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
},
"serviceProviderContactDetails": {
"$ref": "#/components/schemas/ServiceProviderContactDetails"
},
"eula": {
"type": "string",
"description": "End user license agreement content of the service."
},
"serviceConfigurationManage": {
"$ref": "#/components/schemas/ServiceConfigurationManage"
}
}
},
"Price": {
"required": ["cost", "currency"],
"type": "object",
"properties": {
"cost": {
"type": "number",
"description": "The value of the cost."
},
"currency": {
"type": "string",
"description": "The currency of the cost.",
"enum": ["USD", "EUR", "CNY"]
},
"period": {
"type": "string",
"description": "The period of the cost.",
"enum": ["yearly", "monthly", "daily", "hourly", "oneTime"]
}
},
"description": "The price for the defined region and the defined site."
},
"PriceWithRegion": {
"required": ["price", "regionName", "siteName"],
"type": "object",
"properties": {
"regionName": {
"type": "string",
"description": "The defined region name. If the special name 'any' provided, this price for all unknown regions."
},
"siteName": {
"type": "string",
"description": "The defined site name. If the special name 'default' provided, this price for all sites."
},
"price": {
"$ref": "#/components/schemas/Price"
}
},
"description": "The listed price list of the flavor of the manged service."
},
"RatingMode": {
"required": ["isPriceOnlyForManagementLayer"],
"type": "object",
"properties": {
"fixedPrices": {
"type": "array",
"description": "The fixed prices of the flavor in the managed service for regions. The fixed price of the region includes all prices and shown to the customer.",
"items": {
"$ref": "#/components/schemas/PriceWithRegion"
}
},
"resourceUsage": {
"$ref": "#/components/schemas/ResourceUsage"
},
"isPriceOnlyForManagementLayer": {
"type": "boolean",
"description": "Whether the price is only for management layer. Consumption of the workload resources will be billed additionally.."
}
},
"description": "The pricing of the flavor"
},
"Region": {
"required": ["area", "name", "site"],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the region"
},
"site": {
"type": "string",
"description": "The site with the region belongs to, such as default, Chinese Mainland, International, "
},
"area": {
"type": "string",
"description": "The area which the region belongs to, such as Asia, Europe, Africa"
}
},
"description": "The regions of the Cloud Service Provider. The list elements must be unique."
},
"Resource": {
"required": ["count", "deployResourceKind"],
"type": "object",
"properties": {
"count": {
"type": "integer",
"description": "The count of the same resource.",
"format": "int32"
},
"deployResourceKind": {
"type": "string",
"description": "The kind of the same resource.",
"enum": [
"vm",
"container",
"publicIP",
"vpc",
"volume",
"unknown",
"security_group",
"security_group_rule",
"keypair",
"subnet"
]
},
"properties": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The properties of the same resource."
},
"description": "The properties of the same resource."
}
},
"description": "The resources of the flavor of the manged service."
},
"ResourceUsage": {
"required": ["resources"],
"type": "object",
"properties": {
"resources": {
"type": "array",
"description": "The resources of the flavor of the manged service.",
"items": {
"$ref": "#/components/schemas/Resource"
}
},
"licensePrices": {
"type": "array",
"description": "The license prices of the flavor of the manged service.",
"items": {
"$ref": "#/components/schemas/PriceWithRegion"
}
},
"markUpPrices": {
"type": "array",
"description": "The listed price list of the flavor of the manged service.",
"items": {
"$ref": "#/components/schemas/PriceWithRegion"
}
}
},
"description": "The resource usage of the flavor in the managed service."
},
"ScriptsRepo": {
"required": ["branch", "repoUrl"],
"type": "object",
"properties": {
"repoUrl": {
"type": "string",
"description": "URL of the repo"
},
"branch": {
"type": "string",
"description": "Branch to be checked out. Can be branch or a Tag"
},
"scriptsPath": {
"type": "string",
"description": "Directory in the repo where scripts are present. If not provided, the root directory of the repo is considered"
}
},
"description": "Deployment scripts hosted on a GIT repo. Either deployer or deployFromGitRepo must be provided."
},
"ServiceConfigurationManage": {
"required": ["agentVersion", "type"],
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "the tool used to manage the service configuration.",
"enum": ["ansible"]
},
"agentVersion": {
"type": "string",
"description": "the version of the agent that will be used by service resources."
},
"configManageScripts": {
"maxItems": 2147483647,
"minItems": 1,
"type": "array",
"description": "The collection of the configuration manage script.",
"items": {
"$ref": "#/components/schemas/ConfigManageScript"
}
},
"configurationParameters": {
"maxItems": 2147483647,
"minItems": 1,
"type": "array",
"description": "The collection of service configuration parameters.",
"items": {
"$ref": "#/components/schemas/ServiceConfigurationParameter"
}
}
},
"description": "manage service configuration."
},
"ServiceConfigurationParameter": {
"required": [
"dataType",
"description",
"initialValue",
"isReadOnly",
"kind",
"managedBy",
"modificationImpact",
"name"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the service config parameter"
},
"kind": {
"$ref": "#/components/schemas/DeployVariableKind"
},
"dataType": {
"type": "string",
"description": "The type of the service config parameter",
"enum": ["string", "number", "boolean"]
},
"example": {
"type": "string",
"description": "The example value of the service config parameter"
},
"description": {
"type": "string",
"description": "The description of the service config parameter"
},
"value": {
"type": "string",
"description": "The value of the service config parameter. Value can be provided for initial value"
},
"initialValue": {
"type": "string",
"description": "The init value of the service config parameter"
},
"valueSchema": {
"type": "object",
"additionalProperties": true,
"description": "valueSchema of the service config parameter. The key be any keyword that is part of the JSON schema definition which can be found here https://json-schema.org/draft/2020-12/schema"
},
"sensitiveScope": {
"type": "string",
"description": "Sensitive scope of service config parameter storage",
"enum": ["none", "once", "always"]
},
"autoFill": {
"$ref": "#/components/schemas/AutoFill"
},
"modificationImpact": {
"$ref": "#/components/schemas/ModificationImpact"
},
"isReadOnly": {
"type": "boolean",
"description": "Whether the service configuration parameters are read-only"
},
"managedBy": {
"type": "string",
"description": "Service component which manages this configuration parameter."
}
},
"description": "The collection of service configuration parameters."
},
"ServiceFlavorWithPrice": {
"required": ["name", "pricing", "priority", "properties"],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The flavor name"
},
"properties": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The properties of the flavor"
},
"description": "The properties of the flavor"
},
"priority": {
"minimum": 1,
"type": "integer",
"description": "The priority of the flavor. The larger value means lower priority.",
"format": "int32"
},
"features": {
"type": "array",
"description": "Important features and differentiators of the flavor.",
"items": {
"type": "string",
"description": "Important features and differentiators of the flavor."
}
},
"pricing": {
"$ref": "#/components/schemas/RatingMode"
}
},
"description": "The flavors of the managed service. The list elements must be unique."
},
"ServiceProviderContactDetails": {
"type": "object",
"properties": {
"emails": {
"maxItems": 2147483647,
"minItems": 1,
"type": "array",
"description": "List of the email details of the service provider. The list elements must be unique.",
"items": {
"type": "string",
"description": "List of the email details of the service provider. The list elements must be unique."
}
},
"phones": {
"maxItems": 2147483647,
"minItems": 1,
"type": "array",
"description": "List of the phone details of the service provider. The list elements must be unique.",
"items": {
"type": "string",
"description": "List of the phone details of the service provider. The list elements must be unique."
}
},
"chats": {
"maxItems": 2147483647,
"minItems": 1,
"type": "array",
"description": "List of the chat details of the service provider. The list elements must be unique.",
"items": {
"type": "string",
"description": "List of the chat details of the service provider. The list elements must be unique."
}
},
"websites": {
"maxItems": 2147483647,
"minItems": 1,
"type": "array",
"description": "List of the website details of the service provider. The list elements must be unique.",
"items": {
"type": "string",
"description": "List of the website details of the service provider. The list elements must be unique."
}
}
},
"description": "The contact details of the service provider."
},
"Link": {
"type": "object",
"properties": {
"rel": {
"type": "string"
},
"href": {
"type": "string"
},
"hreflang": {
"type": "string"
},
"media": {
"type": "string"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
},
"deprecation": {
"type": "string"
},
"profile": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"ServiceTemplateDetailVo": {
"required": [
"billing",
"category",
"createTime",
"csp",
"deployment",
"description",
"flavors",
"icon",
"lastModifiedTime",
"name",
"namespace",
"regions",
"serviceHostingType",
"serviceProviderContactDetails",
"serviceRegistrationState",
"serviceTemplateId",
"variables",
"version"
],
"type": "object",
"properties": {
"serviceTemplateId": {
"type": "string",
"description": "ID of the registered service.",
"format": "uuid"
},
"name": {
"type": "string",
"description": "Name of the registered service."
},
"version": {
"type": "string",
"description": "Version of the registered service."
},
"csp": {
"type": "string",
"description": "Csp of the registered service.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"category": {
"type": "string",
"description": "Category of the registered service.",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
},
"namespace": {
"type": "string",
"description": "Namespace of the user who registered service template."
},
"regions": {
"type": "array",
"description": "The regions of the Cloud Service Provider.",
"items": {
"$ref": "#/components/schemas/Region"
}
},
"description": {
"type": "string",
"description": "The description of the registered service."
},
"icon": {
"type": "string",
"description": "The icon of the registered service."
},
"deployment": {
"$ref": "#/components/schemas/Deployment"
},
"variables": {
"type": "array",
"description": "The variables for the deployment, which will be passed to the deployer.",
"items": {
"$ref": "#/components/schemas/DeployVariable"
}
},
"flavors": {
"$ref": "#/components/schemas/FlavorsWithPrice"
},
"billing": {
"$ref": "#/components/schemas/Billing"
},
"serviceHostingType": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
},
"createTime": {
"type": "string",
"description": "createTime of the registered service.",
"format": "date-time"
},
"lastModifiedTime": {
"type": "string",
"description": "Last updateTime of the registered service.",
"format": "date-time"
},
"serviceRegistrationState": {
"type": "string",
"description": "State of registered service template.",
"enum": ["unregistered", "approval pending", "approved", "rejected"]
},
"reviewComment": {
"type": "string",
"description": "Comment of reviewed service template."
},
"serviceProviderContactDetails": {
"$ref": "#/components/schemas/ServiceProviderContactDetails"
},
"eula": {
"type": "string",
"description": "End user license agreement content of the service."
},
"serviceConfigurationManage": {
"$ref": "#/components/schemas/ServiceConfigurationManage"
},
"links": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Link"
}
}
}
},
"ReviewRegistrationRequest": {
"required": ["reviewResult"],
"type": "object",
"properties": {
"reviewResult": {
"type": "string",
"description": "The result of review registration.",
"enum": ["approved", "rejected"]
},
"reviewComment": {
"type": "string",
"description": "The comment of review registration."
}
}
},
"ServicePolicyUpdateRequest": {
"type": "object",
"properties": {
"flavorNameList": {
"maxItems": 2147483647,
"minItems": 1,
"type": "array",
"description": "The flavor name list which the policy belongs to. If the list is empty, then the policy will be executed for during service deployment of all flavors.",
"items": {
"type": "string",
"description": "The flavor name list which the policy belongs to. If the list is empty, then the policy will be executed for during service deployment of all flavors."
}
},
"policy": {
"type": "string",
"description": "The policy."
},
"enabled": {
"type": "boolean",
"description": "Is the policy enabled. true:enabled;false:disabled."
}
}
},
"ServicePolicy": {
"required": [
"createTime",
"enabled",
"lastModifiedTime",
"policy",
"servicePolicyId",
"serviceTemplateId"
],
"type": "object",
"properties": {
"servicePolicyId": {
"type": "string",
"description": "The id of the policy.",
"format": "uuid"
},
"policy": {
"type": "string",
"description": "The valid policy belongs to the service."
},
"serviceTemplateId": {
"type": "string",
"description": "The id of registered service template which the policy belongs to.",
"format": "uuid"
},
"flavorNameList": {
"type": "array",
"description": "The flavor name list which the policy belongs to. If the list is empty, then the policy will be executed for during service deployment of all flavors.",
"items": {
"type": "string",
"description": "The flavor name list which the policy belongs to. If the list is empty, then the policy will be executed for during service deployment of all flavors."
}
},
"enabled": {
"type": "boolean",
"description": "Is the policy enabled."
},
"createTime": {
"type": "string",
"description": "Time of the policy created.",
"format": "date-time"
},
"lastModifiedTime": {
"type": "string",
"description": "Time of the policy updated.",
"format": "date-time"
}
}
},
"UserPolicyUpdateRequest": {
"type": "object",
"properties": {
"csp": {
"type": "string",
"description": "The csp which the policy belongs to.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"policy": {
"type": "string",
"description": "The policy."
},
"enabled": {
"type": "boolean",
"description": "Is the policy enabled. true:enabled;false:disabled."
}
}
},
"UserPolicy": {
"required": ["createTime", "csp", "enabled", "lastModifiedTime", "policy", "userPolicyId"],
"type": "object",
"properties": {
"userPolicyId": {
"type": "string",
"description": "The id of the policy.",
"format": "uuid"
},
"policy": {
"type": "string",
"description": "The valid policy created by the user."
},
"csp": {
"type": "string",
"description": "The csp which the policy belongs to.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"enabled": {
"type": "boolean",
"description": "Is the policy enabled."
},
"createTime": {
"type": "string",
"description": "Time of the policy created.",
"format": "date-time"
},
"lastModifiedTime": {
"type": "string",
"description": "Time of the policy updated.",
"format": "date-time"
}
}
},
"AnsibleTaskResult": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"isSuccessful": {
"type": "boolean"
},
"message": {
"type": "string"
}
}
},
"ServiceConfigurationChangeResult": {
"type": "object",
"properties": {
"isSuccessful": {
"type": "boolean"
},
"error": {
"type": "string"
},
"tasks": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AnsibleTaskResult"
}
}
},
"description": "result of the service configuration update request."
},
"DeployRequest": {
"required": [
"billingMode",
"category",
"csp",
"flavor",
"region",
"serviceHostingType",
"serviceName",
"version"
],
"type": "object",
"properties": {
"category": {
"type": "string",
"description": "The category of the service",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
},
"serviceName": {
"type": "string",
"description": "The name of the service ordered."
},
"customerServiceName": {
"type": "string",
"description": "Customer's name for the service. Used only for customer's reference.If not provided, this value will be auto-generated"
},
"version": {
"type": "string",
"description": "The version of service"
},
"region": {
"$ref": "#/components/schemas/Region"
},
"csp": {
"type": "string",
"description": "The csp of the Service.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"flavor": {
"type": "string",
"description": "The flavor of the Service."
},
"serviceHostingType": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
},
"serviceRequestProperties": {
"type": "object",
"additionalProperties": true,
"description": "The properties for the requested service"
},
"availabilityZones": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The availability zones to deploy the service instance."
},
"description": "The availability zones to deploy the service instance."
},
"billingMode": {
"type": "string",
"description": "The billing mode of the managed service.",
"enum": ["Fixed", "Pay per Use"]
},
"eulaAccepted": {
"type": "boolean"
}
}
},
"MigrateRequest": {
"required": [
"billingMode",
"category",
"csp",
"flavor",
"originalServiceId",
"region",
"serviceHostingType",
"serviceName",
"version"
],
"type": "object",
"properties": {
"category": {
"type": "string",
"description": "The category of the service",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
},
"serviceName": {
"type": "string",
"description": "The name of the service ordered."
},
"customerServiceName": {
"type": "string",
"description": "Customer's name for the service. Used only for customer's reference.If not provided, this value will be auto-generated"
},
"version": {
"type": "string",
"description": "The version of service"
},
"region": {
"$ref": "#/components/schemas/Region"
},
"csp": {
"type": "string",
"description": "The csp of the Service.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"flavor": {
"type": "string",
"description": "The flavor of the Service."
},
"serviceHostingType": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
},
"serviceRequestProperties": {
"type": "object",
"additionalProperties": true,
"description": "The properties for the requested service"
},
"availabilityZones": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The availability zones to deploy the service instance."
},
"description": "The availability zones to deploy the service instance."
},
"billingMode": {
"type": "string",
"description": "The billing mode of the managed service.",
"enum": ["Fixed", "Pay per Use"]
},
"originalServiceId": {
"type": "string",
"description": "The id of the service to migrate",
"format": "uuid"
},
"eulaAccepted": {
"type": "boolean"
}
}
},
"ServicePolicyCreateRequest": {
"required": ["enabled", "policy", "serviceTemplateId"],
"type": "object",
"properties": {
"serviceTemplateId": {
"type": "string",
"description": "The id of registered service template which the policy belongs to.",
"format": "uuid"
},
"flavorNameList": {
"type": "array",
"description": "The flavor name list which the policy belongs to. If the list is empty, then the policy will be executed for during service deployment of all flavors.",
"items": {
"type": "string",
"description": "The flavor name list which the policy belongs to. If the list is empty, then the policy will be executed for during service deployment of all flavors."
}
},
"policy": {
"type": "string",
"description": "The policy."
},
"enabled": {
"type": "boolean",
"description": "Is the policy enabled. true:enabled;false:disabled."
}
}
},
"UserPolicyCreateRequest": {
"required": ["csp", "enabled", "policy"],
"type": "object",
"properties": {
"csp": {
"type": "string",
"description": "The csp which the policy belongs to.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"policy": {
"type": "string",
"description": "The policy."
},
"enabled": {
"type": "boolean",
"description": "Is the policy enabled. true:enabled;false:disabled."
}
}
},
"WorkFlowTask": {
"required": [
"businessKey",
"createTime",
"executionId",
"processDefinitionId",
"processDefinitionName",
"processInstanceId",
"status",
"taskId",
"taskName"
],
"type": "object",
"properties": {
"processInstanceId": {
"type": "string",
"description": "The id of the ProcessInstance"
},
"processInstanceName": {
"type": "string",
"description": "The name of the ProcessInstance"
},
"processDefinitionId": {
"type": "string",
"description": "The id of the ProcessDefinition"
},
"processDefinitionName": {
"type": "string",
"description": "The name of the ProcessDefinition"
},
"executionId": {
"type": "string",
"description": "The execution id of the ProcessInstance"
},
"taskId": {
"type": "string",
"description": "The id of the task"
},
"taskName": {
"type": "string",
"description": "The name of the task"
},
"businessKey": {
"type": "string",
"description": "The businessKey of the Process"
},
"status": {
"type": "string",
"description": "The status of the Task",
"enum": ["done", "failed"]
},
"createTime": {
"type": "string",
"description": "The create time of the task",
"format": "date-time"
}
}
},
"AbstractCredentialInfo": {
"required": ["csp", "description", "name", "site", "type"],
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/CredentialVariables"
},
{
"type": "object",
"properties": {
"csp": {
"type": "string",
"description": "The cloud service provider of the credential.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"site": {
"type": "string",
"description": "The site which the credentials belong to."
},
"type": {
"type": "string",
"description": "The type of the credential, this field is provided by the plugin of cloud service provider.",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
},
"name": {
"type": "string",
"description": "The name of the credential, this field is provided by the plugin of cloud service provider. The value of this field must be unique between credentials with the same csp and type."
},
"description": {
"type": "string",
"description": "The description of the credential,this field is provided by the plugin of cloud service provider."
},
"userId": {
"type": "string",
"description": "The id of user who created the credential."
}
}
}
]
},
"CredentialVariables": {
"required": ["csp", "description", "name", "site", "type", "variables"],
"type": "object",
"properties": {
"csp": {
"type": "string",
"description": "The cloud service provider of the credential.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"site": {
"type": "string",
"description": "The site which the credentials belong to."
},
"type": {
"type": "string",
"description": "The type of the credential, this field is provided by the plugin of cloud service provider.",
"enum": ["variables", "http_authentication", "api_key", "oauth2"]
},
"name": {
"type": "string",
"description": "The name of the credential, this field is provided by the plugin of cloud service provider. The value of this field must be unique between credentials with the same csp and type."
},
"description": {
"type": "string",
"description": "The description of the credential,this field is provided by the plugin of cloud service provider."
},
"userId": {
"type": "string",
"description": "The id of user who created the credential."
},
"variables": {
"maxItems": 2147483647,
"minItems": 1,
"type": "array",
"description": "The variables list of the credential.",
"items": {
"$ref": "#/components/schemas/CredentialVariable"
}
}
}
},
"DeployResource": {
"required": ["groupName", "groupType", "properties", "resourceId", "resourceKind", "resourceName"],
"type": "object",
"properties": {
"groupType": {
"type": "string",
"description": "The type of the group which configuration the deployed resource."
},
"groupName": {
"type": "string",
"description": "The name of the group which configuration the deployed resource."
},
"resourceId": {
"type": "string",
"description": "The id of the deployed resource."
},
"resourceName": {
"type": "string",
"description": "The name of the deployed resource."
},
"resourceKind": {
"type": "string",
"description": "The kind of the deployed resource.",
"enum": [
"vm",
"container",
"publicIP",
"vpc",
"volume",
"unknown",
"security_group",
"security_group_rule",
"keypair",
"subnet"
]
},
"properties": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The properties of the deployed resource."
},
"description": "The properties of the deployed resource."
}
},
"description": "The deployed resources of the service before this service order."
},
"DeployedService": {
"required": [
"billingMode",
"category",
"createTime",
"csp",
"lastModifiedTime",
"name",
"region",
"serviceDeploymentState",
"serviceHostingType",
"serviceId",
"serviceState",
"version"
],
"type": "object",
"properties": {
"serviceId": {
"type": "string",
"description": "The ID of the service",
"format": "uuid"
},
"category": {
"type": "string",
"description": "The catalog of the service",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
},
"name": {
"type": "string",
"description": "The name of the service"
},
"customerServiceName": {
"type": "string",
"description": "Customer's name for the service. Used only for customer's reference.If not provided, this value will be auto-generated"
},
"version": {
"type": "string",
"description": "The version of the service"
},
"csp": {
"type": "string",
"description": "The provider of the service",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"flavor": {
"type": "string",
"description": "The flavor of the service"
},
"billingMode": {
"type": "string",
"description": "The billing mode of the managed service.",
"enum": ["Fixed", "Pay per Use"]
},
"region": {
"$ref": "#/components/schemas/Region"
},
"serviceTemplateId": {
"type": "string",
"description": "The id of the Service Template",
"format": "uuid"
},
"userId": {
"type": "string",
"description": "The id of the user who deployed the service."
},
"serviceDeploymentState": {
"type": "string",
"description": "The deployment state of the service",
"enum": [
"deploying",
"deployment successful",
"deployment failed",
"destroying",
"destroy successful",
"destroy failed",
"manual cleanup required",
"rollback failed",
"modifying",
"modification failed",
"modification successful"
]
},
"serviceState": {
"type": "string",
"description": "The run state of the service",
"enum": ["not running", "running", "starting", "stopping", "stopped", "restarting"]
},
"serviceHostingType": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
},
"createTime": {
"type": "string",
"description": "Time of register service.",
"format": "date-time"
},
"lastModifiedTime": {
"type": "string",
"description": "Time of update service.",
"format": "date-time"
},
"lastStartedAt": {
"type": "string",
"description": "Time of start service.",
"format": "date-time"
},
"lastStoppedAt": {
"type": "string",
"description": "Time of stop service.",
"format": "date-time"
},
"lockConfig": {
"$ref": "#/components/schemas/ServiceLockConfig"
},
"latestRunningManagementTask": {
"$ref": "#/components/schemas/ServiceStateManagementTaskDetails"
},
"latestModificationAudit": {
"$ref": "#/components/schemas/ServiceOrderDetails"
}
}
},
"ServiceOrderDetails": {
"required": ["orderId", "serviceId", "taskStatus", "taskType"],
"type": "object",
"properties": {
"orderId": {
"type": "string",
"description": "The id of the service order.",
"format": "uuid"
},
"serviceId": {
"type": "string",
"description": "The id of the deployed service.",
"format": "uuid"
},
"taskType": {
"type": "string",
"description": "The task type of the service order.",
"enum": ["deploy", "redeploy", "modify", "destroy", "serviceConfigurationUpdate", "purge"]
},
"taskStatus": {
"type": "string",
"description": "The task status of the service order.",
"enum": ["created", "in progress", "successful", "failed"]
},
"errorMsg": {
"type": "string",
"description": "The error message if the service order task failed."
},
"userId": {
"type": "string",
"description": "The id of the user who created the service order."
},
"startedTime": {
"type": "string",
"description": "The started time of the service order.",
"format": "date-time"
},
"completedTime": {
"type": "string",
"description": "The completed time of the service order.",
"format": "date-time"
},
"previousDeployRequest": {
"$ref": "#/components/schemas/DeployRequest"
},
"newDeployRequest": {
"$ref": "#/components/schemas/DeployRequest"
},
"previousDeployedResources": {
"type": "array",
"description": "The deployed resources of the service before this service order.",
"items": {
"$ref": "#/components/schemas/DeployResource"
}
},
"previousDeployedServiceProperties": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The properties of the deployed service before this service order."
},
"description": "The properties of the deployed service before this service order."
},
"previousDeployedResultProperties": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The properties of the deployed result before this service order."
},
"description": "The properties of the deployed result before this service order."
}
},
"description": "The latest service management audit details."
},
"ServiceStateManagementTaskDetails": {
"required": ["serviceId", "taskId", "taskStatus", "taskType"],
"type": "object",
"properties": {
"taskId": {
"type": "string",
"description": "The id of the service state management task.",
"format": "uuid"
},
"serviceId": {
"type": "string",
"description": "The id of the deployed service.",
"format": "uuid"
},
"taskType": {
"type": "string",
"description": "The type of the service state management task.",
"enum": ["start", "stop", "restart"]
},
"taskStatus": {
"type": "string",
"description": "The status of the service state management task.",
"enum": ["created", "in progress", "successful", "failed"]
},
"errorMsg": {
"type": "string",
"description": "The error message of the failed management task."
},
"startedTime": {
"type": "string",
"description": "The started time of the task.",
"format": "date-time"
},
"completedTime": {
"type": "string",
"description": "The completed time of the task.",
"format": "date-time"
}
},
"description": "The latest running service management task details."
},
"DeploymentStatusUpdate": {
"required": ["isOrderCompleted", "serviceDeploymentState"],
"type": "object",
"properties": {
"serviceDeploymentState": {
"type": "string",
"description": "Current state of the deployment request.",
"enum": [
"deploying",
"deployment successful",
"deployment failed",
"destroying",
"destroy successful",
"destroy failed",
"manual cleanup required",
"rollback failed",
"modifying",
"modification failed",
"modification successful"
]
},
"isOrderCompleted": {
"type": "boolean",
"description": "Describes if the deployment request is now completed"
}
}
},
"ServiceRecreateDetails": {
"required": ["createTime", "lastModifiedTime", "recreateId", "recreateStatus", "serviceId"],
"type": "object",
"properties": {
"recreateId": {
"type": "string",
"description": "The ID of the service recreate",
"format": "uuid"
},
"serviceId": {
"type": "string",
"description": "The ID of the old service",
"format": "uuid"
},
"recreateStatus": {
"type": "string",
"description": "The status of the service recreate",
"enum": [
"RecreateStarted",
"RecreateCompleted",
"RecreateFailed",
"DestroyStarted",
"DestroyFailed",
"DestroyCompleted",
"DeployStarted",
"DeployFailed",
"DeployCompleted"
]
},
"createTime": {
"type": "string",
"description": "Time of service recreate.",
"format": "date-time"
},
"lastModifiedTime": {
"type": "string",
"description": "Time of update service recreate.",
"format": "date-time"
}
}
},
"ServiceOrderStatusUpdate": {
"required": ["isOrderCompleted", "taskStatus"],
"type": "object",
"properties": {
"taskStatus": {
"type": "string",
"description": "Current task status of the service order.",
"enum": ["created", "in progress", "successful", "failed"]
},
"isOrderCompleted": {
"type": "boolean",
"description": "Describes if the service order is now completed."
},
"errorMsg": {
"type": "string",
"description": "The error message if the service order failed."
}
}
},
"ServiceMigrationDetails": {
"required": [
"createTime",
"lastModifiedTime",
"migrationId",
"migrationStatus",
"newServiceId",
"oldServiceId"
],
"type": "object",
"properties": {
"migrationId": {
"type": "string",
"description": "The ID of the service migration",
"format": "uuid"
},
"oldServiceId": {
"type": "string",
"description": "The ID of the old service",
"format": "uuid"
},
"newServiceId": {
"type": "string",
"description": "The ID of the new service",
"format": "uuid"
},
"migrationStatus": {
"type": "string",
"description": "The status of the service migration",
"enum": [
"MigrationStarted",
"MigrationCompleted",
"MigrationFailed",
"DataExportStarted",
"DataExportFailed",
"DataExportCompleted",
"DeployStarted",
"DeployFailed",
"DeployCompleted",
"DataImportStarted",
"DataImportFailed",
"DataImportCompleted",
"DestroyStarted",
"DestroyFailed",
"DestroyCompleted"
]
},
"createTime": {
"type": "string",
"description": "Time of service migration.",
"format": "date-time"
},
"lastModifiedTime": {
"type": "string",
"description": "Time of update service migration.",
"format": "date-time"
}
}
},
"DeployedServiceDetails": {
"required": [
"billingMode",
"category",
"createTime",
"csp",
"deployRequest",
"lastModifiedTime",
"name",
"region",
"serviceDeploymentState",
"serviceHostingType",
"serviceId",
"serviceState",
"version"
],
"type": "object",
"properties": {
"serviceId": {
"type": "string",
"description": "The ID of the service",
"format": "uuid"
},
"category": {
"type": "string",
"description": "The catalog of the service",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
},
"name": {
"type": "string",
"description": "The name of the service"
},
"customerServiceName": {
"type": "string",
"description": "Customer's name for the service. Used only for customer's reference.If not provided, this value will be auto-generated"
},
"version": {
"type": "string",
"description": "The version of the service"
},
"csp": {
"type": "string",
"description": "The provider of the service",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"flavor": {
"type": "string",
"description": "The flavor of the service"
},
"billingMode": {
"type": "string",
"description": "The billing mode of the managed service.",
"enum": ["Fixed", "Pay per Use"]
},
"region": {
"$ref": "#/components/schemas/Region"
},
"serviceTemplateId": {
"type": "string",
"description": "The id of the Service Template",
"format": "uuid"
},
"userId": {
"type": "string",
"description": "The id of the user who deployed the service."
},
"serviceDeploymentState": {
"type": "string",
"description": "The deployment state of the service",
"enum": [
"deploying",
"deployment successful",
"deployment failed",
"destroying",
"destroy successful",
"destroy failed",
"manual cleanup required",
"rollback failed",
"modifying",
"modification failed",
"modification successful"
]
},
"serviceState": {
"type": "string",
"description": "The run state of the service",
"enum": ["not running", "running", "starting", "stopping", "stopped", "restarting"]
},
"serviceHostingType": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
},
"createTime": {
"type": "string",
"description": "Time of register service.",
"format": "date-time"
},
"lastModifiedTime": {
"type": "string",
"description": "Time of update service.",
"format": "date-time"
},
"lastStartedAt": {
"type": "string",
"description": "Time of start service.",
"format": "date-time"
},
"lastStoppedAt": {
"type": "string",
"description": "Time of stop service.",
"format": "date-time"
},
"lockConfig": {
"$ref": "#/components/schemas/ServiceLockConfig"
},
"latestRunningManagementTask": {
"$ref": "#/components/schemas/ServiceStateManagementTaskDetails"
},
"latestModificationAudit": {
"$ref": "#/components/schemas/ServiceOrderDetails"
},
"deployRequest": {
"$ref": "#/components/schemas/DeployRequest"
},
"deployResources": {
"type": "array",
"description": "The resource list of the deployed service.",
"items": {
"$ref": "#/components/schemas/DeployResource"
}
},
"deployedServiceProperties": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The properties of the deployed service."
},
"description": "The properties of the deployed service."
},
"resultMessage": {
"type": "string",
"description": "The result message of the deployed service."
}
}
},
"VendorHostedDeployedServiceDetails": {
"required": [
"billingMode",
"category",
"createTime",
"csp",
"deployRequest",
"lastModifiedTime",
"name",
"region",
"serviceDeploymentState",
"serviceHostingType",
"serviceId",
"serviceState",
"version"
],
"type": "object",
"properties": {
"serviceId": {
"type": "string",
"description": "The ID of the service",
"format": "uuid"
},
"category": {
"type": "string",
"description": "The catalog of the service",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
},
"name": {
"type": "string",
"description": "The name of the service"
},
"customerServiceName": {
"type": "string",
"description": "Customer's name for the service. Used only for customer's reference.If not provided, this value will be auto-generated"
},
"version": {
"type": "string",
"description": "The version of the service"
},
"csp": {
"type": "string",
"description": "The provider of the service",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"flavor": {
"type": "string",
"description": "The flavor of the service"
},
"billingMode": {
"type": "string",
"description": "The billing mode of the managed service.",
"enum": ["Fixed", "Pay per Use"]
},
"region": {
"$ref": "#/components/schemas/Region"
},
"serviceTemplateId": {
"type": "string",
"description": "The id of the Service Template",
"format": "uuid"
},
"userId": {
"type": "string",
"description": "The id of the user who deployed the service."
},
"serviceDeploymentState": {
"type": "string",
"description": "The deployment state of the service",
"enum": [
"deploying",
"deployment successful",
"deployment failed",
"destroying",
"destroy successful",
"destroy failed",
"manual cleanup required",
"rollback failed",
"modifying",
"modification failed",
"modification successful"
]
},
"serviceState": {
"type": "string",
"description": "The run state of the service",
"enum": ["not running", "running", "starting", "stopping", "stopped", "restarting"]
},
"serviceHostingType": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
},
"createTime": {
"type": "string",
"description": "Time of register service.",
"format": "date-time"
},
"lastModifiedTime": {
"type": "string",
"description": "Time of update service.",
"format": "date-time"
},
"lastStartedAt": {
"type": "string",
"description": "Time of start service.",
"format": "date-time"
},
"lastStoppedAt": {
"type": "string",
"description": "Time of stop service.",
"format": "date-time"
},
"lockConfig": {
"$ref": "#/components/schemas/ServiceLockConfig"
},
"latestRunningManagementTask": {
"$ref": "#/components/schemas/ServiceStateManagementTaskDetails"
},
"latestModificationAudit": {
"$ref": "#/components/schemas/ServiceOrderDetails"
},
"deployRequest": {
"$ref": "#/components/schemas/DeployRequest"
},
"deployedServiceProperties": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The properties of the deployed service."
},
"description": "The properties of the deployed service."
}
}
},
"ServiceConfigurationChangeDetails": {
"required": ["changeId", "configManager", "properties", "status"],
"type": "object",
"properties": {
"changeId": {
"type": "string",
"description": "ID of the change request created as part of the change order.",
"format": "uuid"
},
"resourceName": {
"type": "string",
"description": "name of the resource on which the change request is executed. Null means any one of the resources that is part of the service and is of type configManager can execute it and until now none of the resource have picked up this request."
},
"configManager": {
"type": "string",
"description": "type of the resource in the service that must execute the change request."
},
"resultMessage": {
"type": "string",
"description": "message of change service configuration update request."
},
"properties": {
"type": "object",
"additionalProperties": true,
"description": "service configuration requested in the change request."
},
"status": {
"type": "string",
"description": "status of change service configuration update request.",
"enum": ["pending", "processing", "successful", "error"]
}
},
"description": "Collection of service configuration change requests generated for the specific change order."
},
"ServiceConfigurationChangeOrderDetails": {
"required": ["changeRequests", "configRequest", "orderId", "orderStatus"],
"type": "object",
"properties": {
"orderId": {
"type": "string",
"description": "The id of the order.",
"format": "uuid"
},
"orderStatus": {
"type": "string",
"description": "Order status of service configuration update result.",
"enum": ["created", "in progress", "successful", "failed"]
},
"configRequest": {
"type": "object",
"additionalProperties": true,
"description": "service configuration requested in the change request."
},
"changeRequests": {
"type": "array",
"description": "Collection of service configuration change requests generated for the specific change order.",
"items": {
"$ref": "#/components/schemas/ServiceConfigurationChangeDetails"
}
}
}
},
"ServiceConfigurationDetails": {
"type": "object",
"properties": {
"serviceId": {
"type": "string",
"format": "uuid"
},
"configuration": {
"type": "object",
"additionalProperties": true
},
"createdTime": {
"type": "string",
"format": "date-time"
},
"updatedTime": {
"type": "string",
"format": "date-time"
}
}
},
"FlavorPriceResult": {
"required": ["billingMode", "flavorName"],
"type": "object",
"properties": {
"flavorName": {
"type": "string",
"description": "The name of the flavor."
},
"billingMode": {
"type": "string",
"description": "The billing mode of the price.",
"enum": ["Fixed", "Pay per Use"]
},
"recurringPrice": {
"$ref": "#/components/schemas/Price"
},
"oneTimePaymentPrice": {
"$ref": "#/components/schemas/Price"
},
"errorMessage": {
"type": "string",
"description": "Error reason when price calculation fails."
},
"successful": {
"type": "boolean"
}
}
},
"Metric": {
"required": ["monitorResourceType", "name", "type", "unit"],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the metric."
},
"description": {
"type": "string",
"description": "The description of the metric."
},
"type": {
"type": "string",
"description": "The type of the metric.",
"enum": ["counter", "gauge", "histogram", "summary"]
},
"monitorResourceType": {
"type": "string",
"description": "The resource type of the metric.",
"enum": ["cpu", "mem", "vm_network_incoming", "vm_network_outgoing"]
},
"unit": {
"type": "string",
"description": "The unit of the metric.",
"enum": ["mb", "kb", "percentage", "bit/s", "Byte/s"]
},
"labels": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The labels of the metric."
},
"description": "The labels of the metric."
},
"metrics": {
"type": "array",
"description": "The list of the metric items.",
"items": {
"$ref": "#/components/schemas/MetricItem"
}
}
}
},
"MetricItem": {
"required": ["timeStamp", "type", "value"],
"type": "object",
"properties": {
"labels": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The labels for the MetricItem."
},
"description": "The labels for the MetricItem."
},
"type": {
"type": "string",
"description": "Type of the MetricItem.",
"enum": ["value", "count", "sum"]
},
"timeStamp": {
"type": "integer",
"description": "Timestamp of the recorded metric.",
"format": "int64"
},
"value": {
"type": "number",
"description": "value of the MetricItem."
}
},
"description": "The list of the metric items."
},
"BackendSystemStatus": {
"required": ["backendSystemType", "healthStatus", "name"],
"type": "object",
"properties": {
"backendSystemType": {
"type": "string",
"description": "The type of backend system.",
"enum": [
"Identity Provider",
"Database",
"Terraform Boot",
"Tofu Maker",
"Policy Man",
"Cache Provider",
"OpenTelemetry Collector"
]
},
"name": {
"type": "string",
"description": "The name of backend system."
},
"healthStatus": {
"type": "string",
"description": "The health status of backend system.",
"enum": ["OK", "NOK"]
},
"endpoint": {
"type": "string",
"description": "The endpoint of backend system. This filed is shown when the user have role 'admin' otherwise it is null."
},
"details": {
"type": "string",
"description": "The details why health is not ok.This filed is shown when the user have role 'admin' otherwise it is null."
}
},
"description": "The health status of backend systems. This list contains status of identity provider and status of database.The status of identity provider will return when authorization is enabled."
},
"SystemStatus": {
"required": ["backendSystemStatuses", "healthStatus"],
"type": "object",
"properties": {
"healthStatus": {
"type": "string",
"description": "The health status of Xpanse api service.",
"enum": ["OK", "NOK"]
},
"backendSystemStatuses": {
"type": "array",
"description": "The health status of backend systems. This list contains status of identity provider and status of database.The status of identity provider will return when authorization is enabled.",
"items": {
"$ref": "#/components/schemas/BackendSystemStatus"
}
}
}
},
"EndUserFlavors": {
"required": [
"isDowngradeAllowed",
"modificationImpact",
"name",
"priority",
"properties",
"serviceFlavors"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The flavor name"
},
"properties": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The properties of the flavor"
},
"description": "The properties of the flavor"
},
"priority": {
"minimum": 1,
"type": "integer",
"description": "The priority of the flavor. The larger value means lower priority.",
"format": "int32"
},
"features": {
"type": "array",
"description": "Important features and differentiators of the flavor.",
"items": {
"type": "string",
"description": "Important features and differentiators of the flavor."
}
},
"serviceFlavors": {
"type": "array",
"description": "The flavors of the orderable service.",
"items": {
"$ref": "#/components/schemas/ServiceFlavor"
}
},
"modificationImpact": {
"$ref": "#/components/schemas/ModificationImpact"
},
"isDowngradeAllowed": {
"type": "boolean",
"description": "Whether the downgrading is allowed, default value: true."
},
"downgradeAllowed": {
"type": "boolean"
}
},
"description": "The flavors of the orderable service."
},
"ServiceFlavor": {
"required": ["name", "priority", "properties"],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The flavor name"
},
"properties": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "The properties of the flavor"
},
"description": "The properties of the flavor"
},
"priority": {
"minimum": 1,
"type": "integer",
"description": "The priority of the flavor. The larger value means lower priority.",
"format": "int32"
},
"features": {
"type": "array",
"description": "Important features and differentiators of the flavor.",
"items": {
"type": "string",
"description": "Important features and differentiators of the flavor."
}
}
},
"description": "The flavors of the orderable service."
},
"UserOrderableServiceVo": {
"required": [
"billing",
"category",
"csp",
"description",
"flavors",
"icon",
"name",
"regions",
"serviceHostingType",
"serviceProviderContactDetails",
"serviceTemplateId",
"variables",
"version"
],
"type": "object",
"properties": {
"serviceTemplateId": {
"type": "string",
"description": "The id of the orderable service.",
"format": "uuid"
},
"category": {
"type": "string",
"description": "The category of the orderable service.",
"enum": [
"ai",
"compute",
"container",
"storage",
"network",
"database",
"mediaService",
"security",
"middleware",
"others"
]
},
"name": {
"type": "string",
"description": "The name of the orderable service."
},
"version": {
"type": "string",
"description": "The version of the orderable service."
},
"csp": {
"type": "string",
"description": "The Cloud Service Provider of the orderable service.",
"enum": [
"HuaweiCloud",
"FlexibleEngine",
"OpenstackTestlab",
"PlusServer",
"RegioCloud",
"AlibabaCloud",
"aws",
"azure",
"GoogleCloudPlatform"
]
},
"regions": {
"type": "array",
"description": "The regions of the Cloud Service Provider.",
"items": {
"$ref": "#/components/schemas/Region"
}
},
"description": {
"type": "string",
"description": "The description of the orderable service."
},
"icon": {
"type": "string",
"description": "The icon of the orderable service."
},
"variables": {
"type": "array",
"description": "The variables for the deployment, which will be passed to the deployer.",
"items": {
"$ref": "#/components/schemas/DeployVariable"
}
},
"flavors": {
"$ref": "#/components/schemas/EndUserFlavors"
},
"billing": {
"$ref": "#/components/schemas/Billing"
},
"serviceHostingType": {
"type": "string",
"description": "Defines which cloud service account is used for deploying cloud resources.",
"enum": ["self", "service-vendor"]
},
"serviceProviderContactDetails": {
"$ref": "#/components/schemas/ServiceProviderContactDetails"
},
"serviceAvailabilityConfig": {
"type": "array",
"description": "The list of availability zone configuration of the service.",
"items": {
"$ref": "#/components/schemas/AvailabilityZoneConfig"
}
},
"eula": {
"type": "string",
"description": "End user license agreement content of the service."
},
"configurationParameters": {
"type": "array",
"description": "The collection of service configuration parameters.",
"items": {
"$ref": "#/components/schemas/ServiceConfigurationParameter"
}
},
"links": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Link"
}
}
}
},
"ServiceConfigurationChangeRequest": {
"type": "object",
"properties": {
"changeId": {
"type": "string",
"format": "uuid"
},
"configParameters": {
"type": "object",
"additionalProperties": true
},
"ansibleScriptConfig": {
"$ref": "#/components/schemas/AnsibleScriptConfig"
},
"ansibleInventory": {
"type": "object",
"additionalProperties": true
}
}
},
"TokenResponse": {
"required": ["access_token", "expires_in", "id_token", "token_type"],
"type": "object",
"properties": {
"access_token": {
"type": "string",
"description": "An access_token as a JWT or opaque token."
},
"token_type": {
"type": "string",
"description": "Type of the access_token."
},
"expires_in": {
"type": "string",
"description": "Number of second until the expiration of the access_token"
},
"id_token": {
"type": "string",
"description": "An id_token of the authorized service user"
},
"scopes": {
"type": "string",
"description": "Scopes of the access_token."
}
}
}
},
"securitySchemes": {
"OAuth2Flow": {
"type": "oauth2",
"flows": {
"authorizationCode": {
"authorizationUrl": "https://iam.xpanse.site/oauth/v2/authorize",
"tokenUrl": "https://iam.xpanse.site/oauth/v2/token",
"scopes": {
"urn:zitadel:iam:org:project:roles": "mandatory must be selected.",
"openid": "mandatory must be selected.",
"profile": "mandatory must be selected.",
"urn:zitadel:iam:user:metadata": "mandatory must be selected."
}
}
}
}
}
}
}