# Cloud SQL Admin API . backupRuns

## Instance Methods

Deletes the backup taken by a backup run.

Retrieves a resource containing information about a backup run.

Creates a new backup run on demand. This method is applicable only to

Lists all backup runs associated with a given instance and configuration in

Retrieves the next page of results.

### Method Details

`delete(project, instance, id, x__xgafv=None)`

    Deletes the backup taken by a backup run.

    Args:
      project: string, Project ID of the project that contains the instance. (required)
      instance: string, Cloud SQL instance ID. This does not include the project ID. (required)
      id: string, The ID of the Backup Run to delete. To find a Backup Run ID, use the <a
    href="/sql/docs/db_path/admin-api/rest/v1beta4/backupRuns/list">list</a>
    method. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # An Operation resource.&nbsp;For successful operations that return an
          # Operation resource, only the fields relevant to the operation are populated
          # in the resource.
        "name": "A String", # An identifier that uniquely identifies the operation. You can use this
            # identifier to retrieve the Operations resource that has information about
            # the operation.
        "exportContext": { # Database instance export context. # The context for export operation, if applicable.
          "kind": "A String", # This is always <code>sql#exportContext</code>.
          "databases": [ # Databases to be exported. <br /> <b>MySQL instances:</b> If
              # <code>fileType</code> is <code>SQL</code> and no database is specified, all
              # databases are exported, except for the <code>mysql</code> system database.
              # If <code>fileType</code> is <code>CSV</code>, you can specify one database,
              # either by using this property or by using the
              # <code>csvExportOptions.selectQuery</code> property, which takes precedence
              # over this property. <br /> <b>PostgreSQL instances:</b> You must specify
              # one database to be exported. If <code>fileType</code> is <code>CSV</code>,
              # this database must match the one specified in the
              # <code>csvExportOptions.selectQuery</code> property.
            "A String",
          ],
          "sqlExportOptions": { # Options for exporting data as SQL statements.
            "schemaOnly": True or False, # Export only schemas.
            "mysqlExportOptions": { # Options for exporting from MySQL.
              "masterData": 42, # Option to include SQL statement required to set up replication.
                  # If set to <code>1</code>, the dump file includes
                  #  a CHANGE MASTER TO statement with the binary log coordinates.
                  # If set to <code>2</code>, the CHANGE MASTER TO statement is written as
                  #  a SQL comment, and has no effect.
                  # All other values are ignored.
            },
            "tables": [ # Tables to export, or that were exported, from the specified database. If
                # you specify tables, specify one and only one database. For PostgreSQL
                # instances, you can specify only one table.
              "A String",
            ],
          },
          "fileType": "A String", # The file type for the specified uri. <br><code>SQL</code>: The file
              # contains SQL statements. <br><code>CSV</code>: The file contains CSV data.
          "uri": "A String", # The path to the file in Google Cloud Storage where the export will be
              # stored. The URI is in the form <code>gs:
              # //bucketName/fileName</code>. If the file already exists, the requests
              # // succeeds, but the operation fails. If <code>fileType</code> is
              # // <code>SQL</code> and the filename ends with .gz, the contents are
              # // compressed.
          "csvExportOptions": { # Options for exporting data as CSV.
            "selectQuery": "A String", # The select query used to extract the data.
          },
        },
        "targetId": "A String", # Name of the database instance related to this operation.
        "endTime": "A String", # The time this operation finished in UTC timezone in <a
            # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
            # <code>2012-11-15T16:19:00.094Z</code>.
        "startTime": "A String", # The time this operation actually started in UTC timezone in <a
            # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
            # <code>2012-11-15T16:19:00.094Z</code>.
        "insertTime": "A String", # The time this operation was enqueued in UTC timezone in <a
            # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
            # <code>2012-11-15T16:19:00.094Z</code>.
        "user": "A String", # The email address of the user who initiated this operation.
        "targetProject": "A String", # The project ID of the target instance related to this operation.
        "selfLink": "A String", # The URI of this resource.
        "targetLink": "A String",
        "operationType": "A String", # The type of the operation. Valid values are <code>CREATE</code>,
            # <code>DELETE</code>, <code>UPDATE</code>, <code>RESTART</code>,
            # <code>IMPORT</code>, <code>EXPORT</code>, <code>BACKUP_VOLUME</code>,
            # <code>RESTORE_VOLUME</code>, <code>CREATE_USER</code>,
            # <code>DELETE_USER</code>, <code>CREATE_DATABASE</code>,
            # <code>DELETE_DATABASE</code> .
        "error": { # Database instance operation errors list wrapper. # If errors occurred during processing of this operation, this field will be
            # populated.
          "errors": [ # The list of errors encountered while processing this operation.
            { # Database instance operation error.
              "kind": "A String", # This is always <code>sql#operationError</code>.
              "code": "A String", # Identifies the specific error that occurred.
              "message": "A String", # Additional information about the error encountered.
            },
          ],
          "kind": "A String", # This is always <code>sql#operationErrors</code>.
        },
        "kind": "A String", # This is always <code>sql#operation</code>.
        "importContext": { # Database instance import context. # The context for import operation, if applicable.
          "kind": "A String", # This is always <code>sql#importContext</code>.
          "csvImportOptions": { # Options for importing data as CSV.
            "columns": [ # The columns to which CSV data is imported. If not specified, all columns
                # of the database table are loaded with CSV data.
              "A String",
            ],
            "table": "A String", # The table to which CSV data is imported.
          },
          "database": "A String", # The target database for the import. If <code>fileType</code> is
              # <code>SQL</code>, this field is required only if the import file does not
              # specify a database, and is overridden by any database specification in the
              # import file. If <code>fileType</code> is <code>CSV</code>, one database
              # must be specified.
          "importUser": "A String", # The PostgreSQL user for this import operation. PostgreSQL instances only.
          "bakImportOptions": { # Import parameters specific to SQL Server .BAK files
            "encryptionOptions": {
              "pvkPassword": "A String", # Password that encrypts the private key
              "certPath": "A String", # Path to the Certificate (.cer) in Cloud Storage, in the form
                  # <code>gs://bucketName/fileName</code>. The instance must have
                  # write permissions to the bucket and read access to the file.
              "pvkPath": "A String", # Path to the Certificate Private Key (.pvk)  in Cloud Storage, in the
                  # form <code>gs://bucketName/fileName</code>. The instance must have
                  # write permissions to the bucket and read access to the file.
            },
          },
          "uri": "A String", # Path to the import file in Cloud Storage, in the form
              # <code>gs:
              # //bucketName/fileName</code>. Compressed gzip files (.gz) are supported
              # // when <code>fileType</code> is <code>SQL</code>. The instance must have
              # // write permissions to the bucket and read access to the file.
          "fileType": "A String", # The file type for the specified uri. <br><code>SQL</code>: The file
              # contains SQL statements. <br><code>CSV</code>: The file contains CSV data.
        },
        "status": "A String", # The status of an operation. Valid values are <code>PENDING</code>,
            # <code>RUNNING</code>, <code>DONE</code>,
            # <code>SQL_OPERATION_STATUS_UNSPECIFIED</code>.
      }

