Types overview

Bucket

A bucket.
Fields
acl[]

object (BucketAccessControl)

Access controls on the bucket.

autoclass

object

The bucket's Autoclass configuration.

autoclass.enabled

boolean

Whether or not Autoclass is enabled on this bucket

autoclass.toggleTime

string (date-time format)

A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.

billing

object

The bucket's billing configuration.

billing.requesterPays

boolean

When set to true, Requester Pays is enabled for this bucket.

cors[]

object

The bucket's Cross-Origin Resource Sharing (CORS) configuration.

cors.maxAgeSeconds

integer (int32 format)

The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.

cors.method[]

string

The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".

cors.origin[]

string

The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".

cors.responseHeader[]

string

The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.

customPlacementConfig

object

The bucket's custom placement configuration for Custom Dual Regions.

customPlacementConfig.dataLocations[]

string

The list of regional locations in which data is placed.

defaultEventBasedHold

boolean

The default value for event-based hold on newly created objects in this bucket. Event-based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here, bucket-level retention is 3 years and the event is loan being paid in full. In this example, these objects will be held intact for any number of years until the event has occurred (event-based hold on the object is released) and then 3 more years after that. That means retention duration of the objects begins from the moment event-based hold transitioned from true to false. Objects under event-based hold cannot be deleted, overwritten or archived until the hold is removed.

defaultObjectAcl[]

object (ObjectAccessControl)

Default access controls to apply to new objects when no ACL is provided.

encryption

object

Encryption configuration for a bucket.

encryption.defaultKmsKeyName

string

A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.

etag

string

HTTP 1.1 Entity tag for the bucket.

iamConfiguration

object

The bucket's IAM configuration.

iamConfiguration.bucketPolicyOnly

object

The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.

iamConfiguration.bucketPolicyOnly.enabled

boolean

If set, access is controlled only by bucket-level or above IAM policies.

iamConfiguration.bucketPolicyOnly.lockedTime

string (date-time format)

The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.

iamConfiguration.publicAccessPrevention

string

The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.

iamConfiguration.uniformBucketLevelAccess

object

The bucket's uniform bucket-level access configuration.

iamConfiguration.uniformBucketLevelAccess.enabled

boolean

If set, access is controlled only by bucket-level or above IAM policies.

iamConfiguration.uniformBucketLevelAccess.lockedTime

string (date-time format)

The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.

id

string

The ID of the bucket. For buckets, the id and name properties are the same.

kind

string

The kind of item this is. For buckets, this is always storage#bucket.

labels

map (key: string, value: string)

User-provided labels, in key/value pairs.

lifecycle

object

The bucket's lifecycle configuration. See lifecycle management for more information.

lifecycle.rule[]

object

A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.

lifecycle.rule.action

object

The action to take.

lifecycle.rule.action.storageClass

string

Target storage class. Required iff the type of the action is SetStorageClass.

lifecycle.rule.action.type

string

Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.

lifecycle.rule.condition

object

The condition(s) under which the action will be taken.

lifecycle.rule.condition.age

integer (int32 format)

Age of an object (in days). This condition is satisfied when an object reaches the specified age.

lifecycle.rule.condition.createdBefore

string (date format)

A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.

lifecycle.rule.condition.customTimeBefore

string (date format)

A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.

lifecycle.rule.condition.daysSinceCustomTime

integer (int32 format)

Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.

lifecycle.rule.condition.daysSinceNoncurrentTime

integer (int32 format)

Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.

lifecycle.rule.condition.isLive

boolean

Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.

lifecycle.rule.condition.matchesPattern

string

A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.

lifecycle.rule.condition.matchesPrefix[]

string

List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.

lifecycle.rule.condition.matchesStorageClass[]

string

Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.

lifecycle.rule.condition.matchesSuffix[]

string

List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.

lifecycle.rule.condition.noncurrentTimeBefore

string (date format)

A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.

lifecycle.rule.condition.numNewerVersions

integer (int32 format)

Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.

location

string

The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list.

locationType

string

The type of the bucket location.

logging

object

The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.

logging.logBucket

string

The destination bucket where the current bucket's logs should be placed.

logging.logObjectPrefix

string

A prefix for log object names.

metageneration

string (int64 format)

The metadata generation of this bucket.

name

string

The name of the bucket.

owner

object

The owner of the bucket. This is always the project team's owner group.

owner.entity

string

