openapi: 3.0.0 info: description: Use this REST API to manage your DataStax Astra DB organizations and perform lifecycle actions for your Astra DB databases.

To get started, use the /v2/clientIdSecrets endpoints to create a token to authenticate your API calls. version: 2.3.0 title: Astra DevOps Access List VPC Peering API contact: email: ad-astra@datastax.com servers: - url: https://api.astra.datastax.com/ security: - BearerAuth: - org-admin - org-db-create - org-db-terminate - org-db-view - org-db-expand - org-db-suspend - org-db-addpeering - org-db-readpeering - db-keyspace-create - db-cql - accesslist-write - accesslist-read - db-manage-privateendpoint - db-manage-telemetry - db-manage-backupconfiguration tags: - name: VPC Peering description: Use the DevOps VPC Peering APIs to manage VPC peering for Managed Cluster (Classic) databases. paths: /v2/peering/provider/{provider}/database/{databaseID}: get: tags: - VPC Peering summary: Retrieves VPC peering connection information for an Astra database in a given cloud provider description: Retrieves VPC peering connection details (if any exist) for Astra database operationId: GetVPCPeeringConnectionDetails security: - BearerAuth: - org-db-readpeering - org-db-addpeering parameters: - in: path name: provider description: The name of the provider, such as 'aws', 'azure' or 'gcp' required: true schema: type: string enum: - aws - azure - gcp - in: path name: databaseID description: The ID for the database required: true schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/VPCConnection' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/ServerError' post: tags: - VPC Peering summary: Creates a VPC peering connection description: Creates a VPC peering connection between an Astra database's VPC and the VPC provided operationId: CreateVPCPeeringConnection security: - BearerAuth: - org-db-addpeering parameters: - in: path name: provider description: The name of the provider, such as 'aws', 'azure' or 'gcp' required: true schema: type: string enum: - aws - azure - gcp - in: path name: databaseID description: The ID for the database required: true schema: type: string requestBody: content: application/json: schema: oneOf: - $ref: '#/components/schemas/AzureVPC' - $ref: '#/components/schemas/AmazonVPC' - $ref: '#/components/schemas/GoogleVPC' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/VPCConnection' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/ServerError' delete: tags: - VPC Peering summary: Deletes an existing VPC peering connection description: Deletes a VPC peering connection for an Astra database on the given cloud provider operationId: DeleteVPCPeeringConnection security: - BearerAuth: - org-db-addpeering parameters: - in: path name: provider description: The name of the provider, such as 'aws', 'azure' or 'gcp' required: true schema: type: string enum: - aws - azure - gcp - in: path name: databaseID description: The ID for the database required: true schema: type: string responses: '204': $ref: '#/components/responses/NoContent' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/ServerError' components: responses: ServerError: description: A server error occurred content: application/json: schema: $ref: '#/components/schemas/Errors' Unauthorized: description: The user is unauthorized to perform the operation content: application/json: schema: $ref: '#/components/schemas/Errors' Forbidden: description: The user is forbidden to perform the operation content: application/json: schema: $ref: '#/components/schemas/Errors' NotFound: description: The specified database was not found content: application/json: schema: $ref: '#/components/schemas/Errors' NoContent: description: The request succeeded and no content is returned in response body schemas: AzureVPC: description: Details about an Azure virtual private cloud type: object required: - tenantId - subscriptionId - resourceGroupName - virtualNetworkName properties: tenantId: type: string description: ID of the Azure tenant the subscription resides in subscriptionId: type: string description: ID of the subscription the resource group and virtual network reside in resourceGroupName: type: string description: Name of the Resource Group the virtual network resides in virtualNetworkName: type: string description: Name of the Virtual Network the peering is connecting to GoogleVPC: description: Details about a GCP virtual private cloud type: object required: - projectId - vpcNetworkName properties: projectId: type: string description: ID of the GPC project the VPC belongs to vpcNetworkName: type: string description: Unique identifier for the VPC VPCConnection: description: A VPC peering connection with an Astra database type: object required: - connectionId - status - currentVpc - otherVpc properties: connectionId: type: string description: A unique identifier for the peering connection status: type: string description: The current status of the connection currentVpc: description: Details about the VPC where the Astra database is running $ref: '#/components/schemas/VPC' otherVpc: description: Details about the VPC peered to the Astra database's VPC $ref: '#/components/schemas/VPC' Error: description: ModelError information that is returned to users type: object required: - id - message properties: ID: type: integer example: 123 description: API specific error code message: type: string example: Something is broken description: User-friendly description of error AmazonVPC: description: Details about an AWS virtual private cloud type: object required: - accountId - vpcId - region - cidrBlock properties: accountId: type: string description: ID of the AWS account the VPC belongs to pattern: ^\d{12}$ example: 123456780000 vpcId: type: string description: Unique identifier for the VPC pattern: ^(vpc-)([a-z0-9]{8}|[a-z0-9]{17})$ example: vpc-00001111aa332244c region: type: string description: AWS region the VPC resides in cidrBlock: type: string description: The CIDR block available for this VPC pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ example: 137.187.23.0/24 Errors: description: Errors is a collection of individual Error objects type: object required: - errors properties: errors: type: array items: $ref: '#/components/schemas/Error' VPC: description: Details about a virtual private cloud type: object required: - provider - account - vpcId - cidrBlock properties: provider: type: string example: aws description: Cloud provider the VPC is hosted on account: type: string description: Account (AWS), Project (GCP) or Subscription (Azure) the VPC belongs to vpcId: type: string description: The VPC's unique identifier cidrBlock: type: string description: The CIDR block available for this VPC pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ example: 137.187.23.0/24 securitySchemes: BearerAuth: description: An application token must be passed in header in order to access the API. https://docs.datastax.com/en/astra-db-serverless/administration/manage-application-tokens.html type: http scheme: bearer