openapi: 3.1.0 info: title: Google Cloud Compute Engine Disks API description: 'REST API for managing virtual machines, disks, networking, load balancing, and related Compute Engine resources on Google Cloud Platform. This spec covers a representative subset of v1 resources. Full canonical machine spec is the Google Discovery Document at https://compute.googleapis.com/$discovery/rest?version=v1. ' version: v1 contact: name: Google Cloud Compute Engine Documentation url: https://cloud.google.com/compute/docs/reference/rest/v1 servers: - url: https://compute.googleapis.com/compute/v1 description: Production security: - oauth2: - https://www.googleapis.com/auth/compute - https://www.googleapis.com/auth/cloud-platform - bearerAuth: [] tags: - name: Disks description: Persistent disks paths: /projects/{project}/zones/{zone}/disks: parameters: - $ref: '#/components/parameters/Project' - $ref: '#/components/parameters/Zone' get: tags: - Disks summary: List disks operationId: listDisks parameters: - $ref: '#/components/parameters/Filter' - $ref: '#/components/parameters/MaxResults' - $ref: '#/components/parameters/PageToken' responses: '200': description: Disk list content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/Disk' nextPageToken: type: string post: tags: - Disks summary: Create a disk operationId: insertDisk requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Disk' responses: '200': description: Operation content: application/json: schema: $ref: '#/components/schemas/Operation' /projects/{project}/zones/{zone}/disks/{disk}: parameters: - $ref: '#/components/parameters/Project' - $ref: '#/components/parameters/Zone' - name: disk in: path required: true schema: type: string get: tags: - Disks summary: Get a disk operationId: getDisk responses: '200': description: Disk content: application/json: schema: $ref: '#/components/schemas/Disk' delete: tags: - Disks summary: Delete a disk operationId: deleteDisk responses: '200': description: Operation content: application/json: schema: $ref: '#/components/schemas/Operation' components: parameters: PageToken: name: pageToken in: query schema: type: string MaxResults: name: maxResults in: query schema: type: integer default: 500 Project: name: project in: path required: true description: Project ID schema: type: string Zone: name: zone in: path required: true description: Zone name (e.g. us-central1-a) schema: type: string Filter: name: filter in: query schema: type: string schemas: Disk: type: object properties: id: type: string name: type: string sizeGb: type: string type: type: string zone: type: string sourceImage: type: string status: type: string Operation: type: object properties: id: type: string name: type: string operationType: type: string targetLink: type: string status: type: string enum: - PENDING - RUNNING - DONE progress: type: integer startTime: type: string format: date-time endTime: type: string format: date-time error: type: object securitySchemes: oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://accounts.google.com/o/oauth2/v2/auth tokenUrl: https://oauth2.googleapis.com/token scopes: https://www.googleapis.com/auth/compute: Manage Compute Engine resources https://www.googleapis.com/auth/cloud-platform: View and manage all Google Cloud resources bearerAuth: type: http scheme: bearer bearerFormat: JWT