Reference documentation and code samples for the Compute V1 Client class Snapshot.
Represents a Persistent Disk Snapshot resource. You can use snapshots to back up data on a regular interval. For more information, read Creating persistent disk snapshots.
Generated from protobuf message google.cloud.compute.v1.Snapshot
Namespace
Google \ Cloud \ Compute \ V1Methods
__construct
Constructor.
data
array
Optional. Data for populating the Message object.
↳ architecture
string
[Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64. Check the Architecture enum for the list of possible values.
↳ auto_created
bool
[Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk.
↳ chain_name
string
Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
↳ creation_size_bytes
int|string
[Output Only] Size in bytes of the snapshot at creation time.
↳ creation_timestamp
string
[Output Only] Creation timestamp in RFC3339 text format.
↳ description
string
An optional description of this resource. Provide this property when you create the resource.
↳ disk_size_gb
int|string
[Output Only] Size of the source disk, specified in GB.
↳ download_bytes
int|string
[Output Only] Number of bytes downloaded to restore a snapshot to a disk.
↳ guest_os_features
array< Google\Cloud\Compute\V1\GuestOsFeature
>
[Output Only] A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.
↳ id
int|string
[Output Only] The unique identifier for the resource. This identifier is defined by the server.
↳ kind
string
[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
↳ label_fingerprint
string
A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
↳ labels
array| Google\Protobuf\Internal\MapField
Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
↳ license_codes
array
[Output Only] Integer license codes indicating which licenses are attached to this snapshot.
↳ licenses
array
[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
↳ location_hint
string
An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
↳ name
string
Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
↳ satisfies_pzs
bool
[Output Only] Reserved for future use.
↳ self_link
string
[Output Only] Server-defined URL for the resource.
↳ snapshot_encryption_key
Google\Cloud\Compute\V1\CustomerEncryptionKey
Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
↳ snapshot_type
string
Indicates the type of the snapshot. Check the SnapshotType enum for the list of possible values.
↳ source_disk
string
The source disk used to create this snapshot.
↳ source_disk_encryption_key
Google\Cloud\Compute\V1\CustomerEncryptionKey
The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
↳ source_disk_for_recovery_checkpoint
string
The source disk whose recovery checkpoint will be used to create this snapshot.
↳ source_disk_id
string
[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
↳ source_snapshot_schedule_policy
string
[Output Only] URL of the resource policy which created this scheduled snapshot.
↳ source_snapshot_schedule_policy_id
string
[Output Only] ID of the resource policy which created this scheduled snapshot.
↳ status
string
[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING. Check the Status enum for the list of possible values.
↳ storage_bytes
int|string
[Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.
↳ storage_bytes_status
string
[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date. Check the StorageBytesStatus enum for the list of possible values.
↳ storage_locations
array
Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
getArchitecture
[Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
Check the Architecture enum for the list of possible values.
string
hasArchitecture
clearArchitecture
setArchitecture
[Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
Check the Architecture enum for the list of possible values.
var
string
$this
getAutoCreated
[Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk.
bool
hasAutoCreated
clearAutoCreated
setAutoCreated
[Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk.
var
bool
$this
getChainName
Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
string
hasChainName
clearChainName
setChainName
Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
var
string
$this
getCreationSizeBytes
[Output Only] Size in bytes of the snapshot at creation time.
int|string
hasCreationSizeBytes
clearCreationSizeBytes
setCreationSizeBytes
[Output Only] Size in bytes of the snapshot at creation time.
var
int|string
$this
getCreationTimestamp
[Output Only] Creation timestamp in RFC3339 text format.
string
hasCreationTimestamp
clearCreationTimestamp
setCreationTimestamp
[Output Only] Creation timestamp in RFC3339 text format.
var
string
$this
getDescription
An optional description of this resource. Provide this property when you create the resource.
string
hasDescription
clearDescription
setDescription
An optional description of this resource. Provide this property when you create the resource.
var
string
$this
getDiskSizeGb
[Output Only] Size of the source disk, specified in GB.
int|string
hasDiskSizeGb
clearDiskSizeGb
setDiskSizeGb
[Output Only] Size of the source disk, specified in GB.
var
int|string
$this
getDownloadBytes
[Output Only] Number of bytes downloaded to restore a snapshot to a disk.
int|string
hasDownloadBytes
clearDownloadBytes
setDownloadBytes
[Output Only] Number of bytes downloaded to restore a snapshot to a disk.
var
int|string
$this
getGuestOsFeatures
[Output Only] A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.
setGuestOsFeatures
[Output Only] A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.
$this
getId
[Output Only] The unique identifier for the resource. This identifier is defined by the server.
int|string
hasId
clearId
setId
[Output Only] The unique identifier for the resource. This identifier is defined by the server.
var
int|string
$this
getKind
[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
string
hasKind
clearKind
setKind
[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
var
string
$this
getLabelFingerprint
A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
string
hasLabelFingerprint
clearLabelFingerprint
setLabelFingerprint
A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
var
string
$this
getLabels
Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
setLabels
Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
$this
getLicenseCodes
[Output Only] Integer license codes indicating which licenses are attached to this snapshot.
setLicenseCodes
[Output Only] Integer license codes indicating which licenses are attached to this snapshot.
$this
getLicenses
[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
setLicenses
[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
var
string[]
$this
getLocationHint
An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
string
hasLocationHint
clearLocationHint
setLocationHint
An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
var
string
$this
getName
Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
string
hasName
clearName
setName
Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
var
string
$this
getSatisfiesPzs
[Output Only] Reserved for future use.
bool
hasSatisfiesPzs
clearSatisfiesPzs
setSatisfiesPzs
[Output Only] Reserved for future use.
var
bool
$this
getSelfLink
[Output Only] Server-defined URL for the resource.
string
hasSelfLink
clearSelfLink
setSelfLink
[Output Only] Server-defined URL for the resource.
var
string
$this
getSnapshotEncryptionKey
Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
hasSnapshotEncryptionKey
clearSnapshotEncryptionKey
setSnapshotEncryptionKey
Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
$this
getSnapshotType
Indicates the type of the snapshot.
Check the SnapshotType enum for the list of possible values.
string
hasSnapshotType
clearSnapshotType
setSnapshotType
Indicates the type of the snapshot.
Check the SnapshotType enum for the list of possible values.
var
string
$this
getSourceDisk
The source disk used to create this snapshot.
string
hasSourceDisk
clearSourceDisk
setSourceDisk
The source disk used to create this snapshot.
var
string
$this
getSourceDiskEncryptionKey
The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
hasSourceDiskEncryptionKey
clearSourceDiskEncryptionKey
setSourceDiskEncryptionKey
The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
$this
getSourceDiskForRecoveryCheckpoint
The source disk whose recovery checkpoint will be used to create this snapshot.
string
hasSourceDiskForRecoveryCheckpoint
clearSourceDiskForRecoveryCheckpoint
setSourceDiskForRecoveryCheckpoint
The source disk whose recovery checkpoint will be used to create this snapshot.
var
string
$this
getSourceDiskId
[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
string
hasSourceDiskId
clearSourceDiskId
setSourceDiskId
[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
var
string
$this
getSourceSnapshotSchedulePolicy
[Output Only] URL of the resource policy which created this scheduled snapshot.
string
hasSourceSnapshotSchedulePolicy
clearSourceSnapshotSchedulePolicy
setSourceSnapshotSchedulePolicy
[Output Only] URL of the resource policy which created this scheduled snapshot.
var
string
$this
getSourceSnapshotSchedulePolicyId
[Output Only] ID of the resource policy which created this scheduled snapshot.
string
hasSourceSnapshotSchedulePolicyId
clearSourceSnapshotSchedulePolicyId
setSourceSnapshotSchedulePolicyId
[Output Only] ID of the resource policy which created this scheduled snapshot.
var
string
$this
getStatus
[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
Check the Status enum for the list of possible values.
string
hasStatus
clearStatus
setStatus
[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
Check the Status enum for the list of possible values.
var
string
$this
getStorageBytes
[Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.
int|string
hasStorageBytes
clearStorageBytes
setStorageBytes
[Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.
var
int|string
$this
getStorageBytesStatus
[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
Check the StorageBytesStatus enum for the list of possible values.
string
hasStorageBytesStatus
clearStorageBytesStatus
setStorageBytesStatus
[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
Check the StorageBytesStatus enum for the list of possible values.
var
string
$this
getStorageLocations
Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
setStorageLocations
Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
var
string[]
$this