The entity, in the form project-owner-projectId.

owner.entityId

string

The ID for the entity.

projectNumber

string (uint64 format)

The project number of the project the bucket belongs to.

retentionPolicy

object

The bucket's retention policy. The retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via a storage.buckets.update operation. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.

retentionPolicy.effectiveTime

string (date-time format)

Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.

retentionPolicy.isLocked

boolean

Once locked, an object retention policy cannot be modified.

retentionPolicy.retentionPeriod

string (int64 format)

The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.

rpo

string

The Recovery Point Objective (RPO) of this bucket. Set to ASYNC_TURBO to turn on Turbo Replication on a bucket.

satisfiesPZS

boolean

Reserved for future use.

selfLink

string

The URI of this bucket.

storageClass

string

The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes.

timeCreated

string (date-time format)

The creation time of the bucket in RFC 3339 format.

updated

string (date-time format)

The modification time of the bucket in RFC 3339 format.

versioning

object

The bucket's versioning configuration.

versioning.enabled

boolean

While set to true, versioning is fully enabled for this bucket.

website

object

The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information.

website.mainPageSuffix

string

If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.

website.notFoundPage

string

If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.

BucketAccessControl

An access-control entry.
Fields
bucket

string

The name of the bucket.

domain

string

The domain associated with the entity, if any.

email

string

The email address associated with the entity, if any.

entity

string

The entity holding the permission, in one of the following forms: - user-userId - user-email - group-groupId - group-email - domain-domain - project-team-projectId - allUsers - allAuthenticatedUsers Examples: - The user liz@example.com would be user-liz@example.com. - The group example@googlegroups.com would be group-example@googlegroups.com. - To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.

entityId

string

The ID for the entity, if any.

etag

string

HTTP 1.1 Entity tag for the access-control entry.

id

string

The ID of the access-control entry.

kind

string

The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.

projectTeam

object

The project team associated with the entity, if any.

projectTeam.projectNumber

string

The project number.

projectTeam.team

string

The team.

role

string

The access permission for the entity.

selfLink

string

The link to this access-control entry.

BucketAccessControls

An access-control list.
Fields
items[]

object (BucketAccessControl)

The list of items.

kind

string

The kind of item this is. For lists of bucket access control entries, this is always storage#bucketAccessControls.

Buckets

A list of buckets.
Fields
items[]

object (Bucket)

The list of items.

kind

string

The kind of item this is. For lists of buckets, this is always storage#buckets.

nextPageToken

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.

Channel

An notification channel used to watch for resource changes.
Fields
address

string

The address where notifications are delivered for this channel.

expiration

string (int64 format)

Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.

id

string

A UUID or similar unique string that identifies this channel.

kind

string

Identifies this as a notification channel used to watch for changes to a resource, which is "api#channel".

params

map (key: string, value: string)

Additional parameters controlling delivery channel behavior. Optional.

payload

boolean

A Boolean value to indicate whether payload is wanted. Optional.

resourceId

string

An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.

resourceUri

string

A version-specific identifier for the watched resource.

token

string

An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.

type

string

The type of delivery mechanism used for this channel.

ComposeRequest

A Compose request.
Fields
destination

object (Object)

Properties of the resulting object.

destination.customerEncryption.encryptionAlgorithm

string

The encryption algorithm.

destination.customerEncryption.keySha256

string

SHA256 hash value of the encryption key.

destination.owner.entity

string

The entity, in the form user-userId.

destination.owner.entityId

string

The ID for the entity.

kind

string

The kind of item this is.

sourceObjects[]

object

The list of source objects that will be concatenated into a single object.

sourceObjects.generation

string (int64 format)

The generation of this object to use as the source.

sourceObjects.name

string

The source object's name. All source objects must reside in the same bucket.

sourceObjects.objectPreconditions

object

Conditions that must be met for this operation to execute.

sourceObjects.objectPreconditions.ifGenerationMatch

string (int64 format)

Only perform the composition if the generation of the source object that would be used matches this value. If this value and a generation are both specified, they must be the same value or the call will fail.

Expr

Represents an expression text. Example: title: "User account presence" description: "Determines whether the request has a user account" expression: "size(request.user) > 0"
Fields
description

string

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

expression

string

Textual representation of an expression in Common Expression Language syntax. The application context of the containing message determines which well-known feature set of CEL is supported.

location

string

An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file.

title

string

An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.

