{
  "swagger": "2.0",
  "info": {
    "title": "Control Plane Internal API",
    "description": "Control Plane Internal API.",
    "version": "v1"
  },
  "tags": [
    {
      "name": "ResourcePoolService"
    }
  ],
  "basePath": "/inner/mgmt/v1",
  "schemes": [
    "https"
  ],
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "paths": {
    "/resource_pools": {
      "get": {
        "operationId": "ResourcePoolService_ListResourcePools",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/nextgenv1ListResourcePoolsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "resourcePoolIds",
            "in": "query",
            "required": false,
            "type": "array",
            "items": {
              "type": "string",
              "format": "uint64"
            },
            "collectionFormat": "multi"
          },
          {
            "name": "resourcePoolName",
            "in": "query",
            "required": false,
            "type": "string"
          },
          {
            "name": "providerIds",
            "in": "query",
            "required": false,
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "AWS",
                "GCP",
                "AZURE",
                "ALICLOUD"
              ]
            },
            "collectionFormat": "multi"
          },
          {
            "name": "regionIds",
            "description": " - AWS_US_EAST_2: AWS.\n - GCP_ASIA_EAST1: GCP.\n - AZURE_EASTUS: Azure\n - ALICLOUD_AP_SOUTHEAST_1: AliCloud",
            "in": "query",
            "required": false,
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "AWS_US_EAST_2",
                "AWS_US_EAST_1",
                "AWS_US_WEST_1",
                "AWS_US_WEST_2",
                "AWS_AF_SOUTH_1",
                "AWS_AP_EAST_1",
                "AWS_AP_SOUTH_2",
                "AWS_AP_SOUTHEAST_3",
                "AWS_AP_SOUTHEAST_4",
                "AWS_AP_SOUTH_1",
                "AWS_AP_NORTHEAST_3",
                "AWS_AP_NORTHEAST_2",
                "AWS_AP_SOUTHEAST_1",
                "AWS_AP_SOUTHEAST_2",
                "AWS_AP_NORTHEAST_1",
                "AWS_CA_CENTRAL_1",
                "AWS_CA_WEST_1",
                "AWS_EU_CENTRAL_1",
                "AWS_EU_WEST_1",
                "AWS_EU_WEST_2",
                "AWS_EU_SOUTH_1",
                "AWS_EU_WEST_3",
                "AWS_EU_SOUTH_2",
                "AWS_EU_NORTH_1",
                "AWS_EU_CENTRAL_2",
                "AWS_IL_CENTRAL_1",
                "AWS_ME_SOUTH_1",
                "AWS_ME_CENTRAL_1",
                "AWS_SA_EAST_1",
                "AWS_AP_SOUTHEAST_5",
                "AWS_AP_SOUTHEAST_6",
                "AWS_AP_SOUTHEAST_7",
                "AWS_MX_CENTRAL_1",
                "GCP_ASIA_EAST1",
                "GCP_ASIA_EAST2",
                "GCP_ASIA_NORTHEAST1",
                "GCP_ASIA_NORTHEAST2",
                "GCP_ASIA_NORTHEAST3",
                "GCP_ASIA_SOUTH1",
                "GCP_ASIA_SOUTH2",
                "GCP_ASIA_SOUTHEAST1",
                "GCP_ASIA_SOUTHEAST2",
                "GCP_AUSTRALIA_SOUTHEAST1",
                "GCP_AUSTRALIA_SOUTHEAST2",
                "GCP_EUROPE_CENTRAL2",
                "GCP_EUROPE_NORTH1",
                "GCP_EUROPE_SOUTHWEST1",
                "GCP_EUROPE_WEST1",
                "GCP_EUROPE_WEST10",
                "GCP_EUROPE_WEST12",
                "GCP_EUROPE_WEST2",
                "GCP_EUROPE_WEST3",
                "GCP_EUROPE_WEST4",
                "GCP_EUROPE_WEST6",
                "GCP_EUROPE_WEST8",
                "GCP_EUROPE_WEST9",
                "GCP_ME_CENTRAL1",
                "GCP_ME_CENTRAL2",
                "GCP_ME_WEST1",
                "GCP_NORTHAMERICA_NORTHEAST1",
                "GCP_NORTHAMERICA_NORTHEAST2",
                "GCP_SOUTHAMERICA_EAST1",
                "GCP_SOUTHAMERICA_WEST1",
                "GCP_US_CENTRAL1",
                "GCP_US_EAST1",
                "GCP_US_EAST4",
                "GCP_US_EAST5",
                "GCP_US_SOUTH1",
                "GCP_US_WEST1",
                "GCP_US_WEST2",
                "GCP_US_WEST3",
                "GCP_US_WEST4",
                "AZURE_EASTUS",
                "AZURE_SOUTHCENTRALUS",
                "AZURE_WESTUS2",
                "AZURE_WESTUS3",
                "AZURE_AUSTRALIAEAST",
                "AZURE_SOUTHEASTASIA",
                "AZURE_NORTHEUROPE",
                "AZURE_SWEDENCENTRAL",
                "AZURE_UKSOUTH",
                "AZURE_WESTEUROPE",
                "AZURE_CENTRALUS",
                "AZURE_SOUTHAFRICANORTH",
                "AZURE_CENTRALINDIA",
                "AZURE_EASTASIA",
                "AZURE_JAPANEAST",
                "AZURE_KOREACENTRAL",
                "AZURE_CANADACENTRAL",
                "AZURE_FRANCECENTRAL",
                "AZURE_GERMANYWESTCENTRAL",
                "AZURE_ITALYNORTH",
                "AZURE_NORWAYEAST",
                "AZURE_POLANDCENTRAL",
                "AZURE_SPAINCENTRAL",
                "AZURE_SWITZERLANDNORTH",
                "AZURE_MEXICOCENTRAL",
                "AZURE_UAENORTH",
                "AZURE_BRAZILSOUTH",
                "AZURE_ISRAELCENTRAL",
                "AZURE_QATARCENTRAL",
                "AZURE_CENTRALUSSTAGE",
                "AZURE_EASTUSSTAGE",
                "AZURE_EASTUS2STAGE",
                "AZURE_NORTHCENTRALUSSTAGE",
                "AZURE_SOUTHCENTRALUSSTAGE",
                "AZURE_WESTUSSTAGE",
                "AZURE_WESTUS2STAGE",
                "AZURE_ASIA",
                "AZURE_ASIAPACIFIC",
                "AZURE_AUSTRALIA",
                "AZURE_BRAZIL",
                "AZURE_CANADA",
                "AZURE_EUROPE",
                "AZURE_FRANCE",
                "AZURE_GERMANY",
                "AZURE_GLOBAL",
                "AZURE_INDIA",
                "AZURE_ISRAEL",
                "AZURE_ITALY",
                "AZURE_JAPAN",
                "AZURE_KOREA",
                "AZURE_NEWZEALAND",
                "AZURE_NORWAY",
                "AZURE_POLAND",
                "AZURE_QATAR",
                "AZURE_SINGAPORE",
                "AZURE_SOUTHAFRICA",
                "AZURE_SWEDEN",
                "AZURE_SWITZERLAND",
                "AZURE_UAE",
                "AZURE_UK",
                "AZURE_UNITEDSTATES",
                "AZURE_UNITEDSTATESEUAP",
                "AZURE_EASTASIASTAGE",
                "AZURE_SOUTHEASTASIASTAGE",
                "AZURE_BRAZILUS",
                "AZURE_EASTUS2",
                "AZURE_EASTUSSTG",
                "AZURE_NORTHCENTRALUS",
                "AZURE_WESTUS",
                "AZURE_JAPANWEST",
                "AZURE_JIOINDIAWEST",
                "AZURE_CENTRALUSEUAP",
                "AZURE_EASTUS2EUAP",
                "AZURE_WESTCENTRALUS",
                "AZURE_SOUTHAFRICAWEST",
                "AZURE_AUSTRALIACENTRAL",
                "AZURE_AUSTRALIACENTRAL2",
                "AZURE_AUSTRALIASOUTHEAST",
                "AZURE_JIOINDIACENTRAL",
                "AZURE_KOREASOUTH",
                "AZURE_SOUTHINDIA",
                "AZURE_WESTINDIA",
                "AZURE_CANADAEAST",
                "AZURE_FRANCESOUTH",
                "AZURE_GERMANYNORTH",
                "AZURE_NORWAYWEST",
                "AZURE_SWITZERLANDWEST",
                "AZURE_UKWEST",
                "AZURE_UAECENTRAL",
                "AZURE_BRAZILSOUTHEAST",
                "ALICLOUD_AP_SOUTHEAST_1",
                "ALICLOUD_AP_NORTHEAST_1",
                "ALICLOUD_AP_NORTHEAST_2",
                "ALICLOUD_AP_SOUTHEAST_3",
                "ALICLOUD_AP_SOUTHEAST_5",
                "ALICLOUD_AP_SOUTHEAST_6",
                "ALICLOUD_AP_SOUTHEAST_7",
                "ALICLOUD_NA_SOUTH_1",
                "ALICLOUD_US_WEST_1",
                "ALICLOUD_US_EAST_1",
                "ALICLOUD_EU_CENTRAL_1",
                "ALICLOUD_EU_WEST_1",
                "ALICLOUD_ME_EAST_1",
                "ALICLOUD_ME_CENTRAL_1",
                "ALICLOUD_CN_HONGKONG"
              ]
            },
            "collectionFormat": "multi"
          },
          {
            "name": "ownerType",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "SHARED",
              "ORGANIZATION"
            ]
          },
          {
            "name": "ownerIds",
            "in": "query",
            "required": false,
            "type": "array",
            "items": {
              "type": "string",
              "format": "uint64"
            },
            "collectionFormat": "multi"
          },
          {
            "name": "createdAfter",
            "in": "query",
            "required": false,
            "type": "string",
            "format": "date-time"
          },
          {
            "name": "createdBefore",
            "in": "query",
            "required": false,
            "type": "string",
            "format": "date-time"
          },
          {
            "name": "servicePlan",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "Starter",
              "Essential",
              "Premium",
              "BYOC",
              "Premium_Reserved",
              "Essential_V2"
            ]
          },
          {
            "name": "lifecycleStates",
            "description": " - PAUSE_PRECHECKING: Internal preparation state used while optional pre-Pause manual backups\nand the authoritative Pause precheck are running. Public APIs expose\nthis state as ACTIVE.",
            "in": "query",
            "required": false,
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "CREATING",
                "ACTIVE",
                "MODIFYING",
                "FAILED",
                "PAUSING",
                "PAUSED",
                "RESUMING",
                "PAUSE_PRECHECKING"
              ]
            },
            "collectionFormat": "multi"
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int64"
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int64"
          },
          {
            "name": "showDeleted",
            "in": "query",
            "required": false,
            "type": "boolean"
          },
          {
            "name": "view",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "BASIC",
              "DETAIL"
            ]
          },
          {
            "name": "pageToken",
            "in": "query",
            "required": false,
            "type": "string"
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      },
      "post": {
        "operationId": "ResourcePoolService_CreateResourcePool",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1ResourcePoolProfile"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/nextgenv1CreateResourcePoolRequest"
            }
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      }
    },
    "/resource_pools/{resourcePoolId}:updateName": {
      "patch": {
        "operationId": "ResourcePoolService_UpdateResourcePoolName",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/nextgenv1ResourcePool"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "resourcePoolId",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/tidb_mgmt_servicev1ResourcePoolServiceUpdateResourcePoolNameBody"
            }
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      }
    },
    "/resource_pools/{resourcePoolId}:updateInstanceLimit": {
      "patch": {
        "operationId": "ResourcePoolService_UpdateResourcePoolInstanceLimit",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/nextgenv1ResourcePool"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "resourcePoolId",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/tidb_mgmt_servicev1ResourcePoolServiceUpdateResourcePoolInstanceLimitBody"
            }
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      }
    },
    "/resource_pools/{resourcePoolId}": {
      "get": {
        "operationId": "ResourcePoolService_GetResourcePool",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1ResourcePoolProfile"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "resourcePoolId",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "showDeleted",
            "in": "query",
            "required": false,
            "type": "boolean"
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      },
      "delete": {
        "operationId": "ResourcePoolService_DeleteResourcePool",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/nextgenv1ResourcePool"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "resourcePoolId",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "validateOnly",
            "in": "query",
            "required": false,
            "type": "boolean"
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      }
    },
    "/{organizationId}/resource_pools": {
      "get": {
        "operationId": "ResourcePoolService_ListOrgResourcePools",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1ListOwnerResourcePoolsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "organizationId",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "provider",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "AWS",
              "GCP",
              "AZURE",
              "ALICLOUD"
            ]
          },
          {
            "name": "region",
            "description": " - AWS_US_EAST_2: AWS.\n - GCP_ASIA_EAST1: GCP.\n - AZURE_EASTUS: Azure\n - ALICLOUD_AP_SOUTHEAST_1: AliCloud",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "AWS_US_EAST_2",
              "AWS_US_EAST_1",
              "AWS_US_WEST_1",
              "AWS_US_WEST_2",
              "AWS_AF_SOUTH_1",
              "AWS_AP_EAST_1",
              "AWS_AP_SOUTH_2",
              "AWS_AP_SOUTHEAST_3",
              "AWS_AP_SOUTHEAST_4",
              "AWS_AP_SOUTH_1",
              "AWS_AP_NORTHEAST_3",
              "AWS_AP_NORTHEAST_2",
              "AWS_AP_SOUTHEAST_1",
              "AWS_AP_SOUTHEAST_2",
              "AWS_AP_NORTHEAST_1",
              "AWS_CA_CENTRAL_1",
              "AWS_CA_WEST_1",
              "AWS_EU_CENTRAL_1",
              "AWS_EU_WEST_1",
              "AWS_EU_WEST_2",
              "AWS_EU_SOUTH_1",
              "AWS_EU_WEST_3",
              "AWS_EU_SOUTH_2",
              "AWS_EU_NORTH_1",
              "AWS_EU_CENTRAL_2",
              "AWS_IL_CENTRAL_1",
              "AWS_ME_SOUTH_1",
              "AWS_ME_CENTRAL_1",
              "AWS_SA_EAST_1",
              "AWS_AP_SOUTHEAST_5",
              "AWS_AP_SOUTHEAST_6",
              "AWS_AP_SOUTHEAST_7",
              "AWS_MX_CENTRAL_1",
              "GCP_ASIA_EAST1",
              "GCP_ASIA_EAST2",
              "GCP_ASIA_NORTHEAST1",
              "GCP_ASIA_NORTHEAST2",
              "GCP_ASIA_NORTHEAST3",
              "GCP_ASIA_SOUTH1",
              "GCP_ASIA_SOUTH2",
              "GCP_ASIA_SOUTHEAST1",
              "GCP_ASIA_SOUTHEAST2",
              "GCP_AUSTRALIA_SOUTHEAST1",
              "GCP_AUSTRALIA_SOUTHEAST2",
              "GCP_EUROPE_CENTRAL2",
              "GCP_EUROPE_NORTH1",
              "GCP_EUROPE_SOUTHWEST1",
              "GCP_EUROPE_WEST1",
              "GCP_EUROPE_WEST10",
              "GCP_EUROPE_WEST12",
              "GCP_EUROPE_WEST2",
              "GCP_EUROPE_WEST3",
              "GCP_EUROPE_WEST4",
              "GCP_EUROPE_WEST6",
              "GCP_EUROPE_WEST8",
              "GCP_EUROPE_WEST9",
              "GCP_ME_CENTRAL1",
              "GCP_ME_CENTRAL2",
              "GCP_ME_WEST1",
              "GCP_NORTHAMERICA_NORTHEAST1",
              "GCP_NORTHAMERICA_NORTHEAST2",
              "GCP_SOUTHAMERICA_EAST1",
              "GCP_SOUTHAMERICA_WEST1",
              "GCP_US_CENTRAL1",
              "GCP_US_EAST1",
              "GCP_US_EAST4",
              "GCP_US_EAST5",
              "GCP_US_SOUTH1",
              "GCP_US_WEST1",
              "GCP_US_WEST2",
              "GCP_US_WEST3",
              "GCP_US_WEST4",
              "AZURE_EASTUS",
              "AZURE_SOUTHCENTRALUS",
              "AZURE_WESTUS2",
              "AZURE_WESTUS3",
              "AZURE_AUSTRALIAEAST",
              "AZURE_SOUTHEASTASIA",
              "AZURE_NORTHEUROPE",
              "AZURE_SWEDENCENTRAL",
              "AZURE_UKSOUTH",
              "AZURE_WESTEUROPE",
              "AZURE_CENTRALUS",
              "AZURE_SOUTHAFRICANORTH",
              "AZURE_CENTRALINDIA",
              "AZURE_EASTASIA",
              "AZURE_JAPANEAST",
              "AZURE_KOREACENTRAL",
              "AZURE_CANADACENTRAL",
              "AZURE_FRANCECENTRAL",
              "AZURE_GERMANYWESTCENTRAL",
              "AZURE_ITALYNORTH",
              "AZURE_NORWAYEAST",
              "AZURE_POLANDCENTRAL",
              "AZURE_SPAINCENTRAL",
              "AZURE_SWITZERLANDNORTH",
              "AZURE_MEXICOCENTRAL",
              "AZURE_UAENORTH",
              "AZURE_BRAZILSOUTH",
              "AZURE_ISRAELCENTRAL",
              "AZURE_QATARCENTRAL",
              "AZURE_CENTRALUSSTAGE",
              "AZURE_EASTUSSTAGE",
              "AZURE_EASTUS2STAGE",
              "AZURE_NORTHCENTRALUSSTAGE",
              "AZURE_SOUTHCENTRALUSSTAGE",
              "AZURE_WESTUSSTAGE",
              "AZURE_WESTUS2STAGE",
              "AZURE_ASIA",
              "AZURE_ASIAPACIFIC",
              "AZURE_AUSTRALIA",
              "AZURE_BRAZIL",
              "AZURE_CANADA",
              "AZURE_EUROPE",
              "AZURE_FRANCE",
              "AZURE_GERMANY",
              "AZURE_GLOBAL",
              "AZURE_INDIA",
              "AZURE_ISRAEL",
              "AZURE_ITALY",
              "AZURE_JAPAN",
              "AZURE_KOREA",
              "AZURE_NEWZEALAND",
              "AZURE_NORWAY",
              "AZURE_POLAND",
              "AZURE_QATAR",
              "AZURE_SINGAPORE",
              "AZURE_SOUTHAFRICA",
              "AZURE_SWEDEN",
              "AZURE_SWITZERLAND",
              "AZURE_UAE",
              "AZURE_UK",
              "AZURE_UNITEDSTATES",
              "AZURE_UNITEDSTATESEUAP",
              "AZURE_EASTASIASTAGE",
              "AZURE_SOUTHEASTASIASTAGE",
              "AZURE_BRAZILUS",
              "AZURE_EASTUS2",
              "AZURE_EASTUSSTG",
              "AZURE_NORTHCENTRALUS",
              "AZURE_WESTUS",
              "AZURE_JAPANWEST",
              "AZURE_JIOINDIAWEST",
              "AZURE_CENTRALUSEUAP",
              "AZURE_EASTUS2EUAP",
              "AZURE_WESTCENTRALUS",
              "AZURE_SOUTHAFRICAWEST",
              "AZURE_AUSTRALIACENTRAL",
              "AZURE_AUSTRALIACENTRAL2",
              "AZURE_AUSTRALIASOUTHEAST",
              "AZURE_JIOINDIACENTRAL",
              "AZURE_KOREASOUTH",
              "AZURE_SOUTHINDIA",
              "AZURE_WESTINDIA",
              "AZURE_CANADAEAST",
              "AZURE_FRANCESOUTH",
              "AZURE_GERMANYNORTH",
              "AZURE_NORWAYWEST",
              "AZURE_SWITZERLANDWEST",
              "AZURE_UKWEST",
              "AZURE_UAECENTRAL",
              "AZURE_BRAZILSOUTHEAST",
              "ALICLOUD_AP_SOUTHEAST_1",
              "ALICLOUD_AP_NORTHEAST_1",
              "ALICLOUD_AP_NORTHEAST_2",
              "ALICLOUD_AP_SOUTHEAST_3",
              "ALICLOUD_AP_SOUTHEAST_5",
              "ALICLOUD_AP_SOUTHEAST_6",
              "ALICLOUD_AP_SOUTHEAST_7",
              "ALICLOUD_NA_SOUTH_1",
              "ALICLOUD_US_WEST_1",
              "ALICLOUD_US_EAST_1",
              "ALICLOUD_EU_CENTRAL_1",
              "ALICLOUD_EU_WEST_1",
              "ALICLOUD_ME_EAST_1",
              "ALICLOUD_ME_CENTRAL_1",
              "ALICLOUD_CN_HONGKONG"
            ]
          },
          {
            "name": "servicePlan",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "Starter",
              "Essential",
              "Premium",
              "BYOC",
              "Premium_Reserved",
              "Essential_V2"
            ]
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      }
    },
    "/{organizationId}/resource_pools/strategy": {
      "patch": {
        "operationId": "ResourcePoolService_UpdateOrgDefaultResourcePool",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1ResourcePoolStrategy"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "organizationId",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/tidb_mgmt_servicev1ResourcePoolServiceUpdateOrgDefaultResourcePoolBody"
            }
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      }
    },
    "/resource_pools/{resourcePoolId}:pause": {
      "post": {
        "operationId": "ResourcePoolService_PauseResourcePool",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1PauseResourcePoolResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "resourcePoolId",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/tidb_mgmt_servicev1ResourcePoolServicePauseResourcePoolBody"
            }
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      }
    },
    "/resource_pools/{resourcePoolId}:resume": {
      "post": {
        "operationId": "ResourcePoolService_ResumeResourcePool",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/nextgenv1ResumeResourcePoolResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "resourcePoolId",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/tidb_mgmt_servicev1ResourcePoolServiceResumeResourcePoolBody"
            }
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      }
    },
    "/resource_pools/{resourcePoolId}/pauseResumeOperations/{operationId}": {
      "get": {
        "operationId": "ResourcePoolService_GetResourcePoolPauseResumeOperation",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1ResourcePoolPauseResumeOperation"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "resourcePoolId",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "operationId",
            "in": "path",
            "required": true,
            "type": "string"
          }
        ],
        "tags": [
          "ResourcePoolService"
        ]
      }
    }
  },
  "definitions": {
    "CreateResourcePoolRequestDemand": {
      "type": "object",
      "properties": {
        "initialRcu": {
          "type": "integer",
          "format": "int64"
        },
        "tikvData": {
          "$ref": "#/definitions/v1CreateResourcePoolRequestStorage"
        },
        "tikvRaftlog": {
          "$ref": "#/definitions/v1CreateResourcePoolRequestStorage"
        },
        "tiflashCn": {
          "$ref": "#/definitions/v1CreateResourcePoolRequestStorage"
        },
        "tiflashWn": {
          "$ref": "#/definitions/v1CreateResourcePoolRequestStorage"
        }
      },
      "required": [
        "initialRcu",
        "tikvData",
        "tikvRaftlog",
        "tiflashCn",
        "tiflashWn"
      ]
    },
    "ListOwnerResourcePoolsResponseRegionResourcePools": {
      "type": "object",
      "properties": {
        "providerId": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/v1CloudProviderName"
            }
          ]
        },
        "regionId": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/v1RegionName"
            }
          ]
        },
        "resourcePools": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1ResourcePoolProfile"
          },
          "readOnly": true
        },
        "strategy": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/v1ResourcePoolStrategy"
            }
          ]
        },
        "servicePlan": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/commonv1ServicePlan"
            }
          ]
        }
      }
    },
    "ListResourcePoolsRequestView": {
      "type": "string",
      "enum": [
        "BASIC",
        "DETAIL"
      ]
    },
    "ResourcePoolLifecycleState": {
      "type": "string",
      "enum": [
        "CREATING",
        "ACTIVE",
        "MODIFYING",
        "FAILED",
        "PAUSING",
        "PAUSED",
        "RESUMING",
        "PAUSE_PRECHECKING"
      ],
      "description": " - PAUSE_PRECHECKING: Internal preparation state used while optional pre-Pause manual backups\nand the authoritative Pause precheck are running. Public APIs expose\nthis state as ACTIVE."
    },
    "ResourcePoolOwnerType": {
      "type": "string",
      "enum": [
        "SHARED",
        "ORGANIZATION"
      ]
    },
    "ResourcePoolProfileInstance": {
      "type": "object",
      "properties": {
        "clusterId": {
          "type": "string",
          "format": "uint64",
          "readOnly": true
        },
        "name": {
          "type": "string",
          "readOnly": true
        }
      }
    },
    "ResourcePoolVcpuLimitMode": {
      "type": "string",
      "enum": [
        "INHERITED",
        "LIMITED",
        "UNLIMITED"
      ]
    },
    "commonv1RegionState": {
      "type": "string",
      "enum": [
        "ACTIVE",
        "INACTIVE"
      ]
    },
    "commonv1ServicePlan": {
      "type": "string",
      "enum": [
        "Starter",
        "Essential",
        "Premium",
        "BYOC",
        "Premium_Reserved",
        "Essential_V2"
      ]
    },
    "globalcommonv1Region": {
      "type": "object",
      "properties": {
        "id": {
          "$ref": "#/definitions/v1RegionName"
        },
        "cloudProviderId": {
          "$ref": "#/definitions/v1CloudProviderName"
        },
        "displayName": {
          "type": "string",
          "title": "display name of the region"
        },
        "openedTenantIds": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "uint64"
          },
          "title": "if public is false, only these tenants can use this region"
        },
        "sortPriority": {
          "type": "integer",
          "format": "int32",
          "title": "not used now"
        },
        "area": {
          "type": "string",
          "title": "for example: Europe, Americas"
        },
        "countryCode": {
          "type": "string",
          "title": "such as: CN, US"
        },
        "state": {
          "title": "region state, if state is inactive, the region is not available, can not use it",
          "allOf": [
            {
              "$ref": "#/definitions/commonv1RegionState"
            }
          ]
        },
        "isPublic": {
          "type": "boolean",
          "title": "whether the region is public, if true, all organizations can use it"
        },
        "defaultBackupTime": {
          "type": "string",
          "title": "cluster's default auto backup time in this region(dataflow-service), such as \"10:00\""
        },
        "serviceAddress": {
          "type": "string",
          "title": "regional service address"
        },
        "logicalName": {
          "type": "string",
          "title": "logic region name, such as \"cn-north-1\" , if local name is not equal to id , is a byoc region and only set public to false"
        },
        "servicePlan": {
          "title": "service plan of the region, if not set, use default service plan",
          "allOf": [
            {
              "$ref": "#/definitions/commonv1ServicePlan"
            }
          ]
        },
        "sharedBucketUrl": {
          "type": "string",
          "x-nullable": true,
          "title": "shared bucket url of the region, if not set, keep empty"
        },
        "opsAuditLogSetting": {
          "title": "ops audit log setting of the region",
          "allOf": [
            {
              "$ref": "#/definitions/v1RegionOpsAuditLogSetting"
            }
          ]
        },
        "regionWhiteLists": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1RegionWhiteList"
          }
        },
        "engineType": {
          "$ref": "#/definitions/v1RegionEngineType"
        },
        "sys9Config": {
          "$ref": "#/definitions/v1RegionSys9Config"
        }
      },
      "required": [
        "id",
        "cloudProviderId",
        "displayName"
      ]
    },
    "globalnextgenv1ComponentType": {
      "type": "string",
      "enum": [
        "TIDB",
        "TIKV",
        "PD",
        "TIPROXY",
        "TIDB_WORKER",
        "TIKV_WORKER",
        "COPROCESSOR_WORKER",
        "TIFLASH_WRITE",
        "TIFLASH_COMPUTE",
        "PD_TSO",
        "PD_SCHEDULING",
        "SCHEMA_MANAGER"
      ]
    },
    "googlerpcStatus": {
      "type": "object",
      "properties": {
        "code": {
          "type": "integer",
          "format": "int32",
          "description": "The status code, which should be an enum value of\n[google.rpc.Code][google.rpc.Code]."
        },
        "message": {
          "type": "string",
          "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\n[google.rpc.Status.details][google.rpc.Status.details] field, or localized\nby the client."
        },
        "details": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/protobufAny"
          },
          "description": "A list of messages that carry the error details.  There is a common set of\nmessage types for APIs to use."
        }
      },
      "description": "The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). Each `Status` message contains\nthree pieces of data: error code, error message, and error details.\n\nYou can find out more about this error model and how to work with it in the\n[API Design Guide](https://cloud.google.com/apis/design/errors)."
    },
    "nextgenv1ComponentCapacity": {
      "type": "object",
      "properties": {
        "nodeSpec": {
          "$ref": "#/definitions/nextgenv1NodeSpecSelection"
        },
        "nodeCount": {
          "type": "string",
          "format": "int64",
          "x-nullable": true
        },
        "storages": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/nextgenv1Storage"
          }
        }
      }
    },
    "nextgenv1CreateResourcePoolRequest": {
      "type": "object",
      "properties": {
        "resourcePool": {
          "$ref": "#/definitions/nextgenv1ResourcePool"
        },
        "demand": {
          "$ref": "#/definitions/CreateResourcePoolRequestDemand"
        },
        "pdDeploymentMode": {
          "description": "If unset, RCU-driven shared pools default to monolithic.\nTopology-driven shared pools keep the regional default.",
          "allOf": [
            {
              "$ref": "#/definitions/v1PdDeploymentMode"
            }
          ]
        },
        "enabledTikvRemoteWorkers": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/globalnextgenv1ComponentType"
          },
          "description": "Enabled TiKV remote worker components.\nCurrently only TIKV_WORKER and COPROCESSOR_WORKER are supported.\nIf unset or empty, CSNG applies its default worker set."
        },
        "tiflashMode": {
          "description": "Requested TiFlash architecture for the regional shared pool creation.\nIf unset or AUTO, CSNG selects the effective architecture.",
          "allOf": [
            {
              "$ref": "#/definitions/v1TiflashMode"
            }
          ]
        },
        "logicalRegion": {
          "type": "string",
          "description": "logical_region disambiguates the target logical region when multiple logical\nregions share the same physical cloud-provider region (region_id).\nParticularly useful for Essential_V2 shared pools created in private logical regions.\nWhen set, the region is resolved by matching both the physical region_id and this\nlogical name. When unset, any active region matching the physical region_id is selected."
        },
        "bootstrapCapacity": {
          "$ref": "#/definitions/v1ResourcePoolBootstrapCapacity"
        },
        "vcpuLimitMode": {
          "$ref": "#/definitions/ResourcePoolVcpuLimitMode"
        },
        "createdBy": {
          "type": "string"
        },
        "enableCapacityPlanner": {
          "type": "boolean",
          "description": "Install Capacity Planner for an RCU-driven shared pool."
        },
        "validateOnly": {
          "type": "boolean"
        }
      },
      "required": [
        "resourcePool",
        "demand"
      ]
    },
    "nextgenv1ListResourcePoolsResponse": {
      "type": "object",
      "properties": {
        "resourcePools": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1ResourcePoolProfile"
          }
        },
        "totalSize": {
          "type": "integer",
          "format": "int32"
        },
        "nextPageToken": {
          "type": "string"
        }
      }
    },
    "nextgenv1NodeSpecSelection": {
      "type": "object",
      "properties": {
        "cpu": {
          "type": "string",
          "format": "int64"
        },
        "memoryGi": {
          "type": "string",
          "format": "int64"
        }
      }
    },
    "nextgenv1ResourcePool": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64",
          "readOnly": true
        },
        "name": {
          "type": "string"
        },
        "providerId": {
          "$ref": "#/definitions/v1CloudProviderName"
        },
        "regionId": {
          "$ref": "#/definitions/v1RegionName"
        },
        "ownerType": {
          "$ref": "#/definitions/ResourcePoolOwnerType"
        },
        "ownerId": {
          "type": "string",
          "format": "uint64"
        },
        "cidr": {
          "type": "string"
        },
        "servicePlan": {
          "$ref": "#/definitions/commonv1ServicePlan"
        },
        "instanceLimit": {
          "type": "string",
          "format": "uint64"
        },
        "k8sServiceCidr": {
          "type": "string"
        },
        "configMetaProfileId": {
          "type": "string"
        },
        "dataplaneId": {
          "type": "string",
          "readOnly": true
        },
        "providerIdentityId": {
          "type": "string",
          "format": "uint64",
          "readOnly": true
        },
        "vcpusLimit": {
          "type": "string",
          "format": "uint64"
        },
        "pcaArn": {
          "type": "string"
        },
        "providerIdentity": {
          "type": "string"
        },
        "placementGroupEnabled": {
          "type": "boolean",
          "description": "placement_group_enabled requests placement-group isolation for the underlying nodes.\nSupported for AWS resource pools (SHARED with Essential_V2, or ORGANIZATION with BYOC/Premium). Immutable after create."
        },
        "highAvailabilityType": {
          "description": "The availability scope requested for the resource pool placement.\nApplies to any service plan that supports single-AZ or multi-AZ resource pools.",
          "allOf": [
            {
              "$ref": "#/definitions/nextgenv1ResourcePoolHighAvailabilityType"
            }
          ]
        },
        "zoneConfig": {
          "description": "Optional placement details. If omitted, dataplane-manager chooses zones from its regional defaults.",
          "allOf": [
            {
              "$ref": "#/definitions/nextgenv1ResourcePoolZoneConfig"
            }
          ]
        },
        "lifecycleState": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/ResourcePoolLifecycleState"
            }
          ]
        },
        "stateMessageCode": {
          "type": "string",
          "readOnly": true
        },
        "vcpuLimitMode": {
          "$ref": "#/definitions/ResourcePoolVcpuLimitMode"
        },
        "cloudResourceTags": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "createdBy": {
          "type": "string",
          "readOnly": true
        },
        "instanceCount": {
          "type": "string",
          "format": "int64",
          "readOnly": true
        },
        "createTime": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        },
        "updateTime": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        },
        "deleteTime": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        },
        "pausedAt": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        },
        "automaticResumeAt": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        }
      },
      "required": [
        "name",
        "providerId",
        "regionId",
        "ownerType",
        "ownerId",
        "cidr",
        "servicePlan"
      ]
    },
    "nextgenv1ResourcePoolCapacity": {
      "type": "object",
      "properties": {
        "tikv": {
          "$ref": "#/definitions/nextgenv1ComponentCapacity"
        },
        "tiflash": {
          "$ref": "#/definitions/nextgenv1ComponentCapacity"
        }
      }
    },
    "nextgenv1ResourcePoolHighAvailabilityType": {
      "type": "string",
      "enum": [
        "REGIONAL",
        "ZONAL"
      ]
    },
    "nextgenv1ResourcePoolZoneConfig": {
      "type": "object",
      "properties": {
        "nodeZones": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Explicit node zones for the dataplane nodes.\nMust contain exactly 1 zone for ZONAL pools or exactly 3 zones for REGIONAL pools."
        }
      }
    },
    "nextgenv1ResumeResourcePoolResponse": {
      "type": "object",
      "properties": {
        "operationId": {
          "type": "string",
          "readOnly": true
        }
      }
    },
    "nextgenv1Storage": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "sizeGi": {
          "type": "string",
          "format": "int64"
        }
      }
    },
    "protobufAny": {
      "type": "object",
      "properties": {
        "@type": {
          "type": "string",
          "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n  value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n  URL, or have them precompiled into a binary to avoid any\n  lookup. Therefore, binary compatibility needs to be preserved\n  on changes to types. (Use versioned type names to manage\n  breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com. As of May 2023, there are no widely used type server\nimplementations and no plans to implement one.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics."
        }
      },
      "additionalProperties": {},
      "description": "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n    Foo foo = ...;\n    Any any;\n    any.PackFrom(foo);\n    ...\n    if (any.UnpackTo(\u0026foo)) {\n      ...\n    }\n\nExample 2: Pack and unpack a message in Java.\n\n    Foo foo = ...;\n    Any any = Any.pack(foo);\n    ...\n    if (any.is(Foo.class)) {\n      foo = any.unpack(Foo.class);\n    }\n    // or ...\n    if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n      foo = any.unpack(Foo.getDefaultInstance());\n    }\n\n Example 3: Pack and unpack a message in Python.\n\n    foo = Foo(...)\n    any = Any()\n    any.Pack(foo)\n    ...\n    if any.Is(Foo.DESCRIPTOR):\n      any.Unpack(foo)\n      ...\n\n Example 4: Pack and unpack a message in Go\n\n     foo := \u0026pb.Foo{...}\n     any, err := anypb.New(foo)\n     if err != nil {\n       ...\n     }\n     ...\n     foo := \u0026pb.Foo{}\n     if err := any.UnmarshalTo(foo); err != nil {\n       ...\n     }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n====\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n    package google.profile;\n    message Person {\n      string first_name = 1;\n      string last_name = 2;\n    }\n\n    {\n      \"@type\": \"type.googleapis.com/google.profile.Person\",\n      \"firstName\": \u003cstring\u003e,\n      \"lastName\": \u003cstring\u003e\n    }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n    {\n      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n      \"value\": \"1.212s\"\n    }"
    },
    "tidb_mgmt_servicev1ResourcePoolServicePauseResourcePoolBody": {
      "type": "object",
      "properties": {
        "operationId": {
          "type": "string",
          "description": "Required unless validate_only is true."
        },
        "createManualBackupBeforePause": {
          "type": "boolean",
          "description": "Creates one manual backup for every Instance in the Resource Pool before\nrunning Pause validation. The Pause request stops if any backup fails."
        },
        "validateOnly": {
          "type": "boolean",
          "description": "Runs Pause validation without changing lifecycle state or starting a workflow."
        }
      }
    },
    "tidb_mgmt_servicev1ResourcePoolServiceResumeResourcePoolBody": {
      "type": "object",
      "properties": {
        "operationId": {
          "type": "string"
        }
      },
      "required": [
        "operationId"
      ]
    },
    "tidb_mgmt_servicev1ResourcePoolServiceUpdateOrgDefaultResourcePoolBody": {
      "type": "object",
      "properties": {
        "defaultResourcePoolId": {
          "type": "string",
          "format": "uint64"
        },
        "providerId": {
          "$ref": "#/definitions/v1CloudProviderName"
        },
        "regionId": {
          "$ref": "#/definitions/v1RegionName"
        }
      },
      "required": [
        "defaultResourcePoolId",
        "providerId",
        "regionId"
      ]
    },
    "tidb_mgmt_servicev1ResourcePoolServiceUpdateResourcePoolInstanceLimitBody": {
      "type": "object",
      "properties": {
        "instanceLimit": {
          "type": "string",
          "format": "uint64",
          "description": "At least one of instance_limit or vcpus_limit must be provided.\nRequests with both instance_limit and vcpus_limit unset are invalid."
        },
        "vcpusLimit": {
          "type": "string",
          "format": "uint64",
          "x-nullable": true
        },
        "vcpuLimitMode": {
          "$ref": "#/definitions/ResourcePoolVcpuLimitMode"
        },
        "validateOnly": {
          "type": "boolean"
        }
      }
    },
    "tidb_mgmt_servicev1ResourcePoolServiceUpdateResourcePoolNameBody": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "validateOnly": {
          "type": "boolean"
        }
      },
      "required": [
        "name"
      ]
    },
    "v1CloudProviderName": {
      "type": "string",
      "enum": [
        "AWS",
        "GCP",
        "AZURE",
        "ALICLOUD"
      ],
      "description": "Refer to terraform provider name: https://registry.terraform.io/browse/providers."
    },
    "v1CreateResourcePoolRequestStorage": {
      "type": "object",
      "properties": {
        "storageType": {
          "$ref": "#/definitions/v1ResourcePoolProfileStorageType"
        },
        "diskSizeGi": {
          "type": "integer",
          "format": "int64"
        },
        "diskIops": {
          "type": "integer",
          "format": "int64"
        },
        "diskThroughputMbps": {
          "type": "integer",
          "format": "int64"
        }
      },
      "required": [
        "storageType"
      ]
    },
    "v1ListOwnerResourcePoolsResponse": {
      "type": "object",
      "properties": {
        "regionResourcePools": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/ListOwnerResourcePoolsResponseRegionResourcePools"
          },
          "readOnly": true
        }
      }
    },
    "v1PauseResourcePoolResponse": {
      "type": "object",
      "properties": {
        "operationId": {
          "type": "string",
          "description": "Populated only when Pause is accepted and its workflow is created or replayed.",
          "readOnly": true
        },
        "validationResults": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/v1ResourcePoolPauseValidationResult"
          },
          "description": "Populated when validation finds blockers, including for an actual Pause request.\nAn empty list means Pause is currently allowed or has been accepted.",
          "readOnly": true
        }
      }
    },
    "v1PdDeploymentMode": {
      "type": "string",
      "enum": [
        "PD_DEPLOYMENT_MODE_MICROSERVICE",
        "PD_DEPLOYMENT_MODE_MONOLITHIC"
      ]
    },
    "v1RegionEngineType": {
      "type": "string",
      "enum": [
        "MYSQL_COMPATIBLE",
        "POSTGRESQL_COMPATIBLE"
      ]
    },
    "v1RegionName": {
      "type": "string",
      "enum": [
        "AWS_US_EAST_2",
        "AWS_US_EAST_1",
        "AWS_US_WEST_1",
        "AWS_US_WEST_2",
        "AWS_AF_SOUTH_1",
        "AWS_AP_EAST_1",
        "AWS_AP_SOUTH_2",
        "AWS_AP_SOUTHEAST_3",
        "AWS_AP_SOUTHEAST_4",
        "AWS_AP_SOUTH_1",
        "AWS_AP_NORTHEAST_3",
        "AWS_AP_NORTHEAST_2",
        "AWS_AP_SOUTHEAST_1",
        "AWS_AP_SOUTHEAST_2",
        "AWS_AP_NORTHEAST_1",
        "AWS_CA_CENTRAL_1",
        "AWS_CA_WEST_1",
        "AWS_EU_CENTRAL_1",
        "AWS_EU_WEST_1",
        "AWS_EU_WEST_2",
        "AWS_EU_SOUTH_1",
        "AWS_EU_WEST_3",
        "AWS_EU_SOUTH_2",
        "AWS_EU_NORTH_1",
        "AWS_EU_CENTRAL_2",
        "AWS_IL_CENTRAL_1",
        "AWS_ME_SOUTH_1",
        "AWS_ME_CENTRAL_1",
        "AWS_SA_EAST_1",
        "AWS_AP_SOUTHEAST_5",
        "AWS_AP_SOUTHEAST_6",
        "AWS_AP_SOUTHEAST_7",
        "AWS_MX_CENTRAL_1",
        "GCP_ASIA_EAST1",
        "GCP_ASIA_EAST2",
        "GCP_ASIA_NORTHEAST1",
        "GCP_ASIA_NORTHEAST2",
        "GCP_ASIA_NORTHEAST3",
        "GCP_ASIA_SOUTH1",
        "GCP_ASIA_SOUTH2",
        "GCP_ASIA_SOUTHEAST1",
        "GCP_ASIA_SOUTHEAST2",
        "GCP_AUSTRALIA_SOUTHEAST1",
        "GCP_AUSTRALIA_SOUTHEAST2",
        "GCP_EUROPE_CENTRAL2",
        "GCP_EUROPE_NORTH1",
        "GCP_EUROPE_SOUTHWEST1",
        "GCP_EUROPE_WEST1",
        "GCP_EUROPE_WEST10",
        "GCP_EUROPE_WEST12",
        "GCP_EUROPE_WEST2",
        "GCP_EUROPE_WEST3",
        "GCP_EUROPE_WEST4",
        "GCP_EUROPE_WEST6",
        "GCP_EUROPE_WEST8",
        "GCP_EUROPE_WEST9",
        "GCP_ME_CENTRAL1",
        "GCP_ME_CENTRAL2",
        "GCP_ME_WEST1",
        "GCP_NORTHAMERICA_NORTHEAST1",
        "GCP_NORTHAMERICA_NORTHEAST2",
        "GCP_SOUTHAMERICA_EAST1",
        "GCP_SOUTHAMERICA_WEST1",
        "GCP_US_CENTRAL1",
        "GCP_US_EAST1",
        "GCP_US_EAST4",
        "GCP_US_EAST5",
        "GCP_US_SOUTH1",
        "GCP_US_WEST1",
        "GCP_US_WEST2",
        "GCP_US_WEST3",
        "GCP_US_WEST4",
        "AZURE_EASTUS",
        "AZURE_SOUTHCENTRALUS",
        "AZURE_WESTUS2",
        "AZURE_WESTUS3",
        "AZURE_AUSTRALIAEAST",
        "AZURE_SOUTHEASTASIA",
        "AZURE_NORTHEUROPE",
        "AZURE_SWEDENCENTRAL",
        "AZURE_UKSOUTH",
        "AZURE_WESTEUROPE",
        "AZURE_CENTRALUS",
        "AZURE_SOUTHAFRICANORTH",
        "AZURE_CENTRALINDIA",
        "AZURE_EASTASIA",
        "AZURE_JAPANEAST",
        "AZURE_KOREACENTRAL",
        "AZURE_CANADACENTRAL",
        "AZURE_FRANCECENTRAL",
        "AZURE_GERMANYWESTCENTRAL",
        "AZURE_ITALYNORTH",
        "AZURE_NORWAYEAST",
        "AZURE_POLANDCENTRAL",
        "AZURE_SPAINCENTRAL",
        "AZURE_SWITZERLANDNORTH",
        "AZURE_MEXICOCENTRAL",
        "AZURE_UAENORTH",
        "AZURE_BRAZILSOUTH",
        "AZURE_ISRAELCENTRAL",
        "AZURE_QATARCENTRAL",
        "AZURE_CENTRALUSSTAGE",
        "AZURE_EASTUSSTAGE",
        "AZURE_EASTUS2STAGE",
        "AZURE_NORTHCENTRALUSSTAGE",
        "AZURE_SOUTHCENTRALUSSTAGE",
        "AZURE_WESTUSSTAGE",
        "AZURE_WESTUS2STAGE",
        "AZURE_ASIA",
        "AZURE_ASIAPACIFIC",
        "AZURE_AUSTRALIA",
        "AZURE_BRAZIL",
        "AZURE_CANADA",
        "AZURE_EUROPE",
        "AZURE_FRANCE",
        "AZURE_GERMANY",
        "AZURE_GLOBAL",
        "AZURE_INDIA",
        "AZURE_ISRAEL",
        "AZURE_ITALY",
        "AZURE_JAPAN",
        "AZURE_KOREA",
        "AZURE_NEWZEALAND",
        "AZURE_NORWAY",
        "AZURE_POLAND",
        "AZURE_QATAR",
        "AZURE_SINGAPORE",
        "AZURE_SOUTHAFRICA",
        "AZURE_SWEDEN",
        "AZURE_SWITZERLAND",
        "AZURE_UAE",
        "AZURE_UK",
        "AZURE_UNITEDSTATES",
        "AZURE_UNITEDSTATESEUAP",
        "AZURE_EASTASIASTAGE",
        "AZURE_SOUTHEASTASIASTAGE",
        "AZURE_BRAZILUS",
        "AZURE_EASTUS2",
        "AZURE_EASTUSSTG",
        "AZURE_NORTHCENTRALUS",
        "AZURE_WESTUS",
        "AZURE_JAPANWEST",
        "AZURE_JIOINDIAWEST",
        "AZURE_CENTRALUSEUAP",
        "AZURE_EASTUS2EUAP",
        "AZURE_WESTCENTRALUS",
        "AZURE_SOUTHAFRICAWEST",
        "AZURE_AUSTRALIACENTRAL",
        "AZURE_AUSTRALIACENTRAL2",
        "AZURE_AUSTRALIASOUTHEAST",
        "AZURE_JIOINDIACENTRAL",
        "AZURE_KOREASOUTH",
        "AZURE_SOUTHINDIA",
        "AZURE_WESTINDIA",
        "AZURE_CANADAEAST",
        "AZURE_FRANCESOUTH",
        "AZURE_GERMANYNORTH",
        "AZURE_NORWAYWEST",
        "AZURE_SWITZERLANDWEST",
        "AZURE_UKWEST",
        "AZURE_UAECENTRAL",
        "AZURE_BRAZILSOUTHEAST",
        "ALICLOUD_AP_SOUTHEAST_1",
        "ALICLOUD_AP_NORTHEAST_1",
        "ALICLOUD_AP_NORTHEAST_2",
        "ALICLOUD_AP_SOUTHEAST_3",
        "ALICLOUD_AP_SOUTHEAST_5",
        "ALICLOUD_AP_SOUTHEAST_6",
        "ALICLOUD_AP_SOUTHEAST_7",
        "ALICLOUD_NA_SOUTH_1",
        "ALICLOUD_US_WEST_1",
        "ALICLOUD_US_EAST_1",
        "ALICLOUD_EU_CENTRAL_1",
        "ALICLOUD_EU_WEST_1",
        "ALICLOUD_ME_EAST_1",
        "ALICLOUD_ME_CENTRAL_1",
        "ALICLOUD_CN_HONGKONG"
      ],
      "description": "- AWS_US_EAST_2: AWS.\n - GCP_ASIA_EAST1: GCP.\n - AZURE_EASTUS: Azure\n - ALICLOUD_AP_SOUTHEAST_1: AliCloud",
      "title": "Refer to:\n  - AWS: https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints.\n  - GCP: https://console.cloud.google.com/compute/zones\n  - Azure: https://gist.github.com/ausfestivus/04e55c7d80229069bf3bc75870630ec8"
    },
    "v1RegionOpsAuditLogSetting": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logLocation": {
          "$ref": "#/definitions/v1RegionOpsAuditLogSettingLogLocation"
        },
        "logRotation": {
          "$ref": "#/definitions/v1RegionOpsAuditLogSettingLogRotation"
        }
      },
      "required": [
        "enabled"
      ]
    },
    "v1RegionOpsAuditLogSettingLogLocation": {
      "type": "object",
      "properties": {
        "type": {
          "$ref": "#/definitions/v1RegionOpsAuditLogSettingType"
        },
        "bucketUri": {
          "type": "string"
        },
        "roleArn": {
          "type": "string"
        },
        "externalId": {
          "type": "string"
        },
        "accountId": {
          "type": "string"
        }
      },
      "required": [
        "type",
        "bucketUri",
        "roleArn",
        "externalId",
        "accountId"
      ]
    },
    "v1RegionOpsAuditLogSettingLogRotation": {
      "type": "object",
      "properties": {
        "fileSizeLimitInMb": {
          "type": "string",
          "format": "uint64"
        },
        "rotationIntervalInMin": {
          "type": "string",
          "format": "uint64"
        }
      },
      "required": [
        "fileSizeLimitInMb",
        "rotationIntervalInMin"
      ]
    },
    "v1RegionOpsAuditLogSettingType": {
      "type": "string",
      "enum": [
        "TYPE_STANDARD",
        "TYPE_CUSTOMIZED"
      ]
    },
    "v1RegionSys9Config": {
      "type": "object",
      "properties": {
        "oemProfileRef": {
          "type": "string"
        },
        "authMode": {
          "type": "string"
        },
        "tokenTtlSec": {
          "type": "integer",
          "format": "int64"
        },
        "sessionRefreshBeforeSec": {
          "type": "integer",
          "format": "int64"
        },
        "retryPolicyRef": {
          "type": "string"
        }
      }
    },
    "v1RegionWhiteList": {
      "type": "object",
      "properties": {
        "servicePlan": {
          "$ref": "#/definitions/commonv1ServicePlan"
        },
        "isPublic": {
          "type": "boolean"
        },
        "openedTenantIds": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "uint64"
          }
        }
      },
      "required": [
        "servicePlan"
      ]
    },
    "v1ResourcePoolBootstrapCapacity": {
      "type": "object",
      "properties": {
        "tikv": {
          "$ref": "#/definitions/nextgenv1ComponentCapacity"
        },
        "tiflash": {
          "$ref": "#/definitions/nextgenv1ComponentCapacity"
        }
      },
      "required": [
        "tikv"
      ]
    },
    "v1ResourcePoolPauseResumeOperation": {
      "type": "object",
      "properties": {
        "operationId": {
          "type": "string",
          "readOnly": true
        },
        "resourcePoolId": {
          "type": "string",
          "format": "uint64",
          "readOnly": true
        },
        "type": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/v1ResourcePoolPauseResumeOperationType"
            }
          ]
        },
        "status": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/v1ResourcePoolPauseResumeOperationStatus"
            }
          ]
        },
        "resultSummary": {
          "type": "string",
          "readOnly": true
        },
        "createdAt": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        },
        "updatedAt": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        },
        "completedAt": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        }
      }
    },
    "v1ResourcePoolPauseResumeOperationStatus": {
      "type": "string",
      "enum": [
        "RUNNING",
        "SUCCEEDED",
        "FAILED"
      ]
    },
    "v1ResourcePoolPauseResumeOperationType": {
      "type": "string",
      "enum": [
        "OPERATION_PAUSE",
        "OPERATION_RESUME"
      ]
    },
    "v1ResourcePoolPauseValidationResult": {
      "type": "object",
      "properties": {
        "checkCode": {
          "type": "string",
          "description": "A stable code from Global or the authoritative Regional validation owner.\nFor the minimal Ops-only contract, Regional codes may be returned as-is.",
          "readOnly": true
        },
        "detail": {
          "type": "string",
          "description": "A safe detail that can be shown to the Ops caller.",
          "readOnly": true
        }
      }
    },
    "v1ResourcePoolProfile": {
      "type": "object",
      "properties": {
        "resourcePool": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/nextgenv1ResourcePool"
            }
          ]
        },
        "isDefault": {
          "type": "boolean",
          "readOnly": true
        },
        "instances": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/ResourcePoolProfileInstance"
          },
          "readOnly": true
        },
        "version": {
          "type": "string",
          "readOnly": true
        },
        "tikvDataStorageType": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/v1ResourcePoolProfileStorageType"
            }
          ]
        },
        "tikvRaftlogStorageType": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/v1ResourcePoolProfileStorageType"
            }
          ]
        },
        "tiflashCnStorageType": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/v1ResourcePoolProfileStorageType"
            }
          ]
        },
        "tiflashWnStorageType": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/v1ResourcePoolProfileStorageType"
            }
          ]
        },
        "region": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/globalcommonv1Region"
            }
          ]
        },
        "pdDeploymentMode": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/v1PdDeploymentMode"
            }
          ]
        },
        "enabledTikvRemoteWorkers": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/globalnextgenv1ComponentType"
          },
          "description": "Enabled TiKV remote worker components.\nCurrently only TIKV_WORKER and COPROCESSOR_WORKER are supported.\nIf unset or empty, CSNG applies its default worker set.",
          "readOnly": true
        },
        "defaultOrgs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "For Essential_V2 shared pools, lists the organization IDs that have set\nthis pool as their org-level default.",
          "readOnly": true
        },
        "capacity": {
          "readOnly": true,
          "allOf": [
            {
              "$ref": "#/definitions/nextgenv1ResourcePoolCapacity"
            }
          ]
        },
        "provisionedDatabaseVcpus": {
          "type": "string",
          "format": "int64",
          "x-nullable": true,
          "readOnly": true
        },
        "o11yClusterCidr": {
          "type": "string",
          "x-nullable": true,
          "readOnly": true
        }
      }
    },
    "v1ResourcePoolProfileStorageType": {
      "type": "string",
      "enum": [
        "GP3",
        "IO2",
        "LocalSSD",
        "CloudESSD",
        "CloudAuto",
        "PremiumSSDV2"
      ]
    },
    "v1ResourcePoolStrategy": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64",
          "readOnly": true
        },
        "organizationId": {
          "type": "string",
          "format": "uint64"
        },
        "defaultResourcePoolId": {
          "type": "string",
          "format": "uint64"
        },
        "providerId": {
          "$ref": "#/definitions/v1CloudProviderName"
        },
        "regionId": {
          "$ref": "#/definitions/v1RegionName"
        },
        "servicePlan": {
          "$ref": "#/definitions/commonv1ServicePlan"
        },
        "createTime": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        },
        "updateTime": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        },
        "deleteTime": {
          "type": "string",
          "format": "date-time",
          "readOnly": true
        }
      },
      "required": [
        "organizationId",
        "defaultResourcePoolId",
        "providerId",
        "regionId",
        "servicePlan"
      ]
    },
    "v1TiflashMode": {
      "type": "string",
      "enum": [
        "TIFLASH_MODE_AUTO",
        "TIFLASH_MODE_LEGACY",
        "TIFLASH_MODE_COLUMNAR"
      ]
    }
  }
}
