openapi: 3.2.0 info: title: Yugabytedb Availability Zones API version: v1 contact: name: https://docs.yugabyte.com license: name: Polyform Free Trial License 1.0.0 url: https://github.com/yugabyte/yugabyte-db/blob/master/licenses/POLYFORM-FREE-TRIAL-LICENSE-1.0.0.txt termsOfService: TODO(chirag) description: 'Operations tagged Availability Zones across 2 of this provider''s published API definitions: openapi_2.yaml, platform.swagger.json. Each path carries the servers of the definition it was published in.' servers: - url: / tags: - name: Availability Zones paths: /api/v1/customers/{cUUID}/providers/{pUUID}/provider_regions/{rUUID}/region_zones: servers: - url: / post: description: 'WARNING: This is a preview API that could change.' operationId: createZone parameters: - in: path name: cUUID required: true schema: format: uuid type: string - in: path name: pUUID required: true schema: format: uuid type: string - in: path name: rUUID required: true schema: format: uuid type: string - in: query name: request schema: {} requestBody: content: application/json: schema: $ref: '#/components/schemas/AvailabilityZone' description: Availability Zone to create required: true responses: '200': content: application/json: schema: additionalProperties: $ref: '#/components/schemas/AvailabilityZone' type: object description: successful operation security: - apiKeyAuth: [] summary: Create an availability zone tags: - Availability Zones x-codegen-request-body-name: azData /api/v1/customers/{cUUID}/providers/{pUUID}/provider_regions/{rUUID}/region_zones/{azUUID}: servers: - url: / put: description: 'WARNING: This is a preview API that could change.' operationId: editZone parameters: - in: path name: cUUID required: true schema: format: uuid type: string - in: path name: pUUID required: true schema: format: uuid type: string - in: path name: rUUID required: true schema: format: uuid type: string - in: path name: azUUID required: true schema: format: uuid type: string - in: query name: request schema: {} requestBody: content: application/json: schema: $ref: '#/components/schemas/AvailabilityZone' description: Availability zone to edit required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/AvailabilityZone' description: successful operation security: - apiKeyAuth: [] summary: Modify an availability zone tags: - Availability Zones x-codegen-request-body-name: azData /api/v1/customers/{cUUID}/providers/{pUUID}/regions/{rUUID}/zones: servers: - url: / get: operationId: listOfAZ parameters: - in: path name: cUUID required: true schema: format: uuid type: string - in: path name: pUUID required: true schema: format: uuid type: string - in: path name: rUUID required: true schema: format: uuid type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/AvailabilityZone' type: array description: successful operation security: - apiKeyAuth: [] summary: List availability zones tags: - Availability Zones post: deprecated: true description: 'Deprecated since YBA version 2.18.2.0. Use /api/v1/customers/{cUUID}/provider/{pUUID}/provider_regions/:rUUID/region_zones instead' operationId: createAZ parameters: - in: path name: cUUID required: true schema: format: uuid type: string - in: path name: pUUID required: true schema: format: uuid type: string - in: path name: rUUID required: true schema: format: uuid type: string - in: query name: request schema: {} requestBody: content: application/json: schema: $ref: '#/components/schemas/AvailabilityZoneFormData' description: Availability zone form data required: true responses: '200': content: application/json: schema: additionalProperties: $ref: '#/components/schemas/AvailabilityZone' type: object description: successful operation security: - apiKeyAuth: [] summary: Create an availability zone - deprecated tags: - Availability Zones x-codegen-request-body-name: azFormData /api/v1/customers/{cUUID}/providers/{pUUID}/regions/{rUUID}/zones/{azUUID}: servers: - url: / delete: operationId: deleteAZ parameters: - in: path name: cUUID required: true schema: format: uuid type: string - in: path name: pUUID required: true schema: format: uuid type: string - in: path name: rUUID required: true schema: format: uuid type: string - in: path name: azUUID required: true schema: format: uuid type: string - in: query name: request schema: {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/YBPSuccess' description: successful operation security: - apiKeyAuth: [] summary: Delete an availability zone tags: - Availability Zones put: deprecated: true description: 'Deprecated since YBA version 2.18.2.0. Use /api/v1/customers/{cUUID}/provider/{pUUID}/provider_regions/:rUUID/region_zones/:zUUID instead' operationId: editAZ parameters: - in: path name: cUUID required: true schema: format: uuid type: string - in: path name: pUUID required: true schema: format: uuid type: string - in: path name: rUUID required: true schema: format: uuid type: string - in: path name: azUUID required: true schema: format: uuid type: string - in: query name: request schema: {} requestBody: content: application/json: schema: $ref: '#/components/schemas/AvailabilityZoneFormData' description: Availability zone edit form data required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/AvailabilityZone' description: successful operation security: - apiKeyAuth: [] summary: Edit an Availabilty Zone - deprecated tags: - Availability Zones x-codegen-request-body-name: azFormData components: schemas: AvailabilityZoneDetails: example: cloudInfo: kubernetes: kubeNamespace: kubeNamespace kubernetesImagePullSecretName: kubernetesImagePullSecretName kubernetesPullSecretContent: kubernetesPullSecretContent certManagerIssuer: certManagerIssuer isKubernetesOperatorControlled: true kubernetesOperatorControlled: true kubeConfig: kubeConfig kubeDomain: kubeDomain overrides: overrides certManagerIssuerName: certManagerIssuerName kubernetesPullSecret: kubernetesPullSecret kubeConfigName: kubeConfigName certManagerIssuerKind: certManagerIssuerKind kubePodAddressTemplate: kubePodAddressTemplate kubernetesProvider: kubernetesProvider kubeConfigContent: kubeConfigContent kubernetesPullSecretName: kubernetesPullSecretName certManagerIssuerGroup: certManagerIssuerGroup kubernetesImageRegistry: kubernetesImageRegistry certManagerClusterIssuer: certManagerClusterIssuer kubernetesStorageClass: kubernetesStorageClass kubernetesServiceAccount: kubernetesServiceAccount properties: cloudInfo: $ref: '#/components/schemas/AZCloudInfo' type: object YBPSuccess: example: success: true message: message properties: message: description: API response message. readOnly: true type: string success: description: API operation status. A value of true indicates the operation was successful. readOnly: true type: boolean type: object AvailabilityZoneFormData: example: availabilityZones: - subnet: subnet code: code name: name secondarySubnet: secondarySubnet - subnet: subnet code: code name: name secondarySubnet: secondarySubnet properties: availabilityZones: description: List of availability zones items: $ref: '#/components/schemas/AvailabilityZoneData' type: array required: - availabilityZones type: object AvailabilityZoneData: description: Details of an availability zone, used by the API and UI to validate data against input constraints example: subnet: subnet code: code name: name secondarySubnet: secondarySubnet properties: code: description: AZ code type: string name: description: AZ name type: string secondarySubnet: description: AZ secondary subnet type: string subnet: description: AZ subnet type: string required: - code - name type: object KubernetesRegionInfo: example: kubeNamespace: kubeNamespace kubernetesImagePullSecretName: kubernetesImagePullSecretName kubernetesPullSecretContent: kubernetesPullSecretContent certManagerIssuer: certManagerIssuer isKubernetesOperatorControlled: true kubernetesOperatorControlled: true kubeConfig: kubeConfig kubeDomain: kubeDomain overrides: overrides certManagerIssuerName: certManagerIssuerName kubernetesPullSecret: kubernetesPullSecret kubeConfigName: kubeConfigName certManagerIssuerKind: certManagerIssuerKind kubePodAddressTemplate: kubePodAddressTemplate kubernetesProvider: kubernetesProvider kubeConfigContent: kubeConfigContent kubernetesPullSecretName: kubernetesPullSecretName certManagerIssuerGroup: certManagerIssuerGroup kubernetesImageRegistry: kubernetesImageRegistry certManagerClusterIssuer: certManagerClusterIssuer kubernetesStorageClass: kubernetesStorageClass kubernetesServiceAccount: kubernetesServiceAccount properties: certManagerClusterIssuer: description: Deprecated since YBA version 2024.2.3.0.. Use certManagerIssuerKind and certManagerIssuerName instead type: string certManagerIssuer: description: Deprecated since YBA version 2024.2.3.0.. Use certManagerIssuerKind and certManagerIssuerName instead type: string certManagerIssuerGroup: type: string certManagerIssuerKind: type: string certManagerIssuerName: type: string isKubernetesOperatorControlled: readOnly: true type: boolean kubeConfig: readOnly: true type: string kubeConfigContent: type: string kubeConfigName: type: string kubeDomain: type: string kubeNamespace: type: string kubePodAddressTemplate: type: string kubernetesImagePullSecretName: type: string kubernetesImageRegistry: type: string kubernetesOperatorControlled: type: boolean kubernetesProvider: type: string kubernetesPullSecret: readOnly: true type: string kubernetesPullSecretContent: type: string kubernetesPullSecretName: type: string kubernetesServiceAccount: description: Deprecated since YBA version 2.17.3.0. kubernetes service account is not needed. type: string kubernetesStorageClass: type: string overrides: type: string required: - kubernetesOperatorControlled type: object AZCloudInfo: example: kubernetes: kubeNamespace: kubeNamespace kubernetesImagePullSecretName: kubernetesImagePullSecretName kubernetesPullSecretContent: kubernetesPullSecretContent certManagerIssuer: certManagerIssuer isKubernetesOperatorControlled: true kubernetesOperatorControlled: true kubeConfig: kubeConfig kubeDomain: kubeDomain overrides: overrides certManagerIssuerName: certManagerIssuerName kubernetesPullSecret: kubernetesPullSecret kubeConfigName: kubeConfigName certManagerIssuerKind: certManagerIssuerKind kubePodAddressTemplate: kubePodAddressTemplate kubernetesProvider: kubernetesProvider kubeConfigContent: kubeConfigContent kubernetesPullSecretName: kubernetesPullSecretName certManagerIssuerGroup: certManagerIssuerGroup kubernetesImageRegistry: kubernetesImageRegistry certManagerClusterIssuer: certManagerClusterIssuer kubernetesStorageClass: kubernetesStorageClass kubernetesServiceAccount: kubernetesServiceAccount properties: kubernetes: $ref: '#/components/schemas/KubernetesRegionInfo' type: object AvailabilityZone: description: Availability zone (AZ) for a region example: subnet: subnet id code: us-west1-a name: us-west1-a active: true details: cloudInfo: kubernetes: kubeNamespace: kubeNamespace kubernetesImagePullSecretName: kubernetesImagePullSecretName kubernetesPullSecretContent: kubernetesPullSecretContent certManagerIssuer: certManagerIssuer isKubernetesOperatorControlled: true kubernetesOperatorControlled: true kubeConfig: kubeConfig kubeDomain: kubeDomain overrides: overrides certManagerIssuerName: certManagerIssuerName kubernetesPullSecret: kubernetesPullSecret kubeConfigName: kubeConfigName certManagerIssuerKind: certManagerIssuerKind kubePodAddressTemplate: kubePodAddressTemplate kubernetesProvider: kubernetesProvider kubeConfigContent: kubeConfigContent kubernetesPullSecretName: kubernetesPullSecretName certManagerIssuerGroup: certManagerIssuerGroup kubernetesImageRegistry: kubernetesImageRegistry certManagerClusterIssuer: certManagerClusterIssuer kubernetesStorageClass: kubernetesStorageClass kubernetesServiceAccount: kubernetesServiceAccount kubeconfigPath: kubeconfigPath config: key: config uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 secondarySubnet: secondary subnet id properties: active: description: AZ status. This value is `true` for an active AZ. readOnly: true type: boolean code: description: AZ code example: us-west1-a type: string config: additionalProperties: type: string description: AZ configuration values type: object details: $ref: '#/components/schemas/AvailabilityZoneDetails' kubeconfigPath: description: Path to Kubernetes configuration file readOnly: true type: string name: description: AZ name example: us-west1-a type: string secondarySubnet: description: AZ secondary subnet example: secondary subnet id type: string subnet: description: AZ subnet example: subnet id type: string uuid: description: AZ UUID. This must be specified for existing AZs on update format: uuid type: string required: - name type: object securitySchemes: apiKeyAuth: description: API token passed as header in: header name: X-AUTH-YW-API-TOKEN type: apiKey externalDocs: description: About YugabyteDB Anywhere url: https://docs.yugabyte.com/latest/yugabyte-platform/ x-refined-from: - openapi_2.yaml - platform.swagger.json