openapi: 3.1.0 info: title: Google Cloud Spanner Databases API description: The Cloud Spanner API provides programmatic access to Google Cloud Spanner, a globally distributed, strongly consistent relational database service. It enables management of instances, databases, sessions, and execution of SQL queries and DML statements with full ACID transaction support. version: v1 contact: name: Google Cloud url: https://cloud.google.com/spanner/docs/reference/rest license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 servers: - url: https://spanner.googleapis.com/v1 description: Cloud Spanner API v1 tags: - name: Databases description: Operations on Spanner databases paths: /projects/{project}/instances/{instance}/databases: get: tags: - Databases summary: Google Cloud Spanner List databases description: Lists Cloud Spanner databases. operationId: listDatabases parameters: - name: project in: path required: true schema: type: string - name: instance in: path required: true schema: type: string - name: pageSize in: query schema: type: integer - name: pageToken in: query schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/ListDatabasesResponse' security: - oauth2: - https://www.googleapis.com/auth/cloud-platform - https://www.googleapis.com/auth/spanner.admin post: tags: - Databases summary: Google Cloud Spanner Create a database description: Creates a new Cloud Spanner database and starts preparing it to begin serving. operationId: createDatabase parameters: - name: project in: path required: true schema: type: string - name: instance in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateDatabaseRequest' responses: '200': description: Database creation initiated content: application/json: schema: $ref: '#/components/schemas/Operation' security: - oauth2: - https://www.googleapis.com/auth/cloud-platform - https://www.googleapis.com/auth/spanner.admin /projects/{project}/instances/{instance}/databases/{database}: get: tags: - Databases summary: Google Cloud Spanner Get a database description: Gets the state of a Cloud Spanner database. operationId: getDatabase parameters: - name: project in: path required: true schema: type: string - name: instance in: path required: true schema: type: string - name: database in: path required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Database' security: - oauth2: - https://www.googleapis.com/auth/cloud-platform - https://www.googleapis.com/auth/spanner.admin delete: tags: - Databases summary: Google Cloud Spanner Drop a database description: Drops (deletes) a Cloud Spanner database. operationId: dropDatabase parameters: - name: project in: path required: true schema: type: string - name: instance in: path required: true schema: type: string - name: database in: path required: true schema: type: string responses: '200': description: Database dropped successfully security: - oauth2: - https://www.googleapis.com/auth/cloud-platform - https://www.googleapis.com/auth/spanner.admin components: schemas: ListDatabasesResponse: type: object properties: databases: type: array items: $ref: '#/components/schemas/Database' nextPageToken: type: string Operation: type: object properties: name: type: string done: type: boolean metadata: type: object error: type: object properties: code: type: integer message: type: string CreateDatabaseRequest: type: object properties: createStatement: type: string extraStatements: type: array items: type: string databaseDialect: type: string required: - createStatement Database: type: object properties: name: type: string state: type: string enum: - STATE_UNSPECIFIED - CREATING - READY - READY_OPTIMIZING createTime: type: string format: date-time versionRetentionPeriod: type: string earliestVersionTime: type: string format: date-time defaultLeader: type: string databaseDialect: type: string enum: - DATABASE_DIALECT_UNSPECIFIED - GOOGLE_STANDARD_SQL - POSTGRESQL securitySchemes: oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://accounts.google.com/o/oauth2/auth tokenUrl: https://oauth2.googleapis.com/token scopes: https://www.googleapis.com/auth/cloud-platform: Full access to Cloud Platform https://www.googleapis.com/auth/spanner.admin: Administer Spanner databases https://www.googleapis.com/auth/spanner.data: View and manage Spanner data