openapi: 3.0.3 info: title: Tiger Cloud Analytics VPCs API description: 'A RESTful API for Tiger Cloud platform. ' version: 1.0.0 license: name: Proprietary url: https://www.tigerdata.com/legal/terms contact: name: Tiger Data Support url: https://www.tigerdata.com/contact servers: - url: https://console.cloud.tigerdata.com/public/api/v1 description: API server for Tiger Cloud tags: - name: VPCs description: Manage VPCs and their peering connections. paths: /projects/{project_id}/vpcs: get: operationId: getVPCs tags: - VPCs parameters: - $ref: '#/components/parameters/ProjectId' summary: List All VPCs description: Retrieves a list of all Virtual Private Clouds (VPCs). responses: '200': description: A list of VPCs. content: application/json: schema: type: array items: $ref: '#/components/schemas/VPC' 4XX: $ref: '#/components/responses/ClientError' post: operationId: createVPC tags: - VPCs parameters: - $ref: '#/components/parameters/ProjectId' summary: Create a VPC description: Creates a new Virtual Private Cloud (VPC). requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/VPCCreate' responses: '201': description: VPC created successfully. content: application/json: schema: $ref: '#/components/schemas/VPC' 4XX: $ref: '#/components/responses/ClientError' /projects/{project_id}/vpcs/{vpc_id}: get: operationId: getVPC tags: - VPCs parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/VPCId' summary: Get a VPC description: Retrieves the details of a specific VPC by its ID. responses: '200': description: VPC details. content: application/json: schema: $ref: '#/components/schemas/VPC' 4XX: $ref: '#/components/responses/ClientError' delete: operationId: deleteVPC tags: - VPCs summary: Delete a VPC description: Deletes a specific VPC. parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/VPCId' responses: '204': description: VPC deleted successfully. 4XX: $ref: '#/components/responses/ClientError' /projects/{project_id}/vpcs/{vpc_id}/rename: post: operationId: renameVPC tags: - VPCs summary: Rename a VPC description: Updates the name of a specific VPC. parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/VPCId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/VPCRename' responses: '200': description: VPC renamed successfully. content: application/json: schema: $ref: '#/components/schemas/VPC' 4XX: $ref: '#/components/responses/ClientError' /projects/{project_id}/vpcs/{vpc_id}/peerings: get: operationId: getVPCPeerings tags: - VPCs summary: List VPC Peerings description: Retrieves a list of all VPC peering connections for a given VPC. parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/VPCId' responses: '200': description: A list of VPC peering connections. content: application/json: schema: type: array items: $ref: '#/components/schemas/Peering' 4XX: $ref: '#/components/responses/ClientError' post: operationId: createVPCPeering tags: - VPCs summary: Create a VPC Peering description: Creates a new VPC peering connection. parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/VPCId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PeeringCreate' responses: '201': description: VPC peering created successfully. content: application/json: schema: $ref: '#/components/schemas/Peering' 4XX: $ref: '#/components/responses/ClientError' /projects/{project_id}/vpcs/{vpc_id}/peerings/{peering_id}: get: operationId: getVPCPeering tags: - VPCs summary: Get a VPC Peering description: Retrieves the details of a specific VPC peering connection. parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/VPCId' - $ref: '#/components/parameters/PeeringId' responses: '200': description: VPC peering details. content: application/json: schema: $ref: '#/components/schemas/Peering' 4XX: $ref: '#/components/responses/ClientError' delete: operationId: deleteVPCPeering tags: - VPCs summary: Delete a VPC Peering description: Deletes a specific VPC peering connection. parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/VPCId' - $ref: '#/components/parameters/PeeringId' responses: '204': description: VPC peering deleted successfully. 4XX: $ref: '#/components/responses/ClientError' components: schemas: VPC: type: object properties: id: type: string readOnly: true example: '1234567890' name: type: string example: my-production-vpc cidr: type: string example: 10.0.0.0/16 region_code: type: string example: us-east-1 PeeringCreate: type: object required: - peer_account_id - peer_region_code - peer_vpc_id properties: peer_account_id: type: string example: acc-12345 peer_region_code: type: string example: aws-us-east-1 peer_vpc_id: type: string example: '1234567890' VPCRename: type: object required: - name properties: name: type: string description: The new name for the VPC. example: my-renamed-vpc Peering: type: object properties: id: type: string readOnly: true example: '1234567890' peer_account_id: type: string example: acc-12345 peer_region_code: type: string example: aws-us-east-1 peer_vpc_id: type: string example: '1234567890' provisioned_id: type: string example: '1234567890' status: type: string example: active error_message: type: string example: VPC not found VPCCreate: type: object required: - name - cidr - region_code properties: name: type: string example: my-production-vpc cidr: type: string example: 10.0.0.0/16 region_code: type: string example: us-east-1 Error: type: object properties: code: type: string message: type: string parameters: PeeringId: name: peering_id in: path required: true description: The unique identifier of the VPC peering connection. schema: type: string example: '1234567890' VPCId: name: vpc_id in: path required: true description: The unique identifier of the VPC. schema: type: string example: '1234567890' ProjectId: name: project_id in: path required: true description: The unique identifier of the project. schema: type: string example: rp1pz7uyae responses: ClientError: description: Client error response (4xx status codes). content: application/json: schema: $ref: '#/components/schemas/Error'