Starts creating a new Cloud Bigtable Backup. The returned backup long-running operation can be used to track creation of the backup. The metadata field type is CreateBackupMetadata. The response field type is Backup, if successful. Cancelling the returned operation will stop the creation and delete the backup.

Scopes

You will need authorization for at least one of the following scopes to make a valid call:

  • https://www.googleapis.com/auth/bigtable.admin
  • https://www.googleapis.com/auth/bigtable.admin.table
  • https://www.googleapis.com/auth/cloud-bigtable.admin
  • https://www.googleapis.com/auth/cloud-bigtable.admin.table
  • https://www.googleapis.com/auth/cloud-platform

If unset, the scope for this method defaults to https://www.googleapis.com/auth/bigtable.admin. You can set the scope for this method like this: bigtableadmin2 --scope <scope> projects instances-clusters-backups-create ...

Required Scalar Argument

  • <parent> (string)
    • Required. This must be one of the clusters in the instance in which this table is located. The backup will be stored in this cluster. Values are of the form projects/{project}/instances/{instance}/clusters/{cluster}.

Required Request Value

The request value is a data-structure with various fields. Each field may be a simple scalar or another data-structure. In the latter case it is advised to set the field-cursor to the data-structure's field to specify values more concisely.

For example, a structure like this:

Backup:
  encryption-info:
    encryption-status:
      code: integer
      message: string
    encryption-type: string
    kms-key-version: string
  end-time: string
  expire-time: string
  name: string
  size-bytes: string
  source-backup: string
  source-table: string
  start-time: string
  state: string

can be set completely with the following arguments which are assumed to be executed in the given order. Note how the cursor position is adjusted to the respective structures, allowing simple field names to be used most of the time.

  • -r .encryption-info.encryption-status code=81
    • The status code, which should be an enum value of google.rpc.Code.
  • message=ipsum

    • A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  • .. encryption-type=sed

    • Output only. The type of encryption used to protect this resource.
  • kms-key-version=ut

    • Output only. The version of the Cloud KMS key specified in the parent cluster that is in use for the data underlying this table.
  • .. end-time=gubergren

    • Output only. end_time is the time that the backup was finished. The row data in the backup will be no newer than this timestamp.
  • expire-time=rebum.
    • Required. The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 90 days from the time the request is received. Once the expire_time has passed, Cloud Bigtable will delete the backup and free the resources used by the backup.
  • name=est
    • A globally unique identifier for the backup which cannot be changed. Values are of the form projects/{project}/instances/{instance}/clusters/{cluster}/ backups/_a-zA-Z0-9* The final segment of the name must be between 1 and 50 characters in length. The backup is stored in the cluster identified by the prefix of the backup name of the form projects/{project}/instances/{instance}/clusters/{cluster}.
  • size-bytes=ipsum
    • Output only. Size of the backup in bytes.
  • source-backup=ipsum
    • Output only. Name of the backup from which this backup was copied. If a backup is not created by copying a backup, this field will be empty. Values are of the form: projects//instances//clusters//backups/
  • source-table=est
    • Required. Immutable. Name of the table from which this backup was created. This needs to be in the same instance as the backup. Values are of the form projects/{project}/instances/{instance}/tables/{source_table}.
  • start-time=gubergren
    • Output only. start_time is the time that the backup was started (i.e. approximately the time the CreateBackup request is received). The row data in this backup will be no older than this timestamp.
  • state=ea
    • Output only. The current state of the backup.

About Cursors

The cursor position is key to comfortably set complex nested structures. The following rules apply:

  • The cursor position is always set relative to the current one, unless the field name starts with the . character. Fields can be nested such as in -r f.s.o .
  • The cursor position is set relative to the top-level structure if it starts with ., e.g. -r .s.s
  • You can also set nested fields without setting the cursor explicitly. For example, to set a value relative to the current cursor position, you would specify -r struct.sub_struct=bar.
  • You can move the cursor one level up by using ... Each additional . moves it up one additional level. E.g. ... would go three levels up.

Optional Output Flags

The method's return value a JSON encoded structure, which will be written to standard output by default.

  • -o out
    • out specifies the destination to which to write the server's result to. It will be a JSON-encoded structure. The destination may be - to indicate standard output, or a filepath that is to contain the received bytes. If unset, it defaults to standard output.

Optional Method Properties

You may set the following properties to further configure the call. Please note that -p is followed by one or more key-value-pairs, and is called like this -p k1=v1 k2=v2 even though the listing below repeats the -p for completeness.

  • -p backup-id=string
    • Required. The id of the backup to be created. The backup_id along with the parent parent are combined as {parent}/backups/{backup_id} to create the full backup name, of the form: projects/{project}/instances/{instance}/clusters/{cluster}/backups/{backup_id}. This string must be between 1 and 50 characters in length and match the regex _a-zA-Z0-9*.

Optional General Properties

The following properties can configure any call, and are not specific to this method.

  • -p $-xgafv=string

    • V1 error format.
  • -p access-token=string

    • OAuth access token.
  • -p alt=string

    • Data format for response.
  • -p callback=string

    • JSONP
  • -p fields=string

    • Selector specifying which fields to include in a partial response.
  • -p key=string

    • API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
  • -p oauth-token=string

    • OAuth 2.0 token for the current user.
  • -p pretty-print=boolean

    • Returns response with indentations and line breaks.
  • -p quota-user=string

    • Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
  • -p upload-type=string

    • Legacy upload protocol for media (e.g. "media", "multipart").
  • -p upload-protocol=string

    • Upload protocol for media (e.g. "raw", "multipart").