HmacKey

JSON template to produce a JSON-style HMAC Key resource for Create responses.
Fields
kind

string

The kind of item this is. For HMAC keys, this is always storage#hmacKey.

metadata

object (HmacKeyMetadata)

Key metadata.

secret

string

HMAC secret key material.

HmacKeyMetadata

JSON template to produce a JSON-style HMAC Key metadata resource.
Fields
accessId

string

The ID of the HMAC Key.

etag

string

HTTP 1.1 Entity tag for the HMAC key.

id

string

The ID of the HMAC key, including the Project ID and the Access ID.

kind

string

The kind of item this is. For HMAC Key metadata, this is always storage#hmacKeyMetadata.

projectId

string

Project ID owning the service account to which the key authenticates.

selfLink

string

The link to this resource.

serviceAccountEmail

string

The email address of the key's associated service account.

state

string

The state of the key. Can be one of ACTIVE, INACTIVE, or DELETED.

timeCreated

string (date-time format)

The creation time of the HMAC key in RFC 3339 format.

updated

string (date-time format)

The last modification time of the HMAC key metadata in RFC 3339 format.

HmacKeysMetadata

A list of hmacKeys.
Fields
items[]

object (HmacKeyMetadata)

The list of items.

kind

string

The kind of item this is. For lists of hmacKeys, this is always storage#hmacKeysMetadata.

nextPageToken

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.

Notification

A subscription to receive Google PubSub notifications.
Fields
custom_attributes

map (key: string, value: string)

An optional list of additional attributes to attach to each Cloud PubSub message published for this notification subscription.

etag

string

HTTP 1.1 Entity tag for this subscription notification.

event_types[]

string

If present, only send notifications about listed event types. If empty, sent notifications for all event types.

id

string

The ID of the notification.

kind

string

The kind of item this is. For notifications, this is always storage#notification.

object_name_prefix

string

If present, only apply this notification configuration to object names that begin with this prefix.

payload_format

string

The desired content of the Payload.

selfLink

string

The canonical URL of this notification.

topic

string

The Cloud PubSub topic to which this subscription publishes. Formatted as: '//pubsub.googleapis.com/projects/{project-identifier}/topics/{my-topic}'

Notifications

A list of notification subscriptions.
Fields
items[]

object (Notification)

The list of items.

kind

string

The kind of item this is. For lists of notifications, this is always storage#notifications.

Object

An object.
Fields
acl[]

object (ObjectAccessControl)

Access controls on the object.

bucket

string

The name of the bucket containing this object.

cacheControl

string

Cache-Control directive for the object data. If omitted, and the object is accessible to all anonymous users, the default will be public, max-age=3600.

componentCount

integer (int32 format)

Number of underlying components that make up this object. Components are accumulated by compose operations.

contentDisposition

string

Content-Disposition of the object data.

contentEncoding

string

Content-Encoding of the object data.

contentLanguage

string

Content-Language of the object data.

contentType

string

Content-Type of the object data. If an object is stored without a Content-Type, it is served as application/octet-stream.

crc32c

string

CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64 in big-endian byte order. For more information about using the CRC32c checksum, see Hashes and ETags: Best Practices.

customTime

string (date-time format)

A timestamp in RFC 3339 format specified by the user for an object.

customerEncryption

object

Metadata of customer-supplied encryption key, if the object is encrypted by such a key.

customerEncryption.encryptionAlgorithm

string

The encryption algorithm.

customerEncryption.keySha256

string

SHA256 hash value of the encryption key.

etag

string

HTTP 1.1 Entity tag for the object.

eventBasedHold

boolean

Whether an object is under event-based hold. Event-based hold is a way to retain objects until an event occurs, which is signified by the hold's release (i.e. this value is set to false). After being released (set to false), such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here, bucket-level retention is 3 years and the event is the loan being paid in full. In this example, these objects will be held intact for any number of years until the event has occurred (event-based hold on the object is released) and then 3 more years after that. That means retention duration of the objects begins from the moment event-based hold transitioned from true to false.

generation

string (int64 format)

The content generation of this object. Used for object versioning.

id

string

The ID of the object, including the bucket name, object name, and generation number.

kind

string

The kind of item this is. For objects, this is always storage#object.

kmsKeyName

string

Not currently supported. Specifying the parameter causes the request to fail with status code 400 - Bad Request.

md5Hash

string