`get(project, instance, id, x__xgafv=None)`

    Retrieves a resource containing information about a backup run.

    Args:
      project: string, Project ID of the project that contains the instance. (required)
      instance: string, Cloud SQL instance ID. This does not include the project ID. (required)
      id: string, The ID of this Backup Run. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A BackupRun resource.
          "instance": "A String", # Name of the database instance.
          "type": "A String", # The type of this run; can be either "AUTOMATED" or "ON_DEMAND".
          "windowStartTime": "A String", # The start time of the backup window during which this the backup was
              # attempted in <a href="https://tools.ietf.org/html/rfc3339">RFC 3339</a>
              # format, for example <code>2012-11-15T16:19:00.094Z</code>.
          "selfLink": "A String", # The URI of this resource.
          "diskEncryptionStatus": { # Disk encryption status for an instance. # Encryption status specific to a backup.
              # Applies only to Second Generation instances.
            "kmsKeyVersionName": "A String", # KMS key version used to encrypt the Cloud SQL instance resource
            "kind": "A String", # This is always <code>sql#diskEncryptionStatus</code>.
          },
          "kind": "A String", # This is always <code>sql#backupRun</code>.
          "error": { # Database instance operation error. # Information about why the backup operation failed. This is only present if
              # the run has the FAILED status.
            "kind": "A String", # This is always <code>sql#operationError</code>.
            "code": "A String", # Identifies the specific error that occurred.
            "message": "A String", # Additional information about the error encountered.
          },
          "description": "A String", # The description of this run, only applicable to on-demand backups.
          "diskEncryptionConfiguration": { # Disk encryption configuration for an instance. # Encryption configuration specific to a backup.
              # Applies only to Second Generation instances.
            "kmsKeyName": "A String", # Resource name of KMS key for disk encryption
            "kind": "A String", # This is always <code>sql#diskEncryptionConfiguration</code>.
          },
          "status": "A String", # The status of this run.
          "enqueuedTime": "A String", # The time the run was enqueued in UTC timezone in <a
              # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
              # <code>2012-11-15T16:19:00.094Z</code>.
          "id": "A String", # The identifier for this backup run. Unique only for a specific Cloud SQL
              # instance.
          "endTime": "A String", # The time the backup operation completed in UTC timezone in <a
              # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
              # <code>2012-11-15T16:19:00.094Z</code>.
          "location": "A String", # Location of the backups.
          "startTime": "A String", # The time the backup operation actually started in UTC timezone in <a
              # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
              # <code>2012-11-15T16:19:00.094Z</code>.
        }

