• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1"""Generated message classes for storage version v1.
2
3Stores and retrieves potentially large, immutable data objects.
4"""
5# NOTE: This file is autogenerated and should not be edited by hand.
6
7from apitools.base.protorpclite import message_types as _message_types
8from apitools.base.protorpclite import messages as _messages
9from apitools.base.py import encoding
10from apitools.base.py import extra_types
11
12
13package = 'storage'
14
15
16class Bucket(_messages.Message):
17  r"""A bucket.
18
19  Messages:
20    CorsValueListEntry: A CorsValueListEntry object.
21    LifecycleValue: The bucket's lifecycle configuration. See lifecycle
22      management for more information.
23    LoggingValue: The bucket's logging configuration, which defines the
24      destination bucket and optional name prefix for the current bucket's
25      logs.
26    OwnerValue: The owner of the bucket. This is always the project team's
27      owner group.
28    VersioningValue: The bucket's versioning configuration.
29    WebsiteValue: The bucket's website configuration, controlling how the
30      service behaves when accessing bucket contents as a web site. See the
31      Static Website Examples for more information.
32
33  Fields:
34    acl: Access controls on the bucket.
35    cors: The bucket's Cross-Origin Resource Sharing (CORS) configuration.
36    defaultObjectAcl: Default access controls to apply to new objects when no
37      ACL is provided.
38    etag: HTTP 1.1 Entity tag for the bucket.
39    id: The ID of the bucket.
40    kind: The kind of item this is. For buckets, this is always
41      storage#bucket.
42    lifecycle: The bucket's lifecycle configuration. See lifecycle management
43      for more information.
44    location: The location of the bucket. Object data for objects in the
45      bucket resides in physical storage within this region. Defaults to US.
46      See the developer's guide for the authoritative list.
47    logging: The bucket's logging configuration, which defines the destination
48      bucket and optional name prefix for the current bucket's logs.
49    metageneration: The metadata generation of this bucket.
50    name: The name of the bucket.
51    owner: The owner of the bucket. This is always the project team's owner
52      group.
53    projectNumber: The project number of the project the bucket belongs to.
54    selfLink: The URI of this bucket.
55    storageClass: The bucket's storage class. This defines how objects in the
56      bucket are stored and determines the SLA and the cost of storage. Values
57      include STANDARD, NEARLINE and DURABLE_REDUCED_AVAILABILITY. Defaults to
58      STANDARD. For more information, see storage classes.
59    timeCreated: The creation time of the bucket in RFC 3339 format.
60    updated: The modification time of the bucket in RFC 3339 format.
61    versioning: The bucket's versioning configuration.
62    website: The bucket's website configuration, controlling how the service
63      behaves when accessing bucket contents as a web site. See the Static
64      Website Examples for more information.
65  """
66
67  class CorsValueListEntry(_messages.Message):
68    r"""A CorsValueListEntry object.
69
70    Fields:
71      maxAgeSeconds: The value, in seconds, to return in the  Access-Control-
72        Max-Age header used in preflight responses.
73      method: The list of HTTP methods on which to include CORS response
74        headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list
75        of methods, and means "any method".
76      origin: The list of Origins eligible to receive CORS response headers.
77        Note: "*" is permitted in the list of origins, and means "any Origin".
78      responseHeader: The list of HTTP headers other than the simple response
79        headers to give permission for the user-agent to share across domains.
80    """
81
82    maxAgeSeconds = _messages.IntegerField(1, variant=_messages.Variant.INT32)
83    method = _messages.StringField(2, repeated=True)
84    origin = _messages.StringField(3, repeated=True)
85    responseHeader = _messages.StringField(4, repeated=True)
86
87  class LifecycleValue(_messages.Message):
88    r"""The bucket's lifecycle configuration. See lifecycle management for
89    more information.
90
91    Messages:
92      RuleValueListEntry: A RuleValueListEntry object.
93
94    Fields:
95      rule: A lifecycle management rule, which is made of an action to take
96        and the condition(s) under which the action will be taken.
97    """
98
99    class RuleValueListEntry(_messages.Message):
100      r"""A RuleValueListEntry object.
101
102      Messages:
103        ActionValue: The action to take.
104        ConditionValue: The condition(s) under which the action will be taken.
105
106      Fields:
107        action: The action to take.
108        condition: The condition(s) under which the action will be taken.
109      """
110
111      class ActionValue(_messages.Message):
112        r"""The action to take.
113
114        Fields:
115          type: Type of the action. Currently, only Delete is supported.
116        """
117
118        type = _messages.StringField(1)
119
120      class ConditionValue(_messages.Message):
121        r"""The condition(s) under which the action will be taken.
122
123        Fields:
124          age: Age of an object (in days). This condition is satisfied when an
125            object reaches the specified age.
126          createdBefore: A date in RFC 3339 format with only the date part
127            (for instance, "2013-01-15"). This condition is satisfied when an
128            object is created before midnight of the specified date in UTC.
129          isLive: Relevant only for versioned objects. If the value is true,
130            this condition matches live objects; if the value is false, it
131            matches archived objects.
132          numNewerVersions: Relevant only for versioned objects. If the value
133            is N, this condition is satisfied when there are at least N
134            versions (including the live version) newer than this version of
135            the object.
136        """
137
138        age = _messages.IntegerField(1, variant=_messages.Variant.INT32)
139        createdBefore = extra_types.DateField(2)
140        isLive = _messages.BooleanField(3)
141        numNewerVersions = _messages.IntegerField(4, variant=_messages.Variant.INT32)
142
143      action = _messages.MessageField('ActionValue', 1)
144      condition = _messages.MessageField('ConditionValue', 2)
145
146    rule = _messages.MessageField('RuleValueListEntry', 1, repeated=True)
147
148  class LoggingValue(_messages.Message):
149    r"""The bucket's logging configuration, which defines the destination
150    bucket and optional name prefix for the current bucket's logs.
151
152    Fields:
153      logBucket: The destination bucket where the current bucket's logs should
154        be placed.
155      logObjectPrefix: A prefix for log object names.
156    """
157
158    logBucket = _messages.StringField(1)
159    logObjectPrefix = _messages.StringField(2)
160
161  class OwnerValue(_messages.Message):
162    r"""The owner of the bucket. This is always the project team's owner
163    group.
164
165    Fields:
166      entity: The entity, in the form project-owner-projectId.
167      entityId: The ID for the entity.
168    """
169
170    entity = _messages.StringField(1)
171    entityId = _messages.StringField(2)
172
173  class VersioningValue(_messages.Message):
174    r"""The bucket's versioning configuration.
175
176    Fields:
177      enabled: While set to true, versioning is fully enabled for this bucket.
178    """
179
180    enabled = _messages.BooleanField(1)
181
182  class WebsiteValue(_messages.Message):
183    r"""The bucket's website configuration, controlling how the service
184    behaves when accessing bucket contents as a web site. See the Static
185    Website Examples for more information.
186
187    Fields:
188      mainPageSuffix: If the requested object path is missing, the service
189        will ensure the path has a trailing '/', append this suffix, and
190        attempt to retrieve the resulting object. This allows the creation of
191        index.html objects to represent directory pages.
192      notFoundPage: If the requested object path is missing, and any
193        mainPageSuffix object is missing, if applicable, the service will
194        return the named object from this bucket as the content for a 404 Not
195        Found result.
196    """
197
198    mainPageSuffix = _messages.StringField(1)
199    notFoundPage = _messages.StringField(2)
200
201  acl = _messages.MessageField('BucketAccessControl', 1, repeated=True)
202  cors = _messages.MessageField('CorsValueListEntry', 2, repeated=True)
203  defaultObjectAcl = _messages.MessageField('ObjectAccessControl', 3, repeated=True)
204  etag = _messages.StringField(4)
205  id = _messages.StringField(5)
206  kind = _messages.StringField(6, default=u'storage#bucket')
207  lifecycle = _messages.MessageField('LifecycleValue', 7)
208  location = _messages.StringField(8)
209  logging = _messages.MessageField('LoggingValue', 9)
210  metageneration = _messages.IntegerField(10)
211  name = _messages.StringField(11)
212  owner = _messages.MessageField('OwnerValue', 12)
213  projectNumber = _messages.IntegerField(13, variant=_messages.Variant.UINT64)
214  selfLink = _messages.StringField(14)
215  storageClass = _messages.StringField(15)
216  timeCreated = _message_types.DateTimeField(16)
217  updated = _message_types.DateTimeField(17)
218  versioning = _messages.MessageField('VersioningValue', 18)
219  website = _messages.MessageField('WebsiteValue', 19)
220
221
222class BucketAccessControl(_messages.Message):
223  r"""An access-control entry.
224
225  Messages:
226    ProjectTeamValue: The project team associated with the entity, if any.
227
228  Fields:
229    bucket: The name of the bucket.
230    domain: The domain associated with the entity, if any.
231    email: The email address associated with the entity, if any.
232    entity: The entity holding the permission, in one of the following forms:
233      - user-userId  - user-email  - group-groupId  - group-email  - domain-
234      domain  - project-team-projectId  - allUsers  - allAuthenticatedUsers
235      Examples:  - The user liz@example.com would be user-liz@example.com.  -
236      The group example@googlegroups.com would be group-
237      example@googlegroups.com.  - To refer to all members of the Google Apps
238      for Business domain example.com, the entity would be domain-example.com.
239    entityId: The ID for the entity, if any.
240    etag: HTTP 1.1 Entity tag for the access-control entry.
241    id: The ID of the access-control entry.
242    kind: The kind of item this is. For bucket access control entries, this is
243      always storage#bucketAccessControl.
244    projectTeam: The project team associated with the entity, if any.
245    role: The access permission for the entity. Can be READER, WRITER, or
246      OWNER.
247    selfLink: The link to this access-control entry.
248  """
249
250  class ProjectTeamValue(_messages.Message):
251    r"""The project team associated with the entity, if any.
252
253    Fields:
254      projectNumber: The project number.
255      team: The team. Can be owners, editors, or viewers.
256    """
257
258    projectNumber = _messages.StringField(1)
259    team = _messages.StringField(2)
260
261  bucket = _messages.StringField(1)
262  domain = _messages.StringField(2)
263  email = _messages.StringField(3)
264  entity = _messages.StringField(4)
265  entityId = _messages.StringField(5)
266  etag = _messages.StringField(6)
267  id = _messages.StringField(7)
268  kind = _messages.StringField(8, default=u'storage#bucketAccessControl')
269  projectTeam = _messages.MessageField('ProjectTeamValue', 9)
270  role = _messages.StringField(10)
271  selfLink = _messages.StringField(11)
272
273
274class BucketAccessControls(_messages.Message):
275  r"""An access-control list.
276
277  Fields:
278    items: The list of items.
279    kind: The kind of item this is. For lists of bucket access control
280      entries, this is always storage#bucketAccessControls.
281  """
282
283  items = _messages.MessageField('BucketAccessControl', 1, repeated=True)
284  kind = _messages.StringField(2, default=u'storage#bucketAccessControls')
285
286
287class Buckets(_messages.Message):
288  r"""A list of buckets.
289
290  Fields:
291    items: The list of items.
292    kind: The kind of item this is. For lists of buckets, this is always
293      storage#buckets.
294    nextPageToken: The continuation token, used to page through large result
295      sets. Provide this value in a subsequent request to return the next page
296      of results.
297  """
298
299  items = _messages.MessageField('Bucket', 1, repeated=True)
300  kind = _messages.StringField(2, default=u'storage#buckets')
301  nextPageToken = _messages.StringField(3)
302
303
304class Channel(_messages.Message):
305  r"""An notification channel used to watch for resource changes.
306
307  Messages:
308    ParamsValue: Additional parameters controlling delivery channel behavior.
309      Optional.
310
311  Fields:
312    address: The address where notifications are delivered for this channel.
313    expiration: Date and time of notification channel expiration, expressed as
314      a Unix timestamp, in milliseconds. Optional.
315    id: A UUID or similar unique string that identifies this channel.
316    kind: Identifies this as a notification channel used to watch for changes
317      to a resource. Value: the fixed string "api#channel".
318    params: Additional parameters controlling delivery channel behavior.
319      Optional.
320    payload: A Boolean value to indicate whether payload is wanted. Optional.
321    resourceId: An opaque ID that identifies the resource being watched on
322      this channel. Stable across different API versions.
323    resourceUri: A version-specific identifier for the watched resource.
324    token: An arbitrary string delivered to the target address with each
325      notification delivered over this channel. Optional.
326    type: The type of delivery mechanism used for this channel.
327  """
328
329  @encoding.MapUnrecognizedFields('additionalProperties')
330  class ParamsValue(_messages.Message):
331    r"""Additional parameters controlling delivery channel behavior. Optional.
332
333    Messages:
334      AdditionalProperty: An additional property for a ParamsValue object.
335
336    Fields:
337      additionalProperties: Declares a new parameter by name.
338    """
339
340    class AdditionalProperty(_messages.Message):
341      r"""An additional property for a ParamsValue object.
342
343      Fields:
344        key: Name of the additional property.
345        value: A string attribute.
346      """
347
348      key = _messages.StringField(1)
349      value = _messages.StringField(2)
350
351    additionalProperties = _messages.MessageField('AdditionalProperty', 1, repeated=True)
352
353  address = _messages.StringField(1)
354  expiration = _messages.IntegerField(2)
355  id = _messages.StringField(3)
356  kind = _messages.StringField(4, default=u'api#channel')
357  params = _messages.MessageField('ParamsValue', 5)
358  payload = _messages.BooleanField(6)
359  resourceId = _messages.StringField(7)
360  resourceUri = _messages.StringField(8)
361  token = _messages.StringField(9)
362  type = _messages.StringField(10)
363
364
365class ComposeRequest(_messages.Message):
366  r"""A Compose request.
367
368  Messages:
369    SourceObjectsValueListEntry: A SourceObjectsValueListEntry object.
370
371  Fields:
372    destination: Properties of the resulting object.
373    kind: The kind of item this is.
374    sourceObjects: The list of source objects that will be concatenated into a
375      single object.
376  """
377
378  class SourceObjectsValueListEntry(_messages.Message):
379    r"""A SourceObjectsValueListEntry object.
380
381    Messages:
382      ObjectPreconditionsValue: Conditions that must be met for this operation
383        to execute.
384
385    Fields:
386      generation: The generation of this object to use as the source.
387      name: The source object's name. The source object's bucket is implicitly
388        the destination bucket.
389      objectPreconditions: Conditions that must be met for this operation to
390        execute.
391    """
392
393    class ObjectPreconditionsValue(_messages.Message):
394      r"""Conditions that must be met for this operation to execute.
395
396      Fields:
397        ifGenerationMatch: Only perform the composition if the generation of
398          the source object that would be used matches this value. If this
399          value and a generation are both specified, they must be the same
400          value or the call will fail.
401      """
402
403      ifGenerationMatch = _messages.IntegerField(1)
404
405    generation = _messages.IntegerField(1)
406    name = _messages.StringField(2)
407    objectPreconditions = _messages.MessageField('ObjectPreconditionsValue', 3)
408
409  destination = _messages.MessageField('Object', 1)
410  kind = _messages.StringField(2, default=u'storage#composeRequest')
411  sourceObjects = _messages.MessageField('SourceObjectsValueListEntry', 3, repeated=True)
412
413
414class Notification(_messages.Message):
415  r"""A subscription to receive Google PubSub notifications.
416
417  Messages:
418    CustomAttributesValue: An optional list of additional attributes to attach
419      to each Cloud PubSub message published for this notification
420      subscription.
421
422  Fields:
423    bucket: The name of the bucket this subscription is particular to.
424    custom_attributes: An optional list of additional attributes to attach to
425      each Cloud PubSub message published for this notification subscription.
426    etag: HTTP 1.1 Entity tag for this subscription notification.
427    event_types: If present, only send notifications about listed event types.
428      If empty, sent notifications for all event types.
429    id: The ID of the notification.
430    kind: The kind of item this is. For notifications, this is always
431      storage#notification.
432    object_metadata_format: If payload_content is OBJECT_METADATA, controls
433      the format of that metadata. Otherwise, must not be set.
434    object_name_prefix: If present, only apply this notification configuration
435      to object names that begin with this prefix.
436    payload_content: The desired content of the Payload. Defaults to
437      OBJECT_METADATA.
438    selfLink: The canonical URL of this notification.
439    topic: The Cloud PubSub topic to which this subscription publishes.
440      Formatted as: '//pubsub.googleapis.com/projects/{project-
441      identifier}/topics/{my-topic}'
442  """
443
444  @encoding.MapUnrecognizedFields('additionalProperties')
445  class CustomAttributesValue(_messages.Message):
446    r"""An optional list of additional attributes to attach to each Cloud
447    PubSub message published for this notification subscription.
448
449    Messages:
450      AdditionalProperty: An additional property for a CustomAttributesValue
451        object.
452
453    Fields:
454      additionalProperties: Additional properties of type
455        CustomAttributesValue
456    """
457
458    class AdditionalProperty(_messages.Message):
459      r"""An additional property for a CustomAttributesValue object.
460
461      Fields:
462        key: Name of the additional property.
463        value: A string attribute.
464      """
465
466      key = _messages.StringField(1)
467      value = _messages.StringField(2)
468
469    additionalProperties = _messages.MessageField('AdditionalProperty', 1, repeated=True)
470
471  bucket = _messages.StringField(1)
472  custom_attributes = _messages.MessageField('CustomAttributesValue', 2)
473  etag = _messages.StringField(3)
474  event_types = _messages.StringField(4, repeated=True)
475  id = _messages.StringField(5)
476  kind = _messages.StringField(6, default=u'storage#notification')
477  object_metadata_format = _messages.StringField(7, default=u'JSON_API_V1')
478  object_name_prefix = _messages.StringField(8)
479  payload_content = _messages.StringField(9, default=u'OBJECT_METADATA')
480  selfLink = _messages.StringField(10)
481  topic = _messages.StringField(11)
482
483
484class Notifications(_messages.Message):
485  r"""A list of notification subscriptions.
486
487  Fields:
488    items: The list of items.
489    kind: The kind of item this is. For lists of notifications, this is always
490      storage#notifications.
491  """
492
493  items = _messages.MessageField('Notification', 1, repeated=True)
494  kind = _messages.StringField(2, default=u'storage#notifications')
495
496
497class Object(_messages.Message):
498  r"""An object.
499
500  Messages:
501    CustomerEncryptionValue: Metadata of customer-supplied encryption key, if
502      the object is encrypted by such a key.
503    MetadataValue: User-provided metadata, in key/value pairs.
504    OwnerValue: The owner of the object. This will always be the uploader of
505      the object.
506
507  Fields:
508    acl: Access controls on the object.
509    bucket: The name of the bucket containing this object.
510    cacheControl: Cache-Control directive for the object data.
511    componentCount: Number of underlying components that make up this object.
512      Components are accumulated by compose operations.
513    contentDisposition: Content-Disposition of the object data.
514    contentEncoding: Content-Encoding of the object data.
515    contentLanguage: Content-Language of the object data.
516    contentType: Content-Type of the object data. If contentType is not
517      specified, object downloads will be served as application/octet-stream.
518    crc32c: CRC32c checksum, as described in RFC 4960, Appendix B; encoded
519      using base64 in big-endian byte order. For more information about using
520      the CRC32c checksum, see Hashes and ETags: Best Practices.
521    customerEncryption: Metadata of customer-supplied encryption key, if the
522      object is encrypted by such a key.
523    etag: HTTP 1.1 Entity tag for the object.
524    generation: The content generation of this object. Used for object
525      versioning.
526    id: The ID of the object.
527    kind: The kind of item this is. For objects, this is always
528      storage#object.
529    md5Hash: MD5 hash of the data; encoded using base64. For more information
530      about using the MD5 hash, see Hashes and ETags: Best Practices.
531    mediaLink: Media download link.
532    metadata: User-provided metadata, in key/value pairs.
533    metageneration: The version of the metadata for this object at this
534      generation. Used for preconditions and for detecting changes in
535      metadata. A metageneration number is only meaningful in the context of a
536      particular generation of a particular object.
537    name: The name of this object. Required if not specified by URL parameter.
538    owner: The owner of the object. This will always be the uploader of the
539      object.
540    selfLink: The link to this object.
541    size: Content-Length of the data in bytes.
542    storageClass: Storage class of the object.
543    timeCreated: The creation time of the object in RFC 3339 format.
544    timeDeleted: The deletion time of the object in RFC 3339 format. Will be
545      returned if and only if this version of the object has been deleted.
546    updated: The modification time of the object metadata in RFC 3339 format.
547  """
548
549  class CustomerEncryptionValue(_messages.Message):
550    r"""Metadata of customer-supplied encryption key, if the object is
551    encrypted by such a key.
552
553    Fields:
554      encryptionAlgorithm: The encryption algorithm.
555      keySha256: SHA256 hash value of the encryption key.
556    """
557
558    encryptionAlgorithm = _messages.StringField(1)
559    keySha256 = _messages.StringField(2)
560
561  @encoding.MapUnrecognizedFields('additionalProperties')
562  class MetadataValue(_messages.Message):
563    r"""User-provided metadata, in key/value pairs.
564
565    Messages:
566      AdditionalProperty: An additional property for a MetadataValue object.
567
568    Fields:
569      additionalProperties: An individual metadata entry.
570    """
571
572    class AdditionalProperty(_messages.Message):
573      r"""An additional property for a MetadataValue object.
574
575      Fields:
576        key: Name of the additional property.
577        value: A string attribute.
578      """
579
580      key = _messages.StringField(1)
581      value = _messages.StringField(2)
582
583    additionalProperties = _messages.MessageField('AdditionalProperty', 1, repeated=True)
584
585  class OwnerValue(_messages.Message):
586    r"""The owner of the object. This will always be the uploader of the
587    object.
588
589    Fields:
590      entity: The entity, in the form user-userId.
591      entityId: The ID for the entity.
592    """
593
594    entity = _messages.StringField(1)
595    entityId = _messages.StringField(2)
596
597  acl = _messages.MessageField('ObjectAccessControl', 1, repeated=True)
598  bucket = _messages.StringField(2)
599  cacheControl = _messages.StringField(3)
600  componentCount = _messages.IntegerField(4, variant=_messages.Variant.INT32)
601  contentDisposition = _messages.StringField(5)
602  contentEncoding = _messages.StringField(6)
603  contentLanguage = _messages.StringField(7)
604  contentType = _messages.StringField(8)
605  crc32c = _messages.StringField(9)
606  customerEncryption = _messages.MessageField('CustomerEncryptionValue', 10)
607  etag = _messages.StringField(11)
608  generation = _messages.IntegerField(12)
609  id = _messages.StringField(13)
610  kind = _messages.StringField(14, default=u'storage#object')
611  md5Hash = _messages.StringField(15)
612  mediaLink = _messages.StringField(16)
613  metadata = _messages.MessageField('MetadataValue', 17)
614  metageneration = _messages.IntegerField(18)
615  name = _messages.StringField(19)
616  owner = _messages.MessageField('OwnerValue', 20)
617  selfLink = _messages.StringField(21)
618  size = _messages.IntegerField(22, variant=_messages.Variant.UINT64)
619  storageClass = _messages.StringField(23)
620  timeCreated = _message_types.DateTimeField(24)
621  timeDeleted = _message_types.DateTimeField(25)
622  updated = _message_types.DateTimeField(26)
623
624
625class ObjectAccessControl(_messages.Message):
626  r"""An access-control entry.
627
628  Messages:
629    ProjectTeamValue: The project team associated with the entity, if any.
630
631  Fields:
632    bucket: The name of the bucket.
633    domain: The domain associated with the entity, if any.
634    email: The email address associated with the entity, if any.
635    entity: The entity holding the permission, in one of the following forms:
636      - user-userId  - user-email  - group-groupId  - group-email  - domain-
637      domain  - project-team-projectId  - allUsers  - allAuthenticatedUsers
638      Examples:  - The user liz@example.com would be user-liz@example.com.  -
639      The group example@googlegroups.com would be group-
640      example@googlegroups.com.  - To refer to all members of the Google Apps
641      for Business domain example.com, the entity would be domain-example.com.
642    entityId: The ID for the entity, if any.
643    etag: HTTP 1.1 Entity tag for the access-control entry.
644    generation: The content generation of the object.
645    id: The ID of the access-control entry.
646    kind: The kind of item this is. For object access control entries, this is
647      always storage#objectAccessControl.
648    object: The name of the object.
649    projectTeam: The project team associated with the entity, if any.
650    role: The access permission for the entity. Can be READER or OWNER.
651    selfLink: The link to this access-control entry.
652  """
653
654  class ProjectTeamValue(_messages.Message):
655    r"""The project team associated with the entity, if any.
656
657    Fields:
658      projectNumber: The project number.
659      team: The team. Can be owners, editors, or viewers.
660    """
661
662    projectNumber = _messages.StringField(1)
663    team = _messages.StringField(2)
664
665  bucket = _messages.StringField(1)
666  domain = _messages.StringField(2)
667  email = _messages.StringField(3)
668  entity = _messages.StringField(4)
669  entityId = _messages.StringField(5)
670  etag = _messages.StringField(6)
671  generation = _messages.IntegerField(7)
672  id = _messages.StringField(8)
673  kind = _messages.StringField(9, default=u'storage#objectAccessControl')
674  object = _messages.StringField(10)
675  projectTeam = _messages.MessageField('ProjectTeamValue', 11)
676  role = _messages.StringField(12)
677  selfLink = _messages.StringField(13)
678
679
680class ObjectAccessControls(_messages.Message):
681  r"""An access-control list.
682
683  Fields:
684    items: The list of items.
685    kind: The kind of item this is. For lists of object access control
686      entries, this is always storage#objectAccessControls.
687  """
688
689  items = _messages.MessageField('extra_types.JsonValue', 1, repeated=True)
690  kind = _messages.StringField(2, default=u'storage#objectAccessControls')
691
692
693class Objects(_messages.Message):
694  r"""A list of objects.
695
696  Fields:
697    items: The list of items.
698    kind: The kind of item this is. For lists of objects, this is always
699      storage#objects.
700    nextPageToken: The continuation token, used to page through large result
701      sets. Provide this value in a subsequent request to return the next page
702      of results.
703    prefixes: The list of prefixes of objects matching-but-not-listed up to
704      and including the requested delimiter.
705  """
706
707  items = _messages.MessageField('Object', 1, repeated=True)
708  kind = _messages.StringField(2, default=u'storage#objects')
709  nextPageToken = _messages.StringField(3)
710  prefixes = _messages.StringField(4, repeated=True)
711
712
713class Policy(_messages.Message):
714  r"""A bucket/object IAM policy.
715
716  Messages:
717    BindingsValueListEntry: A BindingsValueListEntry object.
718
719  Fields:
720    bindings: An association between a role, which comes with a set of
721      permissions, and members who may assume that role.
722    etag: HTTP 1.1  Entity tag for the policy.
723    kind: The kind of item this is. For policies, this is always
724      storage#policy. This field is ignored on input.
725    resourceId: The ID of the resource to which this policy belongs. Will be
726      of the form buckets/bucket for buckets, and
727      buckets/bucket/objects/object for objects. A specific generation may be
728      specified by appending #generationNumber to the end of the object name,
729      e.g. buckets/my-bucket/objects/data.txt#17. The current generation can
730      be denoted with #0. This field is ignored on input.
731  """
732
733  class BindingsValueListEntry(_messages.Message):
734    r"""A BindingsValueListEntry object.
735
736    Fields:
737      members: A collection of identifiers for members who may assume the
738        provided role. Recognized identifiers are as follows:   - allUsers - A
739        special identifier that represents anyone on the internet; with or
740        without a Google account.   - allAuthenticatedUsers - A special
741        identifier that represents anyone who is authenticated with a Google
742        account or a service account.   - user:emailid - An email address that
743        represents a specific account. For example, user:alice@gmail.com or
744        user:joe@example.com.   - serviceAccount:emailid - An email address
745        that represents a service account. For example,  serviceAccount:my-
746        other-app@appspot.gserviceaccount.com .   - group:emailid - An email
747        address that represents a Google group. For example,
748        group:admins@example.com.   - domain:domain - A Google Apps domain
749        name that represents all the users of that domain. For example,
750        domain:google.com or domain:example.com.   - projectOwner:projectid -
751        Owners of the given project. For example, projectOwner:my-example-
752        project   - projectEditor:projectid - Editors of the given project.
753        For example, projectEditor:my-example-project   -
754        projectViewer:projectid - Viewers of the given project. For example,
755        projectViewer:my-example-project
756      role: The role to which members belong. Two types of roles are
757        supported: new IAM roles, which grant permissions that do not map
758        directly to those provided by ACLs, and legacy IAM roles, which do map
759        directly to ACL permissions. All roles are of the format
760        roles/storage.specificRole. The new IAM roles are:   -
761        roles/storage.admin - Full control of Google Cloud Storage resources.
762        - roles/storage.objectViewer - Read-Only access to Google Cloud
763        Storage objects.   - roles/storage.objectCreator - Access to create
764        objects in Google Cloud Storage.   - roles/storage.objectAdmin - Full
765        control of Google Cloud Storage objects.   The legacy IAM roles are:
766        - roles/storage.legacyObjectReader - Read-only access to objects
767        without listing. Equivalent to an ACL entry on an object with the
768        READER role.   - roles/storage.legacyObjectOwner - Read/write access
769        to existing objects without listing. Equivalent to an ACL entry on an
770        object with the OWNER role.   - roles/storage.legacyBucketReader -
771        Read access to buckets with object listing. Equivalent to an ACL entry
772        on a bucket with the READER role.   - roles/storage.legacyBucketWriter
773        - Read access to buckets with object listing/creation/deletion.
774        Equivalent to an ACL entry on a bucket with the WRITER role.   -
775        roles/storage.legacyBucketOwner - Read and write access to existing
776        buckets with object listing/creation/deletion. Equivalent to an ACL
777        entry on a bucket with the OWNER role.
778    """
779
780    members = _messages.StringField(1, repeated=True)
781    role = _messages.StringField(2)
782
783  bindings = _messages.MessageField('BindingsValueListEntry', 1, repeated=True)
784  etag = _messages.BytesField(2)
785  kind = _messages.StringField(3, default=u'storage#policy')
786  resourceId = _messages.StringField(4)
787
788
789class RewriteResponse(_messages.Message):
790  r"""A rewrite response.
791
792  Fields:
793    done: true if the copy is finished; otherwise, false if the copy is in
794      progress. This property is always present in the response.
795    kind: The kind of item this is.
796    objectSize: The total size of the object being copied in bytes. This
797      property is always present in the response.
798    resource: A resource containing the metadata for the copied-to object.
799      This property is present in the response only when copying completes.
800    rewriteToken: A token to use in subsequent requests to continue copying
801      data. This token is present in the response only when there is more data
802      to copy.
803    totalBytesRewritten: The total bytes written so far, which can be used to
804      provide a waiting user with a progress indicator. This property is
805      always present in the response.
806  """
807
808  done = _messages.BooleanField(1)
809  kind = _messages.StringField(2, default=u'storage#rewriteResponse')
810  objectSize = _messages.IntegerField(3, variant=_messages.Variant.UINT64)
811  resource = _messages.MessageField('Object', 4)
812  rewriteToken = _messages.StringField(5)
813  totalBytesRewritten = _messages.IntegerField(6, variant=_messages.Variant.UINT64)
814
815
816class StandardQueryParameters(_messages.Message):
817  r"""Query parameters accepted by all methods.
818
819  Enums:
820    AltValueValuesEnum: Data format for the response.
821
822  Fields:
823    alt: Data format for the response.
824    fields: Selector specifying which fields to include in a partial response.
825    key: API key. Your API key identifies your project and provides you with
826      API access, quota, and reports. Required unless you provide an OAuth 2.0
827      token.
828    oauth_token: OAuth 2.0 token for the current user.
829    prettyPrint: Returns response with indentations and line breaks.
830    quotaUser: Available to use for quota purposes for server-side
831      applications. Can be any arbitrary string assigned to a user, but should
832      not exceed 40 characters. Overrides userIp if both are provided.
833    trace: A tracing token of the form "token:<tokenid>" to include in api
834      requests.
835    userIp: IP address of the site where the request originates. Use this if
836      you want to enforce per-user limits.
837  """
838
839  class AltValueValuesEnum(_messages.Enum):
840    r"""Data format for the response.
841
842    Values:
843      json: Responses with Content-Type of application/json
844    """
845    json = 0
846
847  alt = _messages.EnumField('AltValueValuesEnum', 1, default=u'json')
848  fields = _messages.StringField(2)
849  key = _messages.StringField(3)
850  oauth_token = _messages.StringField(4)
851  prettyPrint = _messages.BooleanField(5, default=True)
852  quotaUser = _messages.StringField(6)
853  trace = _messages.StringField(7)
854  userIp = _messages.StringField(8)
855
856
857class StorageBucketAccessControlsDeleteRequest(_messages.Message):
858  r"""A StorageBucketAccessControlsDeleteRequest object.
859
860  Fields:
861    bucket: Name of a bucket.
862    entity: The entity holding the permission. Can be user-userId, user-
863      emailAddress, group-groupId, group-emailAddress, allUsers, or
864      allAuthenticatedUsers.
865  """
866
867  bucket = _messages.StringField(1, required=True)
868  entity = _messages.StringField(2, required=True)
869
870
871class StorageBucketAccessControlsDeleteResponse(_messages.Message):
872  r"""An empty StorageBucketAccessControlsDelete response."""
873
874
875class StorageBucketAccessControlsGetRequest(_messages.Message):
876  r"""A StorageBucketAccessControlsGetRequest object.
877
878  Fields:
879    bucket: Name of a bucket.
880    entity: The entity holding the permission. Can be user-userId, user-
881      emailAddress, group-groupId, group-emailAddress, allUsers, or
882      allAuthenticatedUsers.
883  """
884
885  bucket = _messages.StringField(1, required=True)
886  entity = _messages.StringField(2, required=True)
887
888
889class StorageBucketAccessControlsListRequest(_messages.Message):
890  r"""A StorageBucketAccessControlsListRequest object.
891
892  Fields:
893    bucket: Name of a bucket.
894  """
895
896  bucket = _messages.StringField(1, required=True)
897
898
899class StorageBucketsDeleteRequest(_messages.Message):
900  r"""A StorageBucketsDeleteRequest object.
901
902  Fields:
903    bucket: Name of a bucket.
904    ifMetagenerationMatch: If set, only deletes the bucket if its
905      metageneration matches this value.
906    ifMetagenerationNotMatch: If set, only deletes the bucket if its
907      metageneration does not match this value.
908  """
909
910  bucket = _messages.StringField(1, required=True)
911  ifMetagenerationMatch = _messages.IntegerField(2)
912  ifMetagenerationNotMatch = _messages.IntegerField(3)
913
914
915class StorageBucketsDeleteResponse(_messages.Message):
916  r"""An empty StorageBucketsDelete response."""
917
918
919class StorageBucketsGetIamPolicyRequest(_messages.Message):
920  r"""A StorageBucketsGetIamPolicyRequest object.
921
922  Fields:
923    bucket: Name of a bucket.
924  """
925
926  bucket = _messages.StringField(1, required=True)
927
928
929class StorageBucketsGetRequest(_messages.Message):
930  r"""A StorageBucketsGetRequest object.
931
932  Enums:
933    ProjectionValueValuesEnum: Set of properties to return. Defaults to noAcl.
934
935  Fields:
936    bucket: Name of a bucket.
937    ifMetagenerationMatch: Makes the return of the bucket metadata conditional
938      on whether the bucket's current metageneration matches the given value.
939    ifMetagenerationNotMatch: Makes the return of the bucket metadata
940      conditional on whether the bucket's current metageneration does not
941      match the given value.
942    projection: Set of properties to return. Defaults to noAcl.
943  """
944
945  class ProjectionValueValuesEnum(_messages.Enum):
946    r"""Set of properties to return. Defaults to noAcl.
947
948    Values:
949      full: Include all properties.
950      noAcl: Omit owner, acl and defaultObjectAcl properties.
951    """
952    full = 0
953    noAcl = 1
954
955  bucket = _messages.StringField(1, required=True)
956  ifMetagenerationMatch = _messages.IntegerField(2)
957  ifMetagenerationNotMatch = _messages.IntegerField(3)
958  projection = _messages.EnumField('ProjectionValueValuesEnum', 4)
959
960
961class StorageBucketsInsertRequest(_messages.Message):
962  r"""A StorageBucketsInsertRequest object.
963
964  Enums:
965    PredefinedAclValueValuesEnum: Apply a predefined set of access controls to
966      this bucket.
967    PredefinedDefaultObjectAclValueValuesEnum: Apply a predefined set of
968      default object access controls to this bucket.
969    ProjectionValueValuesEnum: Set of properties to return. Defaults to noAcl,
970      unless the bucket resource specifies acl or defaultObjectAcl properties,
971      when it defaults to full.
972
973  Fields:
974    bucket: A Bucket resource to be passed as the request body.
975    predefinedAcl: Apply a predefined set of access controls to this bucket.
976    predefinedDefaultObjectAcl: Apply a predefined set of default object
977      access controls to this bucket.
978    project: A valid API project identifier.
979    projection: Set of properties to return. Defaults to noAcl, unless the
980      bucket resource specifies acl or defaultObjectAcl properties, when it
981      defaults to full.
982  """
983
984  class PredefinedAclValueValuesEnum(_messages.Enum):
985    r"""Apply a predefined set of access controls to this bucket.
986
987    Values:
988      authenticatedRead: Project team owners get OWNER access, and
989        allAuthenticatedUsers get READER access.
990      private: Project team owners get OWNER access.
991      projectPrivate: Project team members get access according to their
992        roles.
993      publicRead: Project team owners get OWNER access, and allUsers get
994        READER access.
995      publicReadWrite: Project team owners get OWNER access, and allUsers get
996        WRITER access.
997    """
998    authenticatedRead = 0
999    private = 1
1000    projectPrivate = 2
1001    publicRead = 3
1002    publicReadWrite = 4
1003
1004  class PredefinedDefaultObjectAclValueValuesEnum(_messages.Enum):
1005    r"""Apply a predefined set of default object access controls to this
1006    bucket.
1007
1008    Values:
1009      authenticatedRead: Object owner gets OWNER access, and
1010        allAuthenticatedUsers get READER access.
1011      bucketOwnerFullControl: Object owner gets OWNER access, and project team
1012        owners get OWNER access.
1013      bucketOwnerRead: Object owner gets OWNER access, and project team owners
1014        get READER access.
1015      private: Object owner gets OWNER access.
1016      projectPrivate: Object owner gets OWNER access, and project team members
1017        get access according to their roles.
1018      publicRead: Object owner gets OWNER access, and allUsers get READER
1019        access.
1020    """
1021    authenticatedRead = 0
1022    bucketOwnerFullControl = 1
1023    bucketOwnerRead = 2
1024    private = 3
1025    projectPrivate = 4
1026    publicRead = 5
1027
1028  class ProjectionValueValuesEnum(_messages.Enum):
1029    r"""Set of properties to return. Defaults to noAcl, unless the bucket
1030    resource specifies acl or defaultObjectAcl properties, when it defaults to
1031    full.
1032
1033    Values:
1034      full: Include all properties.
1035      noAcl: Omit owner, acl and defaultObjectAcl properties.
1036    """
1037    full = 0
1038    noAcl = 1
1039
1040  bucket = _messages.MessageField('Bucket', 1)
1041  predefinedAcl = _messages.EnumField('PredefinedAclValueValuesEnum', 2)
1042  predefinedDefaultObjectAcl = _messages.EnumField('PredefinedDefaultObjectAclValueValuesEnum', 3)
1043  project = _messages.StringField(4, required=True)
1044  projection = _messages.EnumField('ProjectionValueValuesEnum', 5)
1045
1046
1047class StorageBucketsListRequest(_messages.Message):
1048  r"""A StorageBucketsListRequest object.
1049
1050  Enums:
1051    ProjectionValueValuesEnum: Set of properties to return. Defaults to noAcl.
1052
1053  Fields:
1054    maxResults: Maximum number of buckets to return.
1055    pageToken: A previously-returned page token representing part of the
1056      larger set of results to view.
1057    prefix: Filter results to buckets whose names begin with this prefix.
1058    project: A valid API project identifier.
1059    projection: Set of properties to return. Defaults to noAcl.
1060  """
1061
1062  class ProjectionValueValuesEnum(_messages.Enum):
1063    r"""Set of properties to return. Defaults to noAcl.
1064
1065    Values:
1066      full: Include all properties.
1067      noAcl: Omit owner, acl and defaultObjectAcl properties.
1068    """
1069    full = 0
1070    noAcl = 1
1071
1072  maxResults = _messages.IntegerField(1, variant=_messages.Variant.UINT32)
1073  pageToken = _messages.StringField(2)
1074  prefix = _messages.StringField(3)
1075  project = _messages.StringField(4, required=True)
1076  projection = _messages.EnumField('ProjectionValueValuesEnum', 5)
1077
1078
1079class StorageBucketsPatchRequest(_messages.Message):
1080  r"""A StorageBucketsPatchRequest object.
1081
1082  Enums:
1083    PredefinedAclValueValuesEnum: Apply a predefined set of access controls to
1084      this bucket.
1085    PredefinedDefaultObjectAclValueValuesEnum: Apply a predefined set of
1086      default object access controls to this bucket.
1087    ProjectionValueValuesEnum: Set of properties to return. Defaults to full.
1088
1089  Fields:
1090    bucket: Name of a bucket.
1091    bucketResource: A Bucket resource to be passed as the request body.
1092    ifMetagenerationMatch: Makes the return of the bucket metadata conditional
1093      on whether the bucket's current metageneration matches the given value.
1094    ifMetagenerationNotMatch: Makes the return of the bucket metadata
1095      conditional on whether the bucket's current metageneration does not
1096      match the given value.
1097    predefinedAcl: Apply a predefined set of access controls to this bucket.
1098    predefinedDefaultObjectAcl: Apply a predefined set of default object
1099      access controls to this bucket.
1100    projection: Set of properties to return. Defaults to full.
1101  """
1102
1103  class PredefinedAclValueValuesEnum(_messages.Enum):
1104    r"""Apply a predefined set of access controls to this bucket.
1105
1106    Values:
1107      authenticatedRead: Project team owners get OWNER access, and
1108        allAuthenticatedUsers get READER access.
1109      private: Project team owners get OWNER access.
1110      projectPrivate: Project team members get access according to their
1111        roles.
1112      publicRead: Project team owners get OWNER access, and allUsers get
1113        READER access.
1114      publicReadWrite: Project team owners get OWNER access, and allUsers get
1115        WRITER access.
1116    """
1117    authenticatedRead = 0
1118    private = 1
1119    projectPrivate = 2
1120    publicRead = 3
1121    publicReadWrite = 4
1122
1123  class PredefinedDefaultObjectAclValueValuesEnum(_messages.Enum):
1124    r"""Apply a predefined set of default object access controls to this
1125    bucket.
1126
1127    Values:
1128      authenticatedRead: Object owner gets OWNER access, and
1129        allAuthenticatedUsers get READER access.
1130      bucketOwnerFullControl: Object owner gets OWNER access, and project team
1131        owners get OWNER access.
1132      bucketOwnerRead: Object owner gets OWNER access, and project team owners
1133        get READER access.
1134      private: Object owner gets OWNER access.
1135      projectPrivate: Object owner gets OWNER access, and project team members
1136        get access according to their roles.
1137      publicRead: Object owner gets OWNER access, and allUsers get READER
1138        access.
1139    """
1140    authenticatedRead = 0
1141    bucketOwnerFullControl = 1
1142    bucketOwnerRead = 2
1143    private = 3
1144    projectPrivate = 4
1145    publicRead = 5
1146
1147  class ProjectionValueValuesEnum(_messages.Enum):
1148    r"""Set of properties to return. Defaults to full.
1149
1150    Values:
1151      full: Include all properties.
1152      noAcl: Omit owner, acl and defaultObjectAcl properties.
1153    """
1154    full = 0
1155    noAcl = 1
1156
1157  bucket = _messages.StringField(1, required=True)
1158  bucketResource = _messages.MessageField('Bucket', 2)
1159  ifMetagenerationMatch = _messages.IntegerField(3)
1160  ifMetagenerationNotMatch = _messages.IntegerField(4)
1161  predefinedAcl = _messages.EnumField('PredefinedAclValueValuesEnum', 5)
1162  predefinedDefaultObjectAcl = _messages.EnumField('PredefinedDefaultObjectAclValueValuesEnum', 6)
1163  projection = _messages.EnumField('ProjectionValueValuesEnum', 7)
1164
1165
1166class StorageBucketsSetIamPolicyRequest(_messages.Message):
1167  r"""A StorageBucketsSetIamPolicyRequest object.
1168
1169  Fields:
1170    bucket: Name of a bucket.
1171    policy: A Policy resource to be passed as the request body.
1172  """
1173
1174  bucket = _messages.StringField(1, required=True)
1175  policy = _messages.MessageField('Policy', 2)
1176
1177
1178class StorageBucketsTestIamPermissionsRequest(_messages.Message):
1179  r"""A StorageBucketsTestIamPermissionsRequest object.
1180
1181  Fields:
1182    bucket: Name of a bucket.
1183    permissions: Permissions to test.
1184  """
1185
1186  bucket = _messages.StringField(1, required=True)
1187  permissions = _messages.StringField(2, required=True)
1188
1189
1190class StorageBucketsUpdateRequest(_messages.Message):
1191  r"""A StorageBucketsUpdateRequest object.
1192
1193  Enums:
1194    PredefinedAclValueValuesEnum: Apply a predefined set of access controls to
1195      this bucket.
1196    PredefinedDefaultObjectAclValueValuesEnum: Apply a predefined set of
1197      default object access controls to this bucket.
1198    ProjectionValueValuesEnum: Set of properties to return. Defaults to full.
1199
1200  Fields:
1201    bucket: Name of a bucket.
1202    bucketResource: A Bucket resource to be passed as the request body.
1203    ifMetagenerationMatch: Makes the return of the bucket metadata conditional
1204      on whether the bucket's current metageneration matches the given value.
1205    ifMetagenerationNotMatch: Makes the return of the bucket metadata
1206      conditional on whether the bucket's current metageneration does not
1207      match the given value.
1208    predefinedAcl: Apply a predefined set of access controls to this bucket.
1209    predefinedDefaultObjectAcl: Apply a predefined set of default object
1210      access controls to this bucket.
1211    projection: Set of properties to return. Defaults to full.
1212  """
1213
1214  class PredefinedAclValueValuesEnum(_messages.Enum):
1215    r"""Apply a predefined set of access controls to this bucket.
1216
1217    Values:
1218      authenticatedRead: Project team owners get OWNER access, and
1219        allAuthenticatedUsers get READER access.
1220      private: Project team owners get OWNER access.
1221      projectPrivate: Project team members get access according to their
1222        roles.
1223      publicRead: Project team owners get OWNER access, and allUsers get
1224        READER access.
1225      publicReadWrite: Project team owners get OWNER access, and allUsers get
1226        WRITER access.
1227    """
1228    authenticatedRead = 0
1229    private = 1
1230    projectPrivate = 2
1231    publicRead = 3
1232    publicReadWrite = 4
1233
1234  class PredefinedDefaultObjectAclValueValuesEnum(_messages.Enum):
1235    r"""Apply a predefined set of default object access controls to this
1236    bucket.
1237
1238    Values:
1239      authenticatedRead: Object owner gets OWNER access, and
1240        allAuthenticatedUsers get READER access.
1241      bucketOwnerFullControl: Object owner gets OWNER access, and project team
1242        owners get OWNER access.
1243      bucketOwnerRead: Object owner gets OWNER access, and project team owners
1244        get READER access.
1245      private: Object owner gets OWNER access.
1246      projectPrivate: Object owner gets OWNER access, and project team members
1247        get access according to their roles.
1248      publicRead: Object owner gets OWNER access, and allUsers get READER
1249        access.
1250    """
1251    authenticatedRead = 0
1252    bucketOwnerFullControl = 1
1253    bucketOwnerRead = 2
1254    private = 3
1255    projectPrivate = 4
1256    publicRead = 5
1257
1258  class ProjectionValueValuesEnum(_messages.Enum):
1259    r"""Set of properties to return. Defaults to full.
1260
1261    Values:
1262      full: Include all properties.
1263      noAcl: Omit owner, acl and defaultObjectAcl properties.
1264    """
1265    full = 0
1266    noAcl = 1
1267
1268  bucket = _messages.StringField(1, required=True)
1269  bucketResource = _messages.MessageField('Bucket', 2)
1270  ifMetagenerationMatch = _messages.IntegerField(3)
1271  ifMetagenerationNotMatch = _messages.IntegerField(4)
1272  predefinedAcl = _messages.EnumField('PredefinedAclValueValuesEnum', 5)
1273  predefinedDefaultObjectAcl = _messages.EnumField('PredefinedDefaultObjectAclValueValuesEnum', 6)
1274  projection = _messages.EnumField('ProjectionValueValuesEnum', 7)
1275
1276
1277class StorageChannelsStopResponse(_messages.Message):
1278  r"""An empty StorageChannelsStop response."""
1279
1280
1281class StorageDefaultObjectAccessControlsDeleteRequest(_messages.Message):
1282  r"""A StorageDefaultObjectAccessControlsDeleteRequest object.
1283
1284  Fields:
1285    bucket: Name of a bucket.
1286    entity: The entity holding the permission. Can be user-userId, user-
1287      emailAddress, group-groupId, group-emailAddress, allUsers, or
1288      allAuthenticatedUsers.
1289  """
1290
1291  bucket = _messages.StringField(1, required=True)
1292  entity = _messages.StringField(2, required=True)
1293
1294
1295class StorageDefaultObjectAccessControlsDeleteResponse(_messages.Message):
1296  r"""An empty StorageDefaultObjectAccessControlsDelete response."""
1297
1298
1299class StorageDefaultObjectAccessControlsGetRequest(_messages.Message):
1300  r"""A StorageDefaultObjectAccessControlsGetRequest object.
1301
1302  Fields:
1303    bucket: Name of a bucket.
1304    entity: The entity holding the permission. Can be user-userId, user-
1305      emailAddress, group-groupId, group-emailAddress, allUsers, or
1306      allAuthenticatedUsers.
1307  """
1308
1309  bucket = _messages.StringField(1, required=True)
1310  entity = _messages.StringField(2, required=True)
1311
1312
1313class StorageDefaultObjectAccessControlsListRequest(_messages.Message):
1314  r"""A StorageDefaultObjectAccessControlsListRequest object.
1315
1316  Fields:
1317    bucket: Name of a bucket.
1318    ifMetagenerationMatch: If present, only return default ACL listing if the
1319      bucket's current metageneration matches this value.
1320    ifMetagenerationNotMatch: If present, only return default ACL listing if
1321      the bucket's current metageneration does not match the given value.
1322  """
1323
1324  bucket = _messages.StringField(1, required=True)
1325  ifMetagenerationMatch = _messages.IntegerField(2)
1326  ifMetagenerationNotMatch = _messages.IntegerField(3)
1327
1328
1329class StorageNotificationsDeleteRequest(_messages.Message):
1330  r"""A StorageNotificationsDeleteRequest object.
1331
1332  Fields:
1333    notification: ID of the notification to delete.
1334  """
1335
1336  notification = _messages.StringField(1, required=True)
1337
1338
1339class StorageNotificationsDeleteResponse(_messages.Message):
1340  r"""An empty StorageNotificationsDelete response."""
1341
1342
1343class StorageNotificationsGetRequest(_messages.Message):
1344  r"""A StorageNotificationsGetRequest object.
1345
1346  Fields:
1347    notification: Notification ID
1348  """
1349
1350  notification = _messages.StringField(1, required=True)
1351
1352
1353class StorageNotificationsListRequest(_messages.Message):
1354  r"""A StorageNotificationsListRequest object.
1355
1356  Fields:
1357    bucket: Name of a GCS bucket.
1358  """
1359
1360  bucket = _messages.StringField(1, required=True)
1361
1362
1363class StorageObjectAccessControlsDeleteRequest(_messages.Message):
1364  r"""A StorageObjectAccessControlsDeleteRequest object.
1365
1366  Fields:
1367    bucket: Name of a bucket.
1368    entity: The entity holding the permission. Can be user-userId, user-
1369      emailAddress, group-groupId, group-emailAddress, allUsers, or
1370      allAuthenticatedUsers.
1371    generation: If present, selects a specific revision of this object (as
1372      opposed to the latest version, the default).
1373    object: Name of the object. For information about how to URL encode object
1374      names to be path safe, see Encoding URI Path Parts.
1375  """
1376
1377  bucket = _messages.StringField(1, required=True)
1378  entity = _messages.StringField(2, required=True)
1379  generation = _messages.IntegerField(3)
1380  object = _messages.StringField(4, required=True)
1381
1382
1383class StorageObjectAccessControlsDeleteResponse(_messages.Message):
1384  r"""An empty StorageObjectAccessControlsDelete response."""
1385
1386
1387class StorageObjectAccessControlsGetRequest(_messages.Message):
1388  r"""A StorageObjectAccessControlsGetRequest object.
1389
1390  Fields:
1391    bucket: Name of a bucket.
1392    entity: The entity holding the permission. Can be user-userId, user-
1393      emailAddress, group-groupId, group-emailAddress, allUsers, or
1394      allAuthenticatedUsers.
1395    generation: If present, selects a specific revision of this object (as
1396      opposed to the latest version, the default).
1397    object: Name of the object. For information about how to URL encode object
1398      names to be path safe, see Encoding URI Path Parts.
1399  """
1400
1401  bucket = _messages.StringField(1, required=True)
1402  entity = _messages.StringField(2, required=True)
1403  generation = _messages.IntegerField(3)
1404  object = _messages.StringField(4, required=True)
1405
1406
1407class StorageObjectAccessControlsInsertRequest(_messages.Message):
1408  r"""A StorageObjectAccessControlsInsertRequest object.
1409
1410  Fields:
1411    bucket: Name of a bucket.
1412    generation: If present, selects a specific revision of this object (as
1413      opposed to the latest version, the default).
1414    object: Name of the object. For information about how to URL encode object
1415      names to be path safe, see Encoding URI Path Parts.
1416    objectAccessControl: A ObjectAccessControl resource to be passed as the
1417      request body.
1418  """
1419
1420  bucket = _messages.StringField(1, required=True)
1421  generation = _messages.IntegerField(2)
1422  object = _messages.StringField(3, required=True)
1423  objectAccessControl = _messages.MessageField('ObjectAccessControl', 4)
1424
1425
1426class StorageObjectAccessControlsListRequest(_messages.Message):
1427  r"""A StorageObjectAccessControlsListRequest object.
1428
1429  Fields:
1430    bucket: Name of a bucket.
1431    generation: If present, selects a specific revision of this object (as
1432      opposed to the latest version, the default).
1433    object: Name of the object. For information about how to URL encode object
1434      names to be path safe, see Encoding URI Path Parts.
1435  """
1436
1437  bucket = _messages.StringField(1, required=True)
1438  generation = _messages.IntegerField(2)
1439  object = _messages.StringField(3, required=True)
1440
1441
1442class StorageObjectAccessControlsPatchRequest(_messages.Message):
1443  r"""A StorageObjectAccessControlsPatchRequest object.
1444
1445  Fields:
1446    bucket: Name of a bucket.
1447    entity: The entity holding the permission. Can be user-userId, user-
1448      emailAddress, group-groupId, group-emailAddress, allUsers, or
1449      allAuthenticatedUsers.
1450    generation: If present, selects a specific revision of this object (as
1451      opposed to the latest version, the default).
1452    object: Name of the object. For information about how to URL encode object
1453      names to be path safe, see Encoding URI Path Parts.
1454    objectAccessControl: A ObjectAccessControl resource to be passed as the
1455      request body.
1456  """
1457
1458  bucket = _messages.StringField(1, required=True)
1459  entity = _messages.StringField(2, required=True)
1460  generation = _messages.IntegerField(3)
1461  object = _messages.StringField(4, required=True)
1462  objectAccessControl = _messages.MessageField('ObjectAccessControl', 5)
1463
1464
1465class StorageObjectAccessControlsUpdateRequest(_messages.Message):
1466  r"""A StorageObjectAccessControlsUpdateRequest object.
1467
1468  Fields:
1469    bucket: Name of a bucket.
1470    entity: The entity holding the permission. Can be user-userId, user-
1471      emailAddress, group-groupId, group-emailAddress, allUsers, or
1472      allAuthenticatedUsers.
1473    generation: If present, selects a specific revision of this object (as
1474      opposed to the latest version, the default).
1475    object: Name of the object. For information about how to URL encode object
1476      names to be path safe, see Encoding URI Path Parts.
1477    objectAccessControl: A ObjectAccessControl resource to be passed as the
1478      request body.
1479  """
1480
1481  bucket = _messages.StringField(1, required=True)
1482  entity = _messages.StringField(2, required=True)
1483  generation = _messages.IntegerField(3)
1484  object = _messages.StringField(4, required=True)
1485  objectAccessControl = _messages.MessageField('ObjectAccessControl', 5)
1486
1487
1488class StorageObjectsComposeRequest(_messages.Message):
1489  r"""A StorageObjectsComposeRequest object.
1490
1491  Enums:
1492    DestinationPredefinedAclValueValuesEnum: Apply a predefined set of access
1493      controls to the destination object.
1494
1495  Fields:
1496    composeRequest: A ComposeRequest resource to be passed as the request
1497      body.
1498    destinationBucket: Name of the bucket in which to store the new object.
1499    destinationObject: Name of the new object. For information about how to
1500      URL encode object names to be path safe, see Encoding URI Path Parts.
1501    destinationPredefinedAcl: Apply a predefined set of access controls to the
1502      destination object.
1503    ifGenerationMatch: Makes the operation conditional on whether the object's
1504      current generation matches the given value.
1505    ifMetagenerationMatch: Makes the operation conditional on whether the
1506      object's current metageneration matches the given value.
1507  """
1508
1509  class DestinationPredefinedAclValueValuesEnum(_messages.Enum):
1510    r"""Apply a predefined set of access controls to the destination object.
1511
1512    Values:
1513      authenticatedRead: Object owner gets OWNER access, and
1514        allAuthenticatedUsers get READER access.
1515      bucketOwnerFullControl: Object owner gets OWNER access, and project team
1516        owners get OWNER access.
1517      bucketOwnerRead: Object owner gets OWNER access, and project team owners
1518        get READER access.
1519      private: Object owner gets OWNER access.
1520      projectPrivate: Object owner gets OWNER access, and project team members
1521        get access according to their roles.
1522      publicRead: Object owner gets OWNER access, and allUsers get READER
1523        access.
1524    """
1525    authenticatedRead = 0
1526    bucketOwnerFullControl = 1
1527    bucketOwnerRead = 2
1528    private = 3
1529    projectPrivate = 4
1530    publicRead = 5
1531
1532  composeRequest = _messages.MessageField('ComposeRequest', 1)
1533  destinationBucket = _messages.StringField(2, required=True)
1534  destinationObject = _messages.StringField(3, required=True)
1535  destinationPredefinedAcl = _messages.EnumField('DestinationPredefinedAclValueValuesEnum', 4)
1536  ifGenerationMatch = _messages.IntegerField(5)
1537  ifMetagenerationMatch = _messages.IntegerField(6)
1538
1539
1540class StorageObjectsCopyRequest(_messages.Message):
1541  r"""A StorageObjectsCopyRequest object.
1542
1543  Enums:
1544    DestinationPredefinedAclValueValuesEnum: Apply a predefined set of access
1545      controls to the destination object.
1546    ProjectionValueValuesEnum: Set of properties to return. Defaults to noAcl,
1547      unless the object resource specifies the acl property, when it defaults
1548      to full.
1549
1550  Fields:
1551    destinationBucket: Name of the bucket in which to store the new object.
1552      Overrides the provided object metadata's bucket value, if any.For
1553      information about how to URL encode object names to be path safe, see
1554      Encoding URI Path Parts.
1555    destinationObject: Name of the new object. Required when the object
1556      metadata is not otherwise provided. Overrides the object metadata's name
1557      value, if any.
1558    destinationPredefinedAcl: Apply a predefined set of access controls to the
1559      destination object.
1560    ifGenerationMatch: Makes the operation conditional on whether the
1561      destination object's current generation matches the given value.
1562    ifGenerationNotMatch: Makes the operation conditional on whether the
1563      destination object's current generation does not match the given value.
1564    ifMetagenerationMatch: Makes the operation conditional on whether the
1565      destination object's current metageneration matches the given value.
1566    ifMetagenerationNotMatch: Makes the operation conditional on whether the
1567      destination object's current metageneration does not match the given
1568      value.
1569    ifSourceGenerationMatch: Makes the operation conditional on whether the
1570      source object's generation matches the given value.
1571    ifSourceGenerationNotMatch: Makes the operation conditional on whether the
1572      source object's generation does not match the given value.
1573    ifSourceMetagenerationMatch: Makes the operation conditional on whether
1574      the source object's current metageneration matches the given value.
1575    ifSourceMetagenerationNotMatch: Makes the operation conditional on whether
1576      the source object's current metageneration does not match the given
1577      value.
1578    object: A Object resource to be passed as the request body.
1579    projection: Set of properties to return. Defaults to noAcl, unless the
1580      object resource specifies the acl property, when it defaults to full.
1581    sourceBucket: Name of the bucket in which to find the source object.
1582    sourceGeneration: If present, selects a specific revision of the source
1583      object (as opposed to the latest version, the default).
1584    sourceObject: Name of the source object. For information about how to URL
1585      encode object names to be path safe, see Encoding URI Path Parts.
1586  """
1587
1588  class DestinationPredefinedAclValueValuesEnum(_messages.Enum):
1589    r"""Apply a predefined set of access controls to the destination object.
1590
1591    Values:
1592      authenticatedRead: Object owner gets OWNER access, and
1593        allAuthenticatedUsers get READER access.
1594      bucketOwnerFullControl: Object owner gets OWNER access, and project team
1595        owners get OWNER access.
1596      bucketOwnerRead: Object owner gets OWNER access, and project team owners
1597        get READER access.
1598      private: Object owner gets OWNER access.
1599      projectPrivate: Object owner gets OWNER access, and project team members
1600        get access according to their roles.
1601      publicRead: Object owner gets OWNER access, and allUsers get READER
1602        access.
1603    """
1604    authenticatedRead = 0
1605    bucketOwnerFullControl = 1
1606    bucketOwnerRead = 2
1607    private = 3
1608    projectPrivate = 4
1609    publicRead = 5
1610
1611  class ProjectionValueValuesEnum(_messages.Enum):
1612    r"""Set of properties to return. Defaults to noAcl, unless the object
1613    resource specifies the acl property, when it defaults to full.
1614
1615    Values:
1616      full: Include all properties.
1617      noAcl: Omit the owner, acl property.
1618    """
1619    full = 0
1620    noAcl = 1
1621
1622  destinationBucket = _messages.StringField(1, required=True)
1623  destinationObject = _messages.StringField(2, required=True)
1624  destinationPredefinedAcl = _messages.EnumField('DestinationPredefinedAclValueValuesEnum', 3)
1625  ifGenerationMatch = _messages.IntegerField(4)
1626  ifGenerationNotMatch = _messages.IntegerField(5)
1627  ifMetagenerationMatch = _messages.IntegerField(6)
1628  ifMetagenerationNotMatch = _messages.IntegerField(7)
1629  ifSourceGenerationMatch = _messages.IntegerField(8)
1630  ifSourceGenerationNotMatch = _messages.IntegerField(9)
1631  ifSourceMetagenerationMatch = _messages.IntegerField(10)
1632  ifSourceMetagenerationNotMatch = _messages.IntegerField(11)
1633  object = _messages.MessageField('Object', 12)
1634  projection = _messages.EnumField('ProjectionValueValuesEnum', 13)
1635  sourceBucket = _messages.StringField(14, required=True)
1636  sourceGeneration = _messages.IntegerField(15)
1637  sourceObject = _messages.StringField(16, required=True)
1638
1639
1640class StorageObjectsDeleteRequest(_messages.Message):
1641  r"""A StorageObjectsDeleteRequest object.
1642
1643  Fields:
1644    bucket: Name of the bucket in which the object resides.
1645    generation: If present, permanently deletes a specific revision of this
1646      object (as opposed to the latest version, the default).
1647    ifGenerationMatch: Makes the operation conditional on whether the object's
1648      current generation matches the given value.
1649    ifGenerationNotMatch: Makes the operation conditional on whether the
1650      object's current generation does not match the given value.
1651    ifMetagenerationMatch: Makes the operation conditional on whether the
1652      object's current metageneration matches the given value.
1653    ifMetagenerationNotMatch: Makes the operation conditional on whether the
1654      object's current metageneration does not match the given value.
1655    object: Name of the object. For information about how to URL encode object
1656      names to be path safe, see Encoding URI Path Parts.
1657  """
1658
1659  bucket = _messages.StringField(1, required=True)
1660  generation = _messages.IntegerField(2)
1661  ifGenerationMatch = _messages.IntegerField(3)
1662  ifGenerationNotMatch = _messages.IntegerField(4)
1663  ifMetagenerationMatch = _messages.IntegerField(5)
1664  ifMetagenerationNotMatch = _messages.IntegerField(6)
1665  object = _messages.StringField(7, required=True)
1666
1667
1668class StorageObjectsDeleteResponse(_messages.Message):
1669  r"""An empty StorageObjectsDelete response."""
1670
1671
1672class StorageObjectsGetIamPolicyRequest(_messages.Message):
1673  r"""A StorageObjectsGetIamPolicyRequest object.
1674
1675  Fields:
1676    bucket: Name of the bucket in which the object resides.
1677    generation: If present, selects a specific revision of this object (as
1678      opposed to the latest version, the default).
1679    object: Name of the object. For information about how to URL encode object
1680      names to be path safe, see Encoding URI Path Parts.
1681  """
1682
1683  bucket = _messages.StringField(1, required=True)
1684  generation = _messages.IntegerField(2)
1685  object = _messages.StringField(3, required=True)
1686
1687
1688class StorageObjectsGetRequest(_messages.Message):
1689  r"""A StorageObjectsGetRequest object.
1690
1691  Enums:
1692    ProjectionValueValuesEnum: Set of properties to return. Defaults to noAcl.
1693
1694  Fields:
1695    bucket: Name of the bucket in which the object resides.
1696    generation: If present, selects a specific revision of this object (as
1697      opposed to the latest version, the default).
1698    ifGenerationMatch: Makes the operation conditional on whether the object's
1699      generation matches the given value.
1700    ifGenerationNotMatch: Makes the operation conditional on whether the
1701      object's generation does not match the given value.
1702    ifMetagenerationMatch: Makes the operation conditional on whether the
1703      object's current metageneration matches the given value.
1704    ifMetagenerationNotMatch: Makes the operation conditional on whether the
1705      object's current metageneration does not match the given value.
1706    object: Name of the object. For information about how to URL encode object
1707      names to be path safe, see Encoding URI Path Parts.
1708    projection: Set of properties to return. Defaults to noAcl.
1709  """
1710
1711  class ProjectionValueValuesEnum(_messages.Enum):
1712    r"""Set of properties to return. Defaults to noAcl.
1713
1714    Values:
1715      full: Include all properties.
1716      noAcl: Omit the owner, acl property.
1717    """
1718    full = 0
1719    noAcl = 1
1720
1721  bucket = _messages.StringField(1, required=True)
1722  generation = _messages.IntegerField(2)
1723  ifGenerationMatch = _messages.IntegerField(3)
1724  ifGenerationNotMatch = _messages.IntegerField(4)
1725  ifMetagenerationMatch = _messages.IntegerField(5)
1726  ifMetagenerationNotMatch = _messages.IntegerField(6)
1727  object = _messages.StringField(7, required=True)
1728  projection = _messages.EnumField('ProjectionValueValuesEnum', 8)
1729
1730
1731class StorageObjectsInsertRequest(_messages.Message):
1732  r"""A StorageObjectsInsertRequest object.
1733
1734  Enums:
1735    PredefinedAclValueValuesEnum: Apply a predefined set of access controls to
1736      this object.
1737    ProjectionValueValuesEnum: Set of properties to return. Defaults to noAcl,
1738      unless the object resource specifies the acl property, when it defaults
1739      to full.
1740
1741  Fields:
1742    bucket: Name of the bucket in which to store the new object. Overrides the
1743      provided object metadata's bucket value, if any.
1744    contentEncoding: If set, sets the contentEncoding property of the final
1745      object to this value. Setting this parameter is equivalent to setting
1746      the contentEncoding metadata property. This can be useful when uploading
1747      an object with uploadType=media to indicate the encoding of the content
1748      being uploaded.
1749    ifGenerationMatch: Makes the operation conditional on whether the object's
1750      current generation matches the given value.
1751    ifGenerationNotMatch: Makes the operation conditional on whether the
1752      object's current generation does not match the given value.
1753    ifMetagenerationMatch: Makes the operation conditional on whether the
1754      object's current metageneration matches the given value.
1755    ifMetagenerationNotMatch: Makes the operation conditional on whether the
1756      object's current metageneration does not match the given value.
1757    name: Name of the object. Required when the object metadata is not
1758      otherwise provided. Overrides the object metadata's name value, if any.
1759      For information about how to URL encode object names to be path safe,
1760      see Encoding URI Path Parts.
1761    object: A Object resource to be passed as the request body.
1762    predefinedAcl: Apply a predefined set of access controls to this object.
1763    projection: Set of properties to return. Defaults to noAcl, unless the
1764      object resource specifies the acl property, when it defaults to full.
1765  """
1766
1767  class PredefinedAclValueValuesEnum(_messages.Enum):
1768    r"""Apply a predefined set of access controls to this object.
1769
1770    Values:
1771      authenticatedRead: Object owner gets OWNER access, and
1772        allAuthenticatedUsers get READER access.
1773      bucketOwnerFullControl: Object owner gets OWNER access, and project team
1774        owners get OWNER access.
1775      bucketOwnerRead: Object owner gets OWNER access, and project team owners
1776        get READER access.
1777      private: Object owner gets OWNER access.
1778      projectPrivate: Object owner gets OWNER access, and project team members
1779        get access according to their roles.
1780      publicRead: Object owner gets OWNER access, and allUsers get READER
1781        access.
1782    """
1783    authenticatedRead = 0
1784    bucketOwnerFullControl = 1
1785    bucketOwnerRead = 2
1786    private = 3
1787    projectPrivate = 4
1788    publicRead = 5
1789
1790  class ProjectionValueValuesEnum(_messages.Enum):
1791    r"""Set of properties to return. Defaults to noAcl, unless the object
1792    resource specifies the acl property, when it defaults to full.
1793
1794    Values:
1795      full: Include all properties.
1796      noAcl: Omit the owner, acl property.
1797    """
1798    full = 0
1799    noAcl = 1
1800
1801  bucket = _messages.StringField(1, required=True)
1802  contentEncoding = _messages.StringField(2)
1803  ifGenerationMatch = _messages.IntegerField(3)
1804  ifGenerationNotMatch = _messages.IntegerField(4)
1805  ifMetagenerationMatch = _messages.IntegerField(5)
1806  ifMetagenerationNotMatch = _messages.IntegerField(6)
1807  name = _messages.StringField(7)
1808  object = _messages.MessageField('Object', 8)
1809  predefinedAcl = _messages.EnumField('PredefinedAclValueValuesEnum', 9)
1810  projection = _messages.EnumField('ProjectionValueValuesEnum', 10)
1811
1812
1813class StorageObjectsListRequest(_messages.Message):
1814  r"""A StorageObjectsListRequest object.
1815
1816  Enums:
1817    ProjectionValueValuesEnum: Set of properties to return. Defaults to noAcl.
1818
1819  Fields:
1820    bucket: Name of the bucket in which to look for objects.
1821    delimiter: Returns results in a directory-like mode. items will contain
1822      only objects whose names, aside from the prefix, do not contain
1823      delimiter. Objects whose names, aside from the prefix, contain delimiter
1824      will have their name, truncated after the delimiter, returned in
1825      prefixes. Duplicate prefixes are omitted.
1826    maxResults: Maximum number of items plus prefixes to return. As duplicate
1827      prefixes are omitted, fewer total results may be returned than
1828      requested. The default value of this parameter is 1,000 items.
1829    pageToken: A previously-returned page token representing part of the
1830      larger set of results to view.
1831    prefix: Filter results to objects whose names begin with this prefix.
1832    projection: Set of properties to return. Defaults to noAcl.
1833    versions: If true, lists all versions of an object as distinct results.
1834      The default is false. For more information, see Object Versioning.
1835  """
1836
1837  class ProjectionValueValuesEnum(_messages.Enum):
1838    r"""Set of properties to return. Defaults to noAcl.
1839
1840    Values:
1841      full: Include all properties.
1842      noAcl: Omit the owner, acl property.
1843    """
1844    full = 0
1845    noAcl = 1
1846
1847  bucket = _messages.StringField(1, required=True)
1848  delimiter = _messages.StringField(2)
1849  maxResults = _messages.IntegerField(3, variant=_messages.Variant.UINT32)
1850  pageToken = _messages.StringField(4)
1851  prefix = _messages.StringField(5)
1852  projection = _messages.EnumField('ProjectionValueValuesEnum', 6)
1853  versions = _messages.BooleanField(7)
1854
1855
1856class StorageObjectsPatchRequest(_messages.Message):
1857  r"""A StorageObjectsPatchRequest object.
1858
1859  Enums:
1860    PredefinedAclValueValuesEnum: Apply a predefined set of access controls to
1861      this object.
1862    ProjectionValueValuesEnum: Set of properties to return. Defaults to full.
1863
1864  Fields:
1865    bucket: Name of the bucket in which the object resides.
1866    generation: If present, selects a specific revision of this object (as
1867      opposed to the latest version, the default).
1868    ifGenerationMatch: Makes the operation conditional on whether the object's
1869      current generation matches the given value.
1870    ifGenerationNotMatch: Makes the operation conditional on whether the
1871      object's current generation does not match the given value.
1872    ifMetagenerationMatch: Makes the operation conditional on whether the
1873      object's current metageneration matches the given value.
1874    ifMetagenerationNotMatch: Makes the operation conditional on whether the
1875      object's current metageneration does not match the given value.
1876    object: Name of the object. For information about how to URL encode object
1877      names to be path safe, see Encoding URI Path Parts.
1878    objectResource: A Object resource to be passed as the request body.
1879    predefinedAcl: Apply a predefined set of access controls to this object.
1880    projection: Set of properties to return. Defaults to full.
1881  """
1882
1883  class PredefinedAclValueValuesEnum(_messages.Enum):
1884    r"""Apply a predefined set of access controls to this object.
1885
1886    Values:
1887      authenticatedRead: Object owner gets OWNER access, and
1888        allAuthenticatedUsers get READER access.
1889      bucketOwnerFullControl: Object owner gets OWNER access, and project team
1890        owners get OWNER access.
1891      bucketOwnerRead: Object owner gets OWNER access, and project team owners
1892        get READER access.
1893      private: Object owner gets OWNER access.
1894      projectPrivate: Object owner gets OWNER access, and project team members
1895        get access according to their roles.
1896      publicRead: Object owner gets OWNER access, and allUsers get READER
1897        access.
1898    """
1899    authenticatedRead = 0
1900    bucketOwnerFullControl = 1
1901    bucketOwnerRead = 2
1902    private = 3
1903    projectPrivate = 4
1904    publicRead = 5
1905
1906  class ProjectionValueValuesEnum(_messages.Enum):
1907    r"""Set of properties to return. Defaults to full.
1908
1909    Values:
1910      full: Include all properties.
1911      noAcl: Omit the owner, acl property.
1912    """
1913    full = 0
1914    noAcl = 1
1915
1916  bucket = _messages.StringField(1, required=True)
1917  generation = _messages.IntegerField(2)
1918  ifGenerationMatch = _messages.IntegerField(3)
1919  ifGenerationNotMatch = _messages.IntegerField(4)
1920  ifMetagenerationMatch = _messages.IntegerField(5)
1921  ifMetagenerationNotMatch = _messages.IntegerField(6)
1922  object = _messages.StringField(7, required=True)
1923  objectResource = _messages.MessageField('Object', 8)
1924  predefinedAcl = _messages.EnumField('PredefinedAclValueValuesEnum', 9)
1925  projection = _messages.EnumField('ProjectionValueValuesEnum', 10)
1926
1927
1928class StorageObjectsRewriteRequest(_messages.Message):
1929  r"""A StorageObjectsRewriteRequest object.
1930
1931  Enums:
1932    DestinationPredefinedAclValueValuesEnum: Apply a predefined set of access
1933      controls to the destination object.
1934    ProjectionValueValuesEnum: Set of properties to return. Defaults to noAcl,
1935      unless the object resource specifies the acl property, when it defaults
1936      to full.
1937
1938  Fields:
1939    destinationBucket: Name of the bucket in which to store the new object.
1940      Overrides the provided object metadata's bucket value, if any.
1941    destinationObject: Name of the new object. Required when the object
1942      metadata is not otherwise provided. Overrides the object metadata's name
1943      value, if any. For information about how to URL encode object names to
1944      be path safe, see Encoding URI Path Parts.
1945    destinationPredefinedAcl: Apply a predefined set of access controls to the
1946      destination object.
1947    ifGenerationMatch: Makes the operation conditional on whether the
1948      destination object's current generation matches the given value.
1949    ifGenerationNotMatch: Makes the operation conditional on whether the
1950      destination object's current generation does not match the given value.
1951    ifMetagenerationMatch: Makes the operation conditional on whether the
1952      destination object's current metageneration matches the given value.
1953    ifMetagenerationNotMatch: Makes the operation conditional on whether the
1954      destination object's current metageneration does not match the given
1955      value.
1956    ifSourceGenerationMatch: Makes the operation conditional on whether the
1957      source object's generation matches the given value.
1958    ifSourceGenerationNotMatch: Makes the operation conditional on whether the
1959      source object's generation does not match the given value.
1960    ifSourceMetagenerationMatch: Makes the operation conditional on whether
1961      the source object's current metageneration matches the given value.
1962    ifSourceMetagenerationNotMatch: Makes the operation conditional on whether
1963      the source object's current metageneration does not match the given
1964      value.
1965    maxBytesRewrittenPerCall: The maximum number of bytes that will be
1966      rewritten per rewrite request. Most callers shouldn't need to specify
1967      this parameter - it is primarily in place to support testing. If
1968      specified the value must be an integral multiple of 1 MiB (1048576).
1969      Also, this only applies to requests where the source and destination
1970      span locations and/or storage classes. Finally, this value must not
1971      change across rewrite calls else you'll get an error that the
1972      rewriteToken is invalid.
1973    object: A Object resource to be passed as the request body.
1974    projection: Set of properties to return. Defaults to noAcl, unless the
1975      object resource specifies the acl property, when it defaults to full.
1976    rewriteToken: Include this field (from the previous rewrite response) on
1977      each rewrite request after the first one, until the rewrite response
1978      'done' flag is true. Calls that provide a rewriteToken can omit all
1979      other request fields, but if included those fields must match the values
1980      provided in the first rewrite request.
1981    sourceBucket: Name of the bucket in which to find the source object.
1982    sourceGeneration: If present, selects a specific revision of the source
1983      object (as opposed to the latest version, the default).
1984    sourceObject: Name of the source object. For information about how to URL
1985      encode object names to be path safe, see Encoding URI Path Parts.
1986  """
1987
1988  class DestinationPredefinedAclValueValuesEnum(_messages.Enum):
1989    r"""Apply a predefined set of access controls to the destination object.
1990
1991    Values:
1992      authenticatedRead: Object owner gets OWNER access, and
1993        allAuthenticatedUsers get READER access.
1994      bucketOwnerFullControl: Object owner gets OWNER access, and project team
1995        owners get OWNER access.
1996      bucketOwnerRead: Object owner gets OWNER access, and project team owners
1997        get READER access.
1998      private: Object owner gets OWNER access.
1999      projectPrivate: Object owner gets OWNER access, and project team members
2000        get access according to their roles.
2001      publicRead: Object owner gets OWNER access, and allUsers get READER
2002        access.
2003    """
2004    authenticatedRead = 0
2005    bucketOwnerFullControl = 1
2006    bucketOwnerRead = 2
2007    private = 3
2008    projectPrivate = 4
2009    publicRead = 5
2010
2011  class ProjectionValueValuesEnum(_messages.Enum):
2012    r"""Set of properties to return. Defaults to noAcl, unless the object
2013    resource specifies the acl property, when it defaults to full.
2014
2015    Values:
2016      full: Include all properties.
2017      noAcl: Omit the owner, acl property.
2018    """
2019    full = 0
2020    noAcl = 1
2021
2022  destinationBucket = _messages.StringField(1, required=True)
2023  destinationObject = _messages.StringField(2, required=True)
2024  destinationPredefinedAcl = _messages.EnumField('DestinationPredefinedAclValueValuesEnum', 3)
2025  ifGenerationMatch = _messages.IntegerField(4)
2026  ifGenerationNotMatch = _messages.IntegerField(5)
2027  ifMetagenerationMatch = _messages.IntegerField(6)
2028  ifMetagenerationNotMatch = _messages.IntegerField(7)
2029  ifSourceGenerationMatch = _messages.IntegerField(8)
2030  ifSourceGenerationNotMatch = _messages.IntegerField(9)
2031  ifSourceMetagenerationMatch = _messages.IntegerField(10)
2032  ifSourceMetagenerationNotMatch = _messages.IntegerField(11)
2033  maxBytesRewrittenPerCall = _messages.IntegerField(12)
2034  object = _messages.MessageField('Object', 13)
2035  projection = _messages.EnumField('ProjectionValueValuesEnum', 14)
2036  rewriteToken = _messages.StringField(15)
2037  sourceBucket = _messages.StringField(16, required=True)
2038  sourceGeneration = _messages.IntegerField(17)
2039  sourceObject = _messages.StringField(18, required=True)
2040
2041
2042class StorageObjectsSetIamPolicyRequest(_messages.Message):
2043  r"""A StorageObjectsSetIamPolicyRequest object.
2044
2045  Fields:
2046    bucket: Name of the bucket in which the object resides.
2047    generation: If present, selects a specific revision of this object (as
2048      opposed to the latest version, the default).
2049    object: Name of the object. For information about how to URL encode object
2050      names to be path safe, see Encoding URI Path Parts.
2051    policy: A Policy resource to be passed as the request body.
2052  """
2053
2054  bucket = _messages.StringField(1, required=True)
2055  generation = _messages.IntegerField(2)
2056  object = _messages.StringField(3, required=True)
2057  policy = _messages.MessageField('Policy', 4)
2058
2059
2060class StorageObjectsTestIamPermissionsRequest(_messages.Message):
2061  r"""A StorageObjectsTestIamPermissionsRequest object.
2062
2063  Fields:
2064    bucket: Name of the bucket in which the object resides.
2065    generation: If present, selects a specific revision of this object (as
2066      opposed to the latest version, the default).
2067    object: Name of the object. For information about how to URL encode object
2068      names to be path safe, see Encoding URI Path Parts.
2069    permissions: Permissions to test.
2070  """
2071
2072  bucket = _messages.StringField(1, required=True)
2073  generation = _messages.IntegerField(2)
2074  object = _messages.StringField(3, required=True)
2075  permissions = _messages.StringField(4, required=True)
2076
2077
2078class StorageObjectsUpdateRequest(_messages.Message):
2079  r"""A StorageObjectsUpdateRequest object.
2080
2081  Enums:
2082    PredefinedAclValueValuesEnum: Apply a predefined set of access controls to
2083      this object.
2084    ProjectionValueValuesEnum: Set of properties to return. Defaults to full.
2085
2086  Fields:
2087    bucket: Name of the bucket in which the object resides.
2088    generation: If present, selects a specific revision of this object (as
2089      opposed to the latest version, the default).
2090    ifGenerationMatch: Makes the operation conditional on whether the object's
2091      current generation matches the given value.
2092    ifGenerationNotMatch: Makes the operation conditional on whether the
2093      object's current generation does not match the given value.
2094    ifMetagenerationMatch: Makes the operation conditional on whether the
2095      object's current metageneration matches the given value.
2096    ifMetagenerationNotMatch: Makes the operation conditional on whether the
2097      object's current metageneration does not match the given value.
2098    object: Name of the object. For information about how to URL encode object
2099      names to be path safe, see Encoding URI Path Parts.
2100    objectResource: A Object resource to be passed as the request body.
2101    predefinedAcl: Apply a predefined set of access controls to this object.
2102    projection: Set of properties to return. Defaults to full.
2103  """
2104
2105  class PredefinedAclValueValuesEnum(_messages.Enum):
2106    r"""Apply a predefined set of access controls to this object.
2107
2108    Values:
2109      authenticatedRead: Object owner gets OWNER access, and
2110        allAuthenticatedUsers get READER access.
2111      bucketOwnerFullControl: Object owner gets OWNER access, and project team
2112        owners get OWNER access.
2113      bucketOwnerRead: Object owner gets OWNER access, and project team owners
2114        get READER access.
2115      private: Object owner gets OWNER access.
2116      projectPrivate: Object owner gets OWNER access, and project team members
2117        get access according to their roles.
2118      publicRead: Object owner gets OWNER access, and allUsers get READER
2119        access.
2120    """
2121    authenticatedRead = 0
2122    bucketOwnerFullControl = 1
2123    bucketOwnerRead = 2
2124    private = 3
2125    projectPrivate = 4
2126    publicRead = 5
2127
2128  class ProjectionValueValuesEnum(_messages.Enum):
2129    r"""Set of properties to return. Defaults to full.
2130
2131    Values:
2132      full: Include all properties.
2133      noAcl: Omit the owner, acl property.
2134    """
2135    full = 0
2136    noAcl = 1
2137
2138  bucket = _messages.StringField(1, required=True)
2139  generation = _messages.IntegerField(2)
2140  ifGenerationMatch = _messages.IntegerField(3)
2141  ifGenerationNotMatch = _messages.IntegerField(4)
2142  ifMetagenerationMatch = _messages.IntegerField(5)
2143  ifMetagenerationNotMatch = _messages.IntegerField(6)
2144  object = _messages.StringField(7, required=True)
2145  objectResource = _messages.MessageField('Object', 8)
2146  predefinedAcl = _messages.EnumField('PredefinedAclValueValuesEnum', 9)
2147  projection = _messages.EnumField('ProjectionValueValuesEnum', 10)
2148
2149
2150class StorageObjectsWatchAllRequest(_messages.Message):
2151  r"""A StorageObjectsWatchAllRequest object.
2152
2153  Enums:
2154    ProjectionValueValuesEnum: Set of properties to return. Defaults to noAcl.
2155
2156  Fields:
2157    bucket: Name of the bucket in which to look for objects.
2158    channel: A Channel resource to be passed as the request body.
2159    delimiter: Returns results in a directory-like mode. items will contain
2160      only objects whose names, aside from the prefix, do not contain
2161      delimiter. Objects whose names, aside from the prefix, contain delimiter
2162      will have their name, truncated after the delimiter, returned in
2163      prefixes. Duplicate prefixes are omitted.
2164    maxResults: Maximum number of items plus prefixes to return. As duplicate
2165      prefixes are omitted, fewer total results may be returned than
2166      requested. The default value of this parameter is 1,000 items.
2167    pageToken: A previously-returned page token representing part of the
2168      larger set of results to view.
2169    prefix: Filter results to objects whose names begin with this prefix.
2170    projection: Set of properties to return. Defaults to noAcl.
2171    versions: If true, lists all versions of an object as distinct results.
2172      The default is false. For more information, see Object Versioning.
2173  """
2174
2175  class ProjectionValueValuesEnum(_messages.Enum):
2176    r"""Set of properties to return. Defaults to noAcl.
2177
2178    Values:
2179      full: Include all properties.
2180      noAcl: Omit the owner, acl property.
2181    """
2182    full = 0
2183    noAcl = 1
2184
2185  bucket = _messages.StringField(1, required=True)
2186  channel = _messages.MessageField('Channel', 2)
2187  delimiter = _messages.StringField(3)
2188  maxResults = _messages.IntegerField(4, variant=_messages.Variant.UINT32)
2189  pageToken = _messages.StringField(5)
2190  prefix = _messages.StringField(6)
2191  projection = _messages.EnumField('ProjectionValueValuesEnum', 7)
2192  versions = _messages.BooleanField(8)
2193
2194
2195class TestIamPermissionsResponse(_messages.Message):
2196  r"""A storage.(buckets|objects).testIamPermissions response.
2197
2198  Fields:
2199    kind: The kind of item this is.
2200    permissions: The permissions held by the caller. Permissions are always of
2201      the format storage.resource.capability, where resource is one of buckets
2202      or objects. The supported permissions are as follows:   -
2203      storage.buckets.delete - Delete bucket.   - storage.buckets.get - Read
2204      bucket metadata.   - storage.buckets.getIamPolicy - Read bucket IAM
2205      policy.   - storage.buckets.create - Create bucket.   -
2206      storage.buckets.list - List buckets.   - storage.buckets.setIamPolicy -
2207      Update bucket IAM policy.   - storage.buckets.update - Update bucket
2208      metadata.   - storage.objects.delete - Delete object.   -
2209      storage.objects.get - Read object data and metadata.   -
2210      storage.objects.getIamPolicy - Read object IAM policy.   -
2211      storage.objects.create - Create object.   - storage.objects.list - List
2212      objects.   - storage.objects.setIamPolicy - Update object IAM policy.
2213      - storage.objects.update - Update object metadata.
2214  """
2215
2216  kind = _messages.StringField(1, default=u'storage#testIamPermissionsResponse')
2217  permissions = _messages.StringField(2, repeated=True)
2218
2219
2220