MD5 hash of the data; encoded using base64. For more information about using the MD5 hash, see Hashes and ETags: Best Practices.

mediaLink

string

Media download link.

metadata

map (key: string, value: string)

User-provided metadata, in key/value pairs.

metageneration

string (int64 format)

The version of the metadata for this object at this generation. Used for preconditions and for detecting changes in metadata. A metageneration number is only meaningful in the context of a particular generation of a particular object.

name

string

The name of the object. Required if not specified by URL parameter.

owner

object

The owner of the object. This will always be the uploader of the object.

owner.entity

string

The entity, in the form user-userId.

owner.entityId

string

The ID for the entity.

retentionExpirationTime

string (date-time format)

A server-determined value that specifies the earliest time that the object's retention period expires. This value is in RFC 3339 format. Note 1: This field is not provided for objects with an active event-based hold, since retention expiration is unknown until the hold is removed. Note 2: This value can be provided even when temporary hold is set (so that the user can reason about policy without having to first unset the temporary hold).

selfLink

string

The link to this object.

size

string (uint64 format)

Content-Length of the data in bytes.

storageClass

string

Storage class of the object.

temporaryHold

boolean

Whether an object is under temporary hold. While this flag is set to true, the object is protected against deletion and overwrites. A common use case of this flag is regulatory investigations where objects need to be retained while the investigation is ongoing. Note that unlike event-based hold, temporary hold does not impact retention expiration time of an object.

timeCreated

string (date-time format)

The creation time of the object in RFC 3339 format.

timeDeleted

string (date-time format)

The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.

timeStorageClassUpdated

string (date-time format)

The time at which the object's storage class was last changed. When the object is initially created, it will be set to timeCreated.

updated

string (date-time format)

The modification time of the object metadata in RFC 3339 format. Set initially to object creation time and then updated whenever any metadata of the object changes. This includes changes made by a requester, such as modifying custom metadata, as well as changes made by Cloud Storage on behalf of a requester, such as changing the storage class based on an Object Lifecycle Configuration.

ObjectAccessControl

An access-control entry.
Fields
bucket

string

The name of the bucket.

domain

string

The domain associated with the entity, if any.

email

string

The email address associated with the entity, if any.

entity

string

The entity holding the permission, in one of the following forms: - user-userId - user-email - group-groupId - group-email - domain-domain - project-team-projectId - allUsers - allAuthenticatedUsers Examples: - The user liz@example.com would be user-liz@example.com. - The group example@googlegroups.com would be group-example@googlegroups.com. - To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.

entityId

string

The ID for the entity, if any.

etag

string

HTTP 1.1 Entity tag for the access-control entry.

generation

string (int64 format)

The content generation of the object, if applied to an object.

id

string

The ID of the access-control entry.

kind

string

The kind of item this is. For object access control entries, this is always storage#objectAccessControl.

object

string

The name of the object, if applied to an object.

projectTeam

object

The project team associated with the entity, if any.

projectTeam.projectNumber

string

The project number.

projectTeam.team

string

The team.

role

string

The access permission for the entity.

selfLink

string

The link to this access-control entry.

ObjectAccessControls

An access-control list.
Fields
items[]

object (ObjectAccessControl)

The list of items.

kind

string

The kind of item this is. For lists of object access control entries, this is always storage#objectAccessControls.

Objects

A list of objects.
Fields
items[]

object (Object)

The list of items.

kind

string

The kind of item this is. For lists of objects, this is always storage#objects.

nextPageToken

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.

prefixes[]

string

The list of prefixes of objects matching-but-not-listed up to and including the requested delimiter.

Policy

A bucket/object IAM policy.
Fields
bindings[]

object

An association between a role, which comes with a set of permissions, and members who may assume that role.

bindings.condition

object (Expr)

The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently.

bindings.members[]

string

A collection of identifiers for members who may assume the provided role. Recognized identifiers are as follows:
- allUsers — A special identifier that represents anyone on the internet; with or without a Google account.
- allAuthenticatedUsers — A special identifier that represents anyone who is authenticated with a Google account or a service account.
- user:emailid — An email address that represents a specific account. For example, user:alice@gmail.com or user:joe@example.com.
- serviceAccount:emailid — An email address that represents a service account. For example, serviceAccount:my-other-app@appspot.gserviceaccount.com .
- group:emailid — An email address that represents a Google group. For example, group:admins@example.com.
- domain:domain — A Google Apps domain name that represents all the users of that domain. For example, domain:google.com or domain:example.com.
- projectOwner:projectid — Owners of the given project. For example, projectOwner:my-example-project
- projectEditor:projectid — Editors of the given project. For example, projectEditor:my-example-project
- projectViewer:projectid — Viewers of the given project. For example, projectViewer:my-example-project