`insert(project, instance, body=None, x__xgafv=None)`

    Creates a new backup run on demand. This method is applicable only to
    Second Generation instances.

    Args:
      project: string, Project ID of the project that contains the instance. (required)
      instance: string, Cloud SQL instance ID. This does not include the project ID. (required)
      body: object, The request body.
        The object takes the form of:

    { # A BackupRun resource.
        "instance": "A String", # Name of the database instance.
        "type": "A String", # The type of this run; can be either "AUTOMATED" or "ON_DEMAND".
        "windowStartTime": "A String", # The start time of the backup window during which this the backup was
            # attempted in <a href="https://tools.ietf.org/html/rfc3339">RFC 3339</a>
            # format, for example <code>2012-11-15T16:19:00.094Z</code>.
        "selfLink": "A String", # The URI of this resource.
        "diskEncryptionStatus": { # Disk encryption status for an instance. # Encryption status specific to a backup.
            # Applies only to Second Generation instances.
          "kmsKeyVersionName": "A String", # KMS key version used to encrypt the Cloud SQL instance resource
          "kind": "A String", # This is always <code>sql#diskEncryptionStatus</code>.
        },
        "kind": "A String", # This is always <code>sql#backupRun</code>.
        "error": { # Database instance operation error. # Information about why the backup operation failed. This is only present if
            # the run has the FAILED status.
          "kind": "A String", # This is always <code>sql#operationError</code>.
          "code": "A String", # Identifies the specific error that occurred.
          "message": "A String", # Additional information about the error encountered.
        },
        "description": "A String", # The description of this run, only applicable to on-demand backups.
        "diskEncryptionConfiguration": { # Disk encryption configuration for an instance. # Encryption configuration specific to a backup.
            # Applies only to Second Generation instances.
          "kmsKeyName": "A String", # Resource name of KMS key for disk encryption
          "kind": "A String", # This is always <code>sql#diskEncryptionConfiguration</code>.
        },
        "status": "A String", # The status of this run.
        "enqueuedTime": "A String", # The time the run was enqueued in UTC timezone in <a
            # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
            # <code>2012-11-15T16:19:00.094Z</code>.
        "id": "A String", # The identifier for this backup run. Unique only for a specific Cloud SQL
            # instance.
        "endTime": "A String", # The time the backup operation completed in UTC timezone in <a
            # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
            # <code>2012-11-15T16:19:00.094Z</code>.
        "location": "A String", # Location of the backups.
        "startTime": "A String", # The time the backup operation actually started in UTC timezone in <a
            # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
            # <code>2012-11-15T16:19:00.094Z</code>.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # An Operation resource.&nbsp;For successful operations that return an
          # Operation resource, only the fields relevant to the operation are populated
          # in the resource.
        "name": "A String", # An identifier that uniquely identifies the operation. You can use this
            # identifier to retrieve the Operations resource that has information about
            # the operation.
        "exportContext": { # Database instance export context. # The context for export operation, if applicable.
          "kind": "A String", # This is always <code>sql#exportContext</code>.
          "databases": [ # Databases to be exported. <br /> <b>MySQL instances:</b> If
              # <code>fileType</code> is <code>SQL</code> and no database is specified, all
              # databases are exported, except for the <code>mysql</code> system database.
              # If <code>fileType</code> is <code>CSV</code>, you can specify one database,
              # either by using this property or by using the
              # <code>csvExportOptions.selectQuery</code> property, which takes precedence
              # over this property. <br /> <b>PostgreSQL instances:</b> You must specify
              # one database to be exported. If <code>fileType</code> is <code>CSV</code>,
              # this database must match the one specified in the
              # <code>csvExportOptions.selectQuery</code> property.
            "A String",
          ],
          "sqlExportOptions": { # Options for exporting data as SQL statements.
            "schemaOnly": True or False, # Export only schemas.
            "mysqlExportOptions": { # Options for exporting from MySQL.
              "masterData": 42, # Option to include SQL statement required to set up replication.
                  # If set to <code>1</code>, the dump file includes
                  #  a CHANGE MASTER TO statement with the binary log coordinates.
                  # If set to <code>2</code>, the CHANGE MASTER TO statement is written as
                  #  a SQL comment, and has no effect.
                  # All other values are ignored.
            },
            "tables": [ # Tables to export, or that were exported, from the specified database. If
                # you specify tables, specify one and only one database. For PostgreSQL
                # instances, you can specify only one table.
              "A String",
            ],
          },
          "fileType": "A String", # The file type for the specified uri. <br><code>SQL</code>: The file
              # contains SQL statements. <br><code>CSV</code>: The file contains CSV data.
          "uri": "A String", # The path to the file in Google Cloud Storage where the export will be
              # stored. The URI is in the form <code>gs:
              # //bucketName/fileName</code>. If the file already exists, the requests
              # // succeeds, but the operation fails. If <code>fileType</code> is
              # // <code>SQL</code> and the filename ends with .gz, the contents are
              # // compressed.
          "csvExportOptions": { # Options for exporting data as CSV.
            "selectQuery": "A String", # The select query used to extract the data.
          },
        },
        "targetId": "A String", # Name of the database instance related to this operation.
        "endTime": "A String", # The time this operation finished in UTC timezone in <a
            # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
            # <code>2012-11-15T16:19:00.094Z</code>.
        "startTime": "A String", # The time this operation actually started in UTC timezone in <a
            # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
            # <code>2012-11-15T16:19:00.094Z</code>.
        "insertTime": "A String", # The time this operation was enqueued in UTC timezone in <a
            # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
            # <code>2012-11-15T16:19:00.094Z</code>.
        "user": "A String", # The email address of the user who initiated this operation.
        "targetProject": "A String", # The project ID of the target instance related to this operation.
        "selfLink": "A String", # The URI of this resource.
        "targetLink": "A String",
        "operationType": "A String", # The type of the operation. Valid values are <code>CREATE</code>,
            # <code>DELETE</code>, <code>UPDATE</code>, <code>RESTART</code>,
            # <code>IMPORT</code>, <code>EXPORT</code>, <code>BACKUP_VOLUME</code>,
            # <code>RESTORE_VOLUME</code>, <code>CREATE_USER</code>,
            # <code>DELETE_USER</code>, <code>CREATE_DATABASE</code>,
            # <code>DELETE_DATABASE</code> .
        "error": { # Database instance operation errors list wrapper. # If errors occurred during processing of this operation, this field will be
            # populated.
          "errors": [ # The list of errors encountered while processing this operation.
            { # Database instance operation error.
              "kind": "A String", # This is always <code>sql#operationError</code>.
              "code": "A String", # Identifies the specific error that occurred.
              "message": "A String", # Additional information about the error encountered.
            },
          ],
          "kind": "A String", # This is always <code>sql#operationErrors</code>.
        },
        "kind": "A String", # This is always <code>sql#operation</code>.
        "importContext": { # Database instance import context. # The context for import operation, if applicable.
          "kind": "A String", # This is always <code>sql#importContext</code>.
          "csvImportOptions": { # Options for importing data as CSV.
            "columns": [ # The columns to which CSV data is imported. If not specified, all columns
                # of the database table are loaded with CSV data.
              "A String",
            ],
            "table": "A String", # The table to which CSV data is imported.
          },
          "database": "A String", # The target database for the import. If <code>fileType</code> is
              # <code>SQL</code>, this field is required only if the import file does not
              # specify a database, and is overridden by any database specification in the
              # import file. If <code>fileType</code> is <code>CSV</code>, one database
              # must be specified.
          "importUser": "A String", # The PostgreSQL user for this import operation. PostgreSQL instances only.
          "bakImportOptions": { # Import parameters specific to SQL Server .BAK files
            "encryptionOptions": {
              "pvkPassword": "A String", # Password that encrypts the private key
              "certPath": "A String", # Path to the Certificate (.cer) in Cloud Storage, in the form
                  # <code>gs://bucketName/fileName</code>. The instance must have
                  # write permissions to the bucket and read access to the file.
              "pvkPath": "A String", # Path to the Certificate Private Key (.pvk)  in Cloud Storage, in the
                  # form <code>gs://bucketName/fileName</code>. The instance must have
                  # write permissions to the bucket and read access to the file.
            },
          },
          "uri": "A String", # Path to the import file in Cloud Storage, in the form
              # <code>gs:
              # //bucketName/fileName</code>. Compressed gzip files (.gz) are supported
              # // when <code>fileType</code> is <code>SQL</code>. The instance must have
              # // write permissions to the bucket and read access to the file.
          "fileType": "A String", # The file type for the specified uri. <br><code>SQL</code>: The file
              # contains SQL statements. <br><code>CSV</code>: The file contains CSV data.
        },
        "status": "A String", # The status of an operation. Valid values are <code>PENDING</code>,
            # <code>RUNNING</code>, <code>DONE</code>,
            # <code>SQL_OPERATION_STATUS_UNSPECIFIED</code>.
      }

`list(project, instance, maxResults=None, pageToken=None, x__xgafv=None)`

    Lists all backup runs associated with a given instance and configuration in
    the reverse chronological order of the backup initiation time.

    Args:
      project: string, Project ID of the project that contains the instance. (required)
      instance: string, Cloud SQL instance ID. This does not include the project ID. (required)
      maxResults: integer, Maximum number of backup runs per response.
      pageToken: string, A previously-returned page token representing part of the larger set of
    results to view.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Backup run list results.
        "nextPageToken": "A String", # The continuation token, used to page through large result sets. Provide
            # this value in a subsequent request to return the next page of results.
        "kind": "A String", # This is always <code>sql#backupRunsList</code>.
        "items": [ # A list of backup runs in reverse chronological order of the enqueued time.
          { # A BackupRun resource.
              "instance": "A String", # Name of the database instance.
              "type": "A String", # The type of this run; can be either "AUTOMATED" or "ON_DEMAND".
              "windowStartTime": "A String", # The start time of the backup window during which this the backup was
                  # attempted in <a href="https://tools.ietf.org/html/rfc3339">RFC 3339</a>
                  # format, for example <code>2012-11-15T16:19:00.094Z</code>.
              "selfLink": "A String", # The URI of this resource.
              "diskEncryptionStatus": { # Disk encryption status for an instance. # Encryption status specific to a backup.
                  # Applies only to Second Generation instances.
                "kmsKeyVersionName": "A String", # KMS key version used to encrypt the Cloud SQL instance resource
                "kind": "A String", # This is always <code>sql#diskEncryptionStatus</code>.
              },
              "kind": "A String", # This is always <code>sql#backupRun</code>.
              "error": { # Database instance operation error. # Information about why the backup operation failed. This is only present if
                  # the run has the FAILED status.
                "kind": "A String", # This is always <code>sql#operationError</code>.
                "code": "A String", # Identifies the specific error that occurred.
                "message": "A String", # Additional information about the error encountered.
              },
              "description": "A String", # The description of this run, only applicable to on-demand backups.
              "diskEncryptionConfiguration": { # Disk encryption configuration for an instance. # Encryption configuration specific to a backup.
                  # Applies only to Second Generation instances.
                "kmsKeyName": "A String", # Resource name of KMS key for disk encryption
                "kind": "A String", # This is always <code>sql#diskEncryptionConfiguration</code>.
              },
              "status": "A String", # The status of this run.
              "enqueuedTime": "A String", # The time the run was enqueued in UTC timezone in <a
                  # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
                  # <code>2012-11-15T16:19:00.094Z</code>.
              "id": "A String", # The identifier for this backup run. Unique only for a specific Cloud SQL
                  # instance.
              "endTime": "A String", # The time the backup operation completed in UTC timezone in <a
                  # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
                  # <code>2012-11-15T16:19:00.094Z</code>.
              "location": "A String", # Location of the backups.
              "startTime": "A String", # The time the backup operation actually started in UTC timezone in <a
                  # href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for example
                  # <code>2012-11-15T16:19:00.094Z</code>.
            },
        ],
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.