bindings.role

string

The role to which members belong. Two types of roles are supported: new IAM roles, which grant permissions that do not map directly to those provided by ACLs, and legacy IAM roles, which do map directly to ACL permissions. All roles are of the format roles/storage.specificRole. The new IAM roles are:
- roles/storage.admin — Full control of Google Cloud Storage resources.
- roles/storage.objectViewer — Read-Only access to Google Cloud Storage objects.
- roles/storage.objectCreator — Access to create objects in Google Cloud Storage.
- roles/storage.objectAdmin — Full control of Google Cloud Storage objects. The legacy IAM roles are:
- roles/storage.legacyObjectReader — Read-only access to objects without listing. Equivalent to an ACL entry on an object with the READER role.
- roles/storage.legacyObjectOwner — Read/write access to existing objects without listing. Equivalent to an ACL entry on an object with the OWNER role.
- roles/storage.legacyBucketReader — Read access to buckets with object listing. Equivalent to an ACL entry on a bucket with the READER role.
- roles/storage.legacyBucketWriter — Read access to buckets with object listing/creation/deletion. Equivalent to an ACL entry on a bucket with the WRITER role.
- roles/storage.legacyBucketOwner — Read and write access to existing buckets with object listing/creation/deletion. Equivalent to an ACL entry on a bucket with the OWNER role.

etag

string (bytes format)

HTTP 1.1 Entity tag for the policy.

kind

string

The kind of item this is. For policies, this is always storage#policy. This field is ignored on input.

resourceId

string

The ID of the resource to which this policy belongs. Will be of the form projects//buckets/bucket for buckets, and projects//buckets/bucket/objects/object for objects. A specific generation may be specified by appending #generationNumber to the end of the object name, e.g. projects/_/buckets/my-bucket/objects/data.txt#17. The current generation can be denoted with #0. This field is ignored on input.

version

integer (int32 format)

The IAM policy format version.

RewriteResponse

A rewrite response.
Fields
done

boolean

true if the copy is finished; otherwise, false if the copy is in progress. This property is always present in the response.

kind

string

The kind of item this is.

objectSize

string (int64 format)

The total size of the object being copied in bytes. This property is always present in the response.

resource

object (Object)

A resource containing the metadata for the copied-to object. This property is present in the response only when copying completes.

resource.customerEncryption.encryptionAlgorithm

string

The encryption algorithm.

resource.customerEncryption.keySha256

string

SHA256 hash value of the encryption key.

resource.owner.entity

string

The entity, in the form user-userId.

resource.owner.entityId

string

The ID for the entity.

rewriteToken

string

A token to use in subsequent requests to continue copying data. This token is present in the response only when there is more data to copy.

totalBytesRewritten

string (int64 format)

The total bytes written so far, which can be used to provide a waiting user with a progress indicator. This property is always present in the response.

ServiceAccount

A subscription to receive Google PubSub notifications.
Fields
email_address

string

The ID of the notification.

kind

string

The kind of item this is. For notifications, this is always storage#notification.

TestIamPermissionsResponse

A storage.(buckets|objects).testIamPermissions response.
Fields
kind

string

The kind of item this is.

permissions[]

string

The permissions held by the caller. Permissions are always of the format storage.resource.capability, where resource is one of buckets or objects. The supported permissions are as follows:
- storage.buckets.delete — Delete bucket.
- storage.buckets.get — Read bucket metadata.
- storage.buckets.getIamPolicy — Read bucket IAM policy.
- storage.buckets.create — Create bucket.
- storage.buckets.list — List buckets.
- storage.buckets.setIamPolicy — Update bucket IAM policy.
- storage.buckets.update — Update bucket metadata.
- storage.objects.delete — Delete object.
- storage.objects.get — Read object data and metadata.
- storage.objects.getIamPolicy — Read object IAM policy.
- storage.objects.create — Create object.
- storage.objects.list — List objects.
- storage.objects.setIamPolicy — Update object IAM policy.
- storage.objects.update — Update object metadata.