google-api-client 0.9.20 → 0.9.21

Sign up to get free protection for your applications and to get access to all the features.
Files changed (159) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +8 -4
  3. data/api_names.yaml +33179 -1058
  4. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  5. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  6. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +24 -6
  7. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +2 -0
  8. data/generated/google/apis/admin_directory_v1.rb +1 -1
  9. data/generated/google/apis/admin_directory_v1/classes.rb +14 -0
  10. data/generated/google/apis/admin_directory_v1/representations.rb +2 -0
  11. data/generated/google/apis/adsense_v1_4.rb +1 -1
  12. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  13. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  14. data/generated/google/apis/analyticsreporting_v4/classes.rb +7 -0
  15. data/generated/google/apis/analyticsreporting_v4/representations.rb +1 -0
  16. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  17. data/generated/google/apis/androidenterprise_v1/classes.rb +96 -156
  18. data/generated/google/apis/androidenterprise_v1/representations.rb +18 -47
  19. data/generated/google/apis/androidenterprise_v1/service.rb +15 -459
  20. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  21. data/generated/google/apis/androidpublisher_v2/classes.rb +176 -0
  22. data/generated/google/apis/androidpublisher_v2/representations.rb +62 -0
  23. data/generated/google/apis/androidpublisher_v2/service.rb +60 -2
  24. data/generated/google/apis/appengine_v1beta5.rb +1 -1
  25. data/generated/google/apis/appengine_v1beta5/classes.rb +300 -198
  26. data/generated/google/apis/appengine_v1beta5/representations.rb +36 -0
  27. data/generated/google/apis/appengine_v1beta5/service.rb +54 -49
  28. data/generated/google/apis/appsactivity_v1.rb +1 -1
  29. data/generated/google/apis/appstate_v1.rb +1 -1
  30. data/generated/google/apis/bigquery_v2.rb +1 -1
  31. data/generated/google/apis/bigquery_v2/classes.rb +50 -6
  32. data/generated/google/apis/bigquery_v2/representations.rb +5 -0
  33. data/generated/google/apis/books_v1.rb +1 -1
  34. data/generated/google/apis/books_v1/classes.rb +7 -2
  35. data/generated/google/apis/books_v1/representations.rb +1 -0
  36. data/generated/google/apis/calendar_v3.rb +1 -1
  37. data/generated/google/apis/classroom_v1.rb +1 -1
  38. data/generated/google/apis/classroom_v1/classes.rb +74 -74
  39. data/generated/google/apis/classroom_v1/representations.rb +29 -29
  40. data/generated/google/apis/classroom_v1/service.rb +132 -28
  41. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  42. data/generated/google/apis/cloudbuild_v1/classes.rb +47 -27
  43. data/generated/google/apis/cloudbuild_v1/representations.rb +20 -7
  44. data/generated/google/apis/cloudbuild_v1/service.rb +42 -0
  45. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  46. data/generated/google/apis/clouddebugger_v2/classes.rb +648 -578
  47. data/generated/google/apis/clouddebugger_v2/representations.rb +140 -140
  48. data/generated/google/apis/clouddebugger_v2/service.rb +161 -155
  49. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  50. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +563 -423
  51. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +116 -76
  52. data/generated/google/apis/cloudresourcemanager_v1/service.rb +318 -249
  53. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  54. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +396 -331
  55. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +79 -79
  56. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +317 -281
  57. data/generated/google/apis/compute_beta.rb +1 -1
  58. data/generated/google/apis/compute_beta/classes.rb +352 -80
  59. data/generated/google/apis/compute_beta/representations.rb +132 -19
  60. data/generated/google/apis/compute_beta/service.rb +214 -0
  61. data/generated/google/apis/compute_v1.rb +1 -1
  62. data/generated/google/apis/compute_v1/classes.rb +673 -73
  63. data/generated/google/apis/compute_v1/representations.rb +274 -9
  64. data/generated/google/apis/compute_v1/service.rb +1574 -2
  65. data/generated/google/apis/content_v2.rb +1 -1
  66. data/generated/google/apis/content_v2/classes.rb +7 -8
  67. data/generated/google/apis/content_v2/service.rb +125 -54
  68. data/generated/google/apis/dataflow_v1b3.rb +2 -3
  69. data/generated/google/apis/dataflow_v1b3/classes.rb +286 -114
  70. data/generated/google/apis/dataflow_v1b3/representations.rb +73 -0
  71. data/generated/google/apis/dataflow_v1b3/service.rb +37 -38
  72. data/generated/google/apis/datastore_v1.rb +1 -1
  73. data/generated/google/apis/datastore_v1/classes.rb +5 -0
  74. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  75. data/generated/google/apis/deploymentmanager_v2/classes.rb +37 -5
  76. data/generated/google/apis/deploymentmanager_v2/representations.rb +16 -0
  77. data/generated/google/apis/deploymentmanager_v2/service.rb +4 -1
  78. data/generated/google/apis/dns_v1.rb +1 -1
  79. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  80. data/generated/google/apis/drive_v2.rb +1 -1
  81. data/generated/google/apis/drive_v2/classes.rb +55 -21
  82. data/generated/google/apis/drive_v2/representations.rb +2 -0
  83. data/generated/google/apis/drive_v3.rb +1 -1
  84. data/generated/google/apis/drive_v3/classes.rb +41 -12
  85. data/generated/google/apis/drive_v3/representations.rb +2 -0
  86. data/generated/google/apis/fitness_v1.rb +31 -1
  87. data/generated/google/apis/fitness_v1/classes.rb +1 -1
  88. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  89. data/generated/google/apis/games_management_v1management.rb +1 -1
  90. data/generated/google/apis/games_v1.rb +1 -1
  91. data/generated/google/apis/gmail_v1.rb +1 -1
  92. data/generated/google/apis/gmail_v1/classes.rb +32 -1
  93. data/generated/google/apis/gmail_v1/representations.rb +15 -0
  94. data/generated/google/apis/gmail_v1/service.rb +41 -2
  95. data/generated/google/apis/identitytoolkit_v3.rb +4 -1
  96. data/generated/google/apis/identitytoolkit_v3/classes.rb +7 -0
  97. data/generated/google/apis/identitytoolkit_v3/representations.rb +1 -0
  98. data/generated/google/apis/kgsearch_v1.rb +2 -3
  99. data/generated/google/apis/kgsearch_v1/classes.rb +10 -10
  100. data/generated/google/apis/kgsearch_v1/representations.rb +2 -2
  101. data/generated/google/apis/kgsearch_v1/service.rb +28 -26
  102. data/generated/google/apis/language_v1beta1.rb +1 -1
  103. data/generated/google/apis/language_v1beta1/classes.rb +166 -8
  104. data/generated/google/apis/language_v1beta1/representations.rb +50 -0
  105. data/generated/google/apis/language_v1beta1/service.rb +32 -0
  106. data/generated/google/apis/logging_v2beta1.rb +6 -6
  107. data/generated/google/apis/logging_v2beta1/classes.rb +868 -789
  108. data/generated/google/apis/logging_v2beta1/representations.rb +179 -147
  109. data/generated/google/apis/logging_v2beta1/service.rb +378 -211
  110. data/generated/google/apis/monitoring_v3.rb +1 -1
  111. data/generated/google/apis/monitoring_v3/classes.rb +110 -112
  112. data/generated/google/apis/monitoring_v3/service.rb +68 -73
  113. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  114. data/generated/google/apis/plus_domains_v1.rb +1 -1
  115. data/generated/google/apis/plus_v1.rb +1 -1
  116. data/generated/google/apis/pubsub_v1.rb +1 -1
  117. data/generated/google/apis/pubsub_v1/classes.rb +380 -327
  118. data/generated/google/apis/pubsub_v1/representations.rb +79 -79
  119. data/generated/google/apis/pubsub_v1/service.rb +424 -396
  120. data/generated/google/apis/sheets_v4.rb +1 -1
  121. data/generated/google/apis/sheets_v4/classes.rb +175 -53
  122. data/generated/google/apis/sheets_v4/representations.rb +48 -13
  123. data/generated/google/apis/site_verification_v1.rb +1 -1
  124. data/generated/google/apis/slides_v1.rb +1 -1
  125. data/generated/google/apis/slides_v1/classes.rb +149 -31
  126. data/generated/google/apis/slides_v1/representations.rb +52 -9
  127. data/generated/google/apis/slides_v1/service.rb +5 -5
  128. data/generated/google/apis/speech_v1beta1.rb +1 -1
  129. data/generated/google/apis/speech_v1beta1/service.rb +3 -1
  130. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  131. data/generated/google/apis/sqladmin_v1beta4/classes.rb +54 -2
  132. data/generated/google/apis/sqladmin_v1beta4/representations.rb +29 -0
  133. data/generated/google/apis/sqladmin_v1beta4/service.rb +41 -0
  134. data/generated/google/apis/storage_v1.rb +1 -1
  135. data/generated/google/apis/storage_v1/classes.rb +7 -0
  136. data/generated/google/apis/storage_v1/representations.rb +2 -0
  137. data/generated/google/apis/tagmanager_v1.rb +5 -5
  138. data/generated/google/apis/vision_v1.rb +1 -1
  139. data/generated/google/apis/vision_v1/classes.rb +63 -59
  140. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  141. data/generated/google/apis/youtube_analytics_v1/classes.rb +0 -209
  142. data/generated/google/apis/youtube_analytics_v1/representations.rb +0 -99
  143. data/generated/google/apis/youtube_analytics_v1/service.rb +0 -76
  144. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  145. data/generated/google/apis/youtube_partner_v1/classes.rb +71 -0
  146. data/generated/google/apis/youtube_partner_v1/representations.rb +33 -0
  147. data/generated/google/apis/youtube_partner_v1/service.rb +52 -0
  148. data/generated/google/apis/youtube_v3.rb +1 -1
  149. data/generated/google/apis/youtube_v3/classes.rb +15 -2
  150. data/generated/google/apis/youtube_v3/representations.rb +3 -0
  151. data/generated/google/apis/youtube_v3/service.rb +4 -4
  152. data/generated/google/apis/youtubereporting_v1.rb +4 -4
  153. data/generated/google/apis/youtubereporting_v1/classes.rb +146 -137
  154. data/generated/google/apis/youtubereporting_v1/representations.rb +33 -33
  155. data/generated/google/apis/youtubereporting_v1/service.rb +149 -145
  156. data/lib/google/apis/version.rb +1 -1
  157. data/samples/cli/lib/samples/calendar.rb +1 -1
  158. data/samples/cli/lib/samples/gmail.rb +74 -0
  159. metadata +29 -29
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/resource-manager
27
27
  module CloudresourcemanagerV1beta1
28
28
  VERSION = 'V1beta1'
29
- REVISION = '20160927'
29
+ REVISION = '20170116'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -22,95 +22,14 @@ module Google
22
22
  module Apis
23
23
  module CloudresourcemanagerV1beta1
24
24
 
25
- # A Project is a high-level Google Cloud Platform entity. It is a container for
26
- # ACLs, APIs, AppEngine Apps, VMs, and other Google Cloud Platform resources.
27
- class Project
28
- include Google::Apis::Core::Hashable
29
-
30
- # The number uniquely identifying the project. Example: 415104041262 Read-only.
31
- # Corresponds to the JSON property `projectNumber`
32
- # @return [String]
33
- attr_accessor :project_number
34
-
35
- # The unique, user-assigned ID of the Project. It must be 6 to 30 lowercase
36
- # letters, digits, or hyphens. It must start with a letter. Trailing hyphens are
37
- # prohibited. Example: tokyo-rain-123 Read-only after creation.
38
- # Corresponds to the JSON property `projectId`
39
- # @return [String]
40
- attr_accessor :project_id
41
-
42
- # The Project lifecycle state. Read-only.
43
- # Corresponds to the JSON property `lifecycleState`
44
- # @return [String]
45
- attr_accessor :lifecycle_state
46
-
47
- # The user-assigned display name of the Project. It must be 4 to 30 characters.
48
- # Allowed characters are: lowercase and uppercase letters, numbers, hyphen,
49
- # single-quote, double-quote, space, and exclamation point. Example: My Project
50
- # Read-write.
51
- # Corresponds to the JSON property `name`
52
- # @return [String]
53
- attr_accessor :name
54
-
55
- # Creation time. Read-only.
56
- # Corresponds to the JSON property `createTime`
57
- # @return [String]
58
- attr_accessor :create_time
59
-
60
- # The labels associated with this Project. Label keys must be between 1 and 63
61
- # characters long and must conform to the following regular expression: \[a-z\](\
62
- # [-a-z0-9\]*\[a-z0-9\])?. Label values must be between 0 and 63 characters long
63
- # and must conform to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
64
- # No more than 256 labels can be associated with a given resource. Clients
65
- # should store labels in a representation such as JSON that does not depend on
66
- # specific characters being disallowed. Example: "environment" : "dev" Read-
67
- # write.
68
- # Corresponds to the JSON property `labels`
69
- # @return [Hash<String,String>]
70
- attr_accessor :labels
71
-
72
- # A container to reference an id for any resource type. A `resource` in Google
73
- # Cloud Platform is a generic term for something you (a developer) may want to
74
- # interact with through one of our API's. Some examples are an AppEngine app, a
75
- # Compute Engine instance, a Cloud SQL database, and so on.
76
- # Corresponds to the JSON property `parent`
77
- # @return [Google::Apis::CloudresourcemanagerV1beta1::ResourceId]
78
- attr_accessor :parent
79
-
80
- def initialize(**args)
81
- update!(**args)
82
- end
83
-
84
- # Update properties of this object
85
- def update!(**args)
86
- @project_number = args[:project_number] if args.key?(:project_number)
87
- @project_id = args[:project_id] if args.key?(:project_id)
88
- @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
89
- @name = args[:name] if args.key?(:name)
90
- @create_time = args[:create_time] if args.key?(:create_time)
91
- @labels = args[:labels] if args.key?(:labels)
92
- @parent = args[:parent] if args.key?(:parent)
93
- end
94
- end
95
-
96
- # A container to reference an id for any resource type. A `resource` in Google
97
- # Cloud Platform is a generic term for something you (a developer) may want to
98
- # interact with through one of our API's. Some examples are an AppEngine app, a
99
- # Compute Engine instance, a Cloud SQL database, and so on.
100
- class ResourceId
25
+ # A classification of the Folder Operation error.
26
+ class FolderOperationError
101
27
  include Google::Apis::Core::Hashable
102
28
 
103
- # Required field representing the resource type this id is for. At present, the
104
- # valid types are "project" and "organization".
105
- # Corresponds to the JSON property `type`
106
- # @return [String]
107
- attr_accessor :type
108
-
109
- # Required field for the type-specific id. This should correspond to the id used
110
- # in the type-specific API's.
111
- # Corresponds to the JSON property `id`
29
+ # The type of operation error experienced.
30
+ # Corresponds to the JSON property `errorMessageId`
112
31
  # @return [String]
113
- attr_accessor :id
32
+ attr_accessor :error_message_id
114
33
 
115
34
  def initialize(**args)
116
35
  update!(**args)
@@ -118,27 +37,32 @@ module Google
118
37
 
119
38
  # Update properties of this object
120
39
  def update!(**args)
121
- @type = args[:type] if args.key?(:type)
122
- @id = args[:id] if args.key?(:id)
40
+ @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
123
41
  end
124
42
  end
125
43
 
126
- # A page of the response received from the ListProjects method. A paginated
127
- # response where more pages are available has `next_page_token` set. This token
128
- # can be used in a subsequent request to retrieve the next request page.
44
+ # A page of the response received from the
45
+ # ListProjects
46
+ # method.
47
+ # A paginated response where more pages are available has
48
+ # `next_page_token` set. This token can be used in a subsequent request to
49
+ # retrieve the next request page.
129
50
  class ListProjectsResponse
130
51
  include Google::Apis::Core::Hashable
131
52
 
132
- # The list of Projects that matched the list filter. This list can be paginated.
53
+ # The list of Projects that matched the list filter. This list can
54
+ # be paginated.
133
55
  # Corresponds to the JSON property `projects`
134
56
  # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::Project>]
135
57
  attr_accessor :projects
136
58
 
137
- # Pagination token. If the result set is too large to fit in a single response,
138
- # this token is returned. It encodes the position of the current result cursor.
59
+ # Pagination token.
60
+ # If the result set is too large to fit in a single response, this token
61
+ # is returned. It encodes the position of the current result cursor.
139
62
  # Feeding this value into a new list request with the `page_token` parameter
140
- # gives the next page of the results. When `next_page_token` is not filled in,
141
- # there is no next page and the list returned is the last page in the result set.
63
+ # gives the next page of the results.
64
+ # When `next_page_token` is not filled in, there is no next page and
65
+ # the list returned is the last page in the result set.
142
66
  # Pagination tokens have a limited lifetime.
143
67
  # Corresponds to the JSON property `nextPageToken`
144
68
  # @return [String]
@@ -155,12 +79,9 @@ module Google
155
79
  end
156
80
  end
157
81
 
158
- # A generic empty message that you can re-use to avoid defining duplicated empty
159
- # messages in your APIs. A typical example is to use it as the request or the
160
- # response type of an API method. For instance: service Foo ` rpc Bar(google.
161
- # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
162
- # `Empty` is empty JSON object ````.
163
- class Empty
82
+ # The request sent to the UndeleteProject
83
+ # method.
84
+ class UndeleteProjectRequest
164
85
  include Google::Apis::Core::Hashable
165
86
 
166
87
  def initialize(**args)
@@ -172,21 +93,47 @@ module Google
172
93
  end
173
94
  end
174
95
 
175
- # The request sent to the UndeleteProject method.
176
- class UndeleteProjectRequest
96
+ # Metadata describing a long running folder operation
97
+ class FolderOperation
177
98
  include Google::Apis::Core::Hashable
178
99
 
100
+ # The display name of the folder.
101
+ # Corresponds to the JSON property `displayName`
102
+ # @return [String]
103
+ attr_accessor :display_name
104
+
105
+ # The resource name of the folder's parent.
106
+ # Only applicable when the operation_type is MOVE.
107
+ # Corresponds to the JSON property `sourceParent`
108
+ # @return [String]
109
+ attr_accessor :source_parent
110
+
111
+ # The resource name of the folder or organization we are either creating
112
+ # the folder under or moving the folder to.
113
+ # Corresponds to the JSON property `destinationParent`
114
+ # @return [String]
115
+ attr_accessor :destination_parent
116
+
117
+ # The type of this operation.
118
+ # Corresponds to the JSON property `operationType`
119
+ # @return [String]
120
+ attr_accessor :operation_type
121
+
179
122
  def initialize(**args)
180
123
  update!(**args)
181
124
  end
182
125
 
183
126
  # Update properties of this object
184
127
  def update!(**args)
128
+ @display_name = args[:display_name] if args.key?(:display_name)
129
+ @source_parent = args[:source_parent] if args.key?(:source_parent)
130
+ @destination_parent = args[:destination_parent] if args.key?(:destination_parent)
131
+ @operation_type = args[:operation_type] if args.key?(:operation_type)
185
132
  end
186
133
  end
187
134
 
188
- # The request sent to the GetAncestry method.
189
- class GetAncestryRequest
135
+ # Request message for `GetIamPolicy` method.
136
+ class GetIamPolicyRequest
190
137
  include Google::Apis::Core::Hashable
191
138
 
192
139
  def initialize(**args)
@@ -198,15 +145,39 @@ module Google
198
145
  end
199
146
  end
200
147
 
201
- # Response from the GetAncestry method.
202
- class GetAncestryResponse
148
+ # Request message for `SetIamPolicy` method.
149
+ class SetIamPolicyRequest
203
150
  include Google::Apis::Core::Hashable
204
151
 
205
- # Ancestors are ordered from bottom to top of the resource hierarchy. The first
206
- # ancestor is the project itself, followed by the project's parent, etc.
207
- # Corresponds to the JSON property `ancestor`
208
- # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::Ancestor>]
209
- attr_accessor :ancestor
152
+ # Defines an Identity and Access Management (IAM) policy. It is used to
153
+ # specify access control policies for Cloud Platform resources.
154
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
155
+ # `members` to a `role`, where the members can be user accounts, Google groups,
156
+ # Google domains, and service accounts. A `role` is a named list of permissions
157
+ # defined by IAM.
158
+ # **Example**
159
+ # `
160
+ # "bindings": [
161
+ # `
162
+ # "role": "roles/owner",
163
+ # "members": [
164
+ # "user:mike@example.com",
165
+ # "group:admins@example.com",
166
+ # "domain:google.com",
167
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
168
+ # ]
169
+ # `,
170
+ # `
171
+ # "role": "roles/viewer",
172
+ # "members": ["user:sean@example.com"]
173
+ # `
174
+ # ]
175
+ # `
176
+ # For a description of IAM and its features, see the
177
+ # [IAM developer's guide](https://cloud.google.com/iam).
178
+ # Corresponds to the JSON property `policy`
179
+ # @return [Google::Apis::CloudresourcemanagerV1beta1::Policy]
180
+ attr_accessor :policy
210
181
 
211
182
  def initialize(**args)
212
183
  update!(**args)
@@ -214,21 +185,19 @@ module Google
214
185
 
215
186
  # Update properties of this object
216
187
  def update!(**args)
217
- @ancestor = args[:ancestor] if args.key?(:ancestor)
188
+ @policy = args[:policy] if args.key?(:policy)
218
189
  end
219
190
  end
220
191
 
221
- # Identifying information for a single ancestor of a project.
222
- class Ancestor
192
+ # Response message for `TestIamPermissions` method.
193
+ class TestIamPermissionsResponse
223
194
  include Google::Apis::Core::Hashable
224
195
 
225
- # A container to reference an id for any resource type. A `resource` in Google
226
- # Cloud Platform is a generic term for something you (a developer) may want to
227
- # interact with through one of our API's. Some examples are an AppEngine app, a
228
- # Compute Engine instance, a Cloud SQL database, and so on.
229
- # Corresponds to the JSON property `resourceId`
230
- # @return [Google::Apis::CloudresourcemanagerV1beta1::ResourceId]
231
- attr_accessor :resource_id
196
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
197
+ # allowed.
198
+ # Corresponds to the JSON property `permissions`
199
+ # @return [Array<String>]
200
+ attr_accessor :permissions
232
201
 
233
202
  def initialize(**args)
234
203
  update!(**args)
@@ -236,97 +205,163 @@ module Google
236
205
 
237
206
  # Update properties of this object
238
207
  def update!(**args)
239
- @resource_id = args[:resource_id] if args.key?(:resource_id)
208
+ @permissions = args[:permissions] if args.key?(:permissions)
240
209
  end
241
210
  end
242
211
 
243
- # Request message for `GetIamPolicy` method.
244
- class GetIamPolicyRequest
212
+ # The root node in the resource hierarchy to which a particular entity's
213
+ # (e.g., company) resources belong.
214
+ class Organization
245
215
  include Google::Apis::Core::Hashable
246
216
 
217
+ # The organization's current lifecycle state. Assigned by the server.
218
+ # @OutputOnly
219
+ # Corresponds to the JSON property `lifecycleState`
220
+ # @return [String]
221
+ attr_accessor :lifecycle_state
222
+
223
+ # A friendly string to be used to refer to the Organization in the UI.
224
+ # Assigned by the server, set to the firm name of the Google For Work
225
+ # customer that owns this organization.
226
+ # @OutputOnly
227
+ # Corresponds to the JSON property `displayName`
228
+ # @return [String]
229
+ attr_accessor :display_name
230
+
231
+ # An immutable id for the Organization that is assigned on creation. This
232
+ # should be omitted when creating a new Organization.
233
+ # This field is read-only.
234
+ # This field is deprecated and will be removed in v1. Use name instead.
235
+ # Corresponds to the JSON property `organizationId`
236
+ # @return [String]
237
+ attr_accessor :organization_id
238
+
239
+ # Output Only. The resource name of the organization. This is the
240
+ # organization's relative path in the API. Its format is
241
+ # "organizations/[organization_id]". For example, "organizations/1234".
242
+ # Corresponds to the JSON property `name`
243
+ # @return [String]
244
+ attr_accessor :name
245
+
246
+ # Timestamp when the Organization was created. Assigned by the server.
247
+ # @OutputOnly
248
+ # Corresponds to the JSON property `creationTime`
249
+ # @return [String]
250
+ attr_accessor :creation_time
251
+
252
+ # The entity that owns an Organization. The lifetime of the Organization and
253
+ # all of its descendants are bound to the `OrganizationOwner`. If the
254
+ # `OrganizationOwner` is deleted, the Organization and all its descendants will
255
+ # be deleted.
256
+ # Corresponds to the JSON property `owner`
257
+ # @return [Google::Apis::CloudresourcemanagerV1beta1::OrganizationOwner]
258
+ attr_accessor :owner
259
+
247
260
  def initialize(**args)
248
261
  update!(**args)
249
262
  end
250
263
 
251
264
  # Update properties of this object
252
265
  def update!(**args)
266
+ @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
267
+ @display_name = args[:display_name] if args.key?(:display_name)
268
+ @organization_id = args[:organization_id] if args.key?(:organization_id)
269
+ @name = args[:name] if args.key?(:name)
270
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
271
+ @owner = args[:owner] if args.key?(:owner)
253
272
  end
254
273
  end
255
274
 
256
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
257
- # access control policies for Cloud Platform resources. A `Policy` consists of a
258
- # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
259
- # the members can be user accounts, Google groups, Google domains, and service
260
- # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
261
- # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
262
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
263
- # appspot.gserviceaccount.com", ] `, ` "role": "roles/viewer", "members": ["user:
264
- # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
265
- # IAM developer's guide](https://cloud.google.com/iam).
275
+ # Defines an Identity and Access Management (IAM) policy. It is used to
276
+ # specify access control policies for Cloud Platform resources.
277
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
278
+ # `members` to a `role`, where the members can be user accounts, Google groups,
279
+ # Google domains, and service accounts. A `role` is a named list of permissions
280
+ # defined by IAM.
281
+ # **Example**
282
+ # `
283
+ # "bindings": [
284
+ # `
285
+ # "role": "roles/owner",
286
+ # "members": [
287
+ # "user:mike@example.com",
288
+ # "group:admins@example.com",
289
+ # "domain:google.com",
290
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
291
+ # ]
292
+ # `,
293
+ # `
294
+ # "role": "roles/viewer",
295
+ # "members": ["user:sean@example.com"]
296
+ # `
297
+ # ]
298
+ # `
299
+ # For a description of IAM and its features, see the
300
+ # [IAM developer's guide](https://cloud.google.com/iam).
266
301
  class Policy
267
302
  include Google::Apis::Core::Hashable
268
303
 
269
- # Version of the `Policy`. The default version is 0.
270
- # Corresponds to the JSON property `version`
271
- # @return [Fixnum]
272
- attr_accessor :version
273
-
274
- # Associates a list of `members` to a `role`. Multiple `bindings` must not be
275
- # specified for the same `role`. `bindings` with no members will result in an
276
- # error.
304
+ # Associates a list of `members` to a `role`.
305
+ # Multiple `bindings` must not be specified for the same `role`.
306
+ # `bindings` with no members will result in an error.
277
307
  # Corresponds to the JSON property `bindings`
278
308
  # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::Binding>]
279
309
  attr_accessor :bindings
280
310
 
281
- # `etag` is used for optimistic concurrency control as a way to help prevent
282
- # simultaneous updates of a policy from overwriting each other. It is strongly
283
- # suggested that systems make use of the `etag` in the read-modify-write cycle
284
- # to perform policy updates in order to avoid race conditions: An `etag` is
285
- # returned in the response to `getIamPolicy`, and systems are expected to put
286
- # that etag in the request to `setIamPolicy` to ensure that their change will be
287
- # applied to the same version of the policy. If no `etag` is provided in the
288
- # call to `setIamPolicy`, then the existing policy is overwritten blindly.
311
+ # `etag` is used for optimistic concurrency control as a way to help
312
+ # prevent simultaneous updates of a policy from overwriting each other.
313
+ # It is strongly suggested that systems make use of the `etag` in the
314
+ # read-modify-write cycle to perform policy updates in order to avoid race
315
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
316
+ # systems are expected to put that etag in the request to `setIamPolicy` to
317
+ # ensure that their change will be applied to the same version of the policy.
318
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
319
+ # policy is overwritten blindly.
289
320
  # Corresponds to the JSON property `etag`
290
321
  # @return [String]
291
322
  attr_accessor :etag
292
323
 
324
+ # Version of the `Policy`. The default version is 0.
325
+ # Corresponds to the JSON property `version`
326
+ # @return [Fixnum]
327
+ attr_accessor :version
328
+
293
329
  def initialize(**args)
294
330
  update!(**args)
295
331
  end
296
332
 
297
333
  # Update properties of this object
298
334
  def update!(**args)
299
- @version = args[:version] if args.key?(:version)
300
335
  @bindings = args[:bindings] if args.key?(:bindings)
301
336
  @etag = args[:etag] if args.key?(:etag)
337
+ @version = args[:version] if args.key?(:version)
302
338
  end
303
339
  end
304
340
 
305
- # Associates `members` with a `role`.
306
- class Binding
341
+ # A status object which is used as the `metadata` field for the Operation
342
+ # returned by CreateProject. It provides insight for when significant phases of
343
+ # Project creation have completed.
344
+ class ProjectCreationStatus
307
345
  include Google::Apis::Core::Hashable
308
346
 
309
- # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
310
- # , or `roles/owner`. Required
311
- # Corresponds to the JSON property `role`
312
- # @return [String]
313
- attr_accessor :role
347
+ # True if the project creation process is complete.
348
+ # Corresponds to the JSON property `ready`
349
+ # @return [Boolean]
350
+ attr_accessor :ready
351
+ alias_method :ready?, :ready
314
352
 
315
- # Specifies the identities requesting access for a Cloud Platform resource. `
316
- # members` can have the following values: * `allUsers`: A special identifier
317
- # that represents anyone who is on the internet; with or without a Google
318
- # account. * `allAuthenticatedUsers`: A special identifier that represents
319
- # anyone who is authenticated with a Google account or a service account. * `
320
- # user:`emailid``: An email address that represents a specific Google account.
321
- # For example, `alice@gmail.com` or `joe@example.com`. * `serviceAccount:`
322
- # emailid``: An email address that represents a service account. For example, `
323
- # my-other-app@appspot.gserviceaccount.com`. * `group:`emailid``: An email
324
- # address that represents a Google group. For example, `admins@example.com`. * `
325
- # domain:`domain``: A Google Apps domain name that represents all the users of
326
- # that domain. For example, `google.com` or `example.com`.
327
- # Corresponds to the JSON property `members`
328
- # @return [Array<String>]
329
- attr_accessor :members
353
+ # True if the project can be retrieved using GetProject. No other operations
354
+ # on the project are guaranteed to work until the project creation is
355
+ # complete.
356
+ # Corresponds to the JSON property `gettable`
357
+ # @return [Boolean]
358
+ attr_accessor :gettable
359
+ alias_method :gettable?, :gettable
360
+
361
+ # Creation time of the project creation workflow.
362
+ # Corresponds to the JSON property `createTime`
363
+ # @return [String]
364
+ attr_accessor :create_time
330
365
 
331
366
  def initialize(**args)
332
367
  update!(**args)
@@ -334,28 +369,23 @@ module Google
334
369
 
335
370
  # Update properties of this object
336
371
  def update!(**args)
337
- @role = args[:role] if args.key?(:role)
338
- @members = args[:members] if args.key?(:members)
372
+ @ready = args[:ready] if args.key?(:ready)
373
+ @gettable = args[:gettable] if args.key?(:gettable)
374
+ @create_time = args[:create_time] if args.key?(:create_time)
339
375
  end
340
376
  end
341
377
 
342
- # Request message for `SetIamPolicy` method.
343
- class SetIamPolicyRequest
378
+ # Request message for `TestIamPermissions` method.
379
+ class TestIamPermissionsRequest
344
380
  include Google::Apis::Core::Hashable
345
381
 
346
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
347
- # access control policies for Cloud Platform resources. A `Policy` consists of a
348
- # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
349
- # the members can be user accounts, Google groups, Google domains, and service
350
- # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
351
- # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
352
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
353
- # appspot.gserviceaccount.com", ] `, ` "role": "roles/viewer", "members": ["user:
354
- # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
355
- # IAM developer's guide](https://cloud.google.com/iam).
356
- # Corresponds to the JSON property `policy`
357
- # @return [Google::Apis::CloudresourcemanagerV1beta1::Policy]
358
- attr_accessor :policy
382
+ # The set of permissions to check for the `resource`. Permissions with
383
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
384
+ # information see
385
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
386
+ # Corresponds to the JSON property `permissions`
387
+ # @return [Array<String>]
388
+ attr_accessor :permissions
359
389
 
360
390
  def initialize(**args)
361
391
  update!(**args)
@@ -363,20 +393,27 @@ module Google
363
393
 
364
394
  # Update properties of this object
365
395
  def update!(**args)
366
- @policy = args[:policy] if args.key?(:policy)
396
+ @permissions = args[:permissions] if args.key?(:permissions)
367
397
  end
368
398
  end
369
399
 
370
- # Request message for `TestIamPermissions` method.
371
- class TestIamPermissionsRequest
400
+ # The response returned from the `ListOrganizations` method.
401
+ class ListOrganizationsResponse
372
402
  include Google::Apis::Core::Hashable
373
403
 
374
- # The set of permissions to check for the `resource`. Permissions with wildcards
375
- # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
376
- # Overview](https://cloud.google.com/iam/docs/overview#permissions).
377
- # Corresponds to the JSON property `permissions`
378
- # @return [Array<String>]
379
- attr_accessor :permissions
404
+ # The list of Organizations that matched the list query, possibly paginated.
405
+ # Corresponds to the JSON property `organizations`
406
+ # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::Organization>]
407
+ attr_accessor :organizations
408
+
409
+ # A pagination token to be used to retrieve the next page of results. If the
410
+ # result is too large to fit within the page size specified in the request,
411
+ # this field will be set with a token that can be used to fetch the next page
412
+ # of results. If this field is empty, it indicates that this response
413
+ # contains the last page of results.
414
+ # Corresponds to the JSON property `nextPageToken`
415
+ # @return [String]
416
+ attr_accessor :next_page_token
380
417
 
381
418
  def initialize(**args)
382
419
  update!(**args)
@@ -384,46 +421,36 @@ module Google
384
421
 
385
422
  # Update properties of this object
386
423
  def update!(**args)
387
- @permissions = args[:permissions] if args.key?(:permissions)
424
+ @organizations = args[:organizations] if args.key?(:organizations)
425
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
388
426
  end
389
427
  end
390
428
 
391
- # Response message for `TestIamPermissions` method.
392
- class TestIamPermissionsResponse
429
+ # The request sent to the
430
+ # GetAncestry
431
+ # method.
432
+ class GetAncestryRequest
393
433
  include Google::Apis::Core::Hashable
394
434
 
395
- # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
396
- # Corresponds to the JSON property `permissions`
397
- # @return [Array<String>]
398
- attr_accessor :permissions
399
-
400
435
  def initialize(**args)
401
436
  update!(**args)
402
437
  end
403
438
 
404
439
  # Update properties of this object
405
440
  def update!(**args)
406
- @permissions = args[:permissions] if args.key?(:permissions)
407
441
  end
408
442
  end
409
443
 
410
- # The response returned from the `ListOrganizations` method.
411
- class ListOrganizationsResponse
444
+ # Response from the GetAncestry method.
445
+ class GetAncestryResponse
412
446
  include Google::Apis::Core::Hashable
413
447
 
414
- # The list of Organizations that matched the list query, possibly paginated.
415
- # Corresponds to the JSON property `organizations`
416
- # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::Organization>]
417
- attr_accessor :organizations
418
-
419
- # A pagination token to be used to retrieve the next page of results. If the
420
- # result is too large to fit within the page size specified in the request, this
421
- # field will be set with a token that can be used to fetch the next page of
422
- # results. If this field is empty, it indicates that this response contains the
423
- # last page of results.
424
- # Corresponds to the JSON property `nextPageToken`
425
- # @return [String]
426
- attr_accessor :next_page_token
448
+ # Ancestors are ordered from bottom to top of the resource hierarchy. The
449
+ # first ancestor is the project itself, followed by the project's parent,
450
+ # etc.
451
+ # Corresponds to the JSON property `ancestor`
452
+ # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::Ancestor>]
453
+ attr_accessor :ancestor
427
454
 
428
455
  def initialize(**args)
429
456
  update!(**args)
@@ -431,56 +458,40 @@ module Google
431
458
 
432
459
  # Update properties of this object
433
460
  def update!(**args)
434
- @organizations = args[:organizations] if args.key?(:organizations)
435
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
461
+ @ancestor = args[:ancestor] if args.key?(:ancestor)
436
462
  end
437
463
  end
438
464
 
439
- # The root node in the resource hierarchy to which a particular entity's (e.g.,
440
- # company) resources belong.
441
- class Organization
465
+ # A generic empty message that you can re-use to avoid defining duplicated
466
+ # empty messages in your APIs. A typical example is to use it as the request
467
+ # or the response type of an API method. For instance:
468
+ # service Foo `
469
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
470
+ # `
471
+ # The JSON representation for `Empty` is empty JSON object ````.
472
+ class Empty
442
473
  include Google::Apis::Core::Hashable
443
474
 
444
- # Output Only. The resource name of the organization. This is the organization's
445
- # relative path in the API. Its format is "organizations/[organization_id]". For
446
- # example, "organizations/1234".
447
- # Corresponds to the JSON property `name`
448
- # @return [String]
449
- attr_accessor :name
450
-
451
- # An immutable id for the Organization that is assigned on creation. This should
452
- # be omitted when creating a new Organization. This field is read-only. This
453
- # field is deprecated and will be removed in v1. Use name instead.
454
- # Corresponds to the JSON property `organizationId`
455
- # @return [String]
456
- attr_accessor :organization_id
457
-
458
- # A friendly string to be used to refer to the Organization in the UI. Assigned
459
- # by the server, set to the firm name of the Google For Work customer that owns
460
- # this organization. @OutputOnly
461
- # Corresponds to the JSON property `displayName`
462
- # @return [String]
463
- attr_accessor :display_name
475
+ def initialize(**args)
476
+ update!(**args)
477
+ end
464
478
 
465
- # The entity that owns an Organization. The lifetime of the Organization and all
466
- # of its descendants are bound to the `OrganizationOwner`. If the `
467
- # OrganizationOwner` is deleted, the Organization and all its descendants will
468
- # be deleted.
469
- # Corresponds to the JSON property `owner`
470
- # @return [Google::Apis::CloudresourcemanagerV1beta1::OrganizationOwner]
471
- attr_accessor :owner
479
+ # Update properties of this object
480
+ def update!(**args)
481
+ end
482
+ end
472
483
 
473
- # Timestamp when the Organization was created. Assigned by the server. @
474
- # OutputOnly
475
- # Corresponds to the JSON property `creationTime`
476
- # @return [String]
477
- attr_accessor :creation_time
484
+ # Identifying information for a single ancestor of a project.
485
+ class Ancestor
486
+ include Google::Apis::Core::Hashable
478
487
 
479
- # The organization's current lifecycle state. Assigned by the server. @
480
- # OutputOnly
481
- # Corresponds to the JSON property `lifecycleState`
482
- # @return [String]
483
- attr_accessor :lifecycle_state
488
+ # A container to reference an id for any resource type. A `resource` in Google
489
+ # Cloud Platform is a generic term for something you (a developer) may want to
490
+ # interact with through one of our API's. Some examples are an AppEngine app,
491
+ # a Compute Engine instance, a Cloud SQL database, and so on.
492
+ # Corresponds to the JSON property `resourceId`
493
+ # @return [Google::Apis::CloudresourcemanagerV1beta1::ResourceId]
494
+ attr_accessor :resource_id
484
495
 
485
496
  def initialize(**args)
486
497
  update!(**args)
@@ -488,26 +499,28 @@ module Google
488
499
 
489
500
  # Update properties of this object
490
501
  def update!(**args)
491
- @name = args[:name] if args.key?(:name)
492
- @organization_id = args[:organization_id] if args.key?(:organization_id)
493
- @display_name = args[:display_name] if args.key?(:display_name)
494
- @owner = args[:owner] if args.key?(:owner)
495
- @creation_time = args[:creation_time] if args.key?(:creation_time)
496
- @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
502
+ @resource_id = args[:resource_id] if args.key?(:resource_id)
497
503
  end
498
504
  end
499
505
 
500
- # The entity that owns an Organization. The lifetime of the Organization and all
501
- # of its descendants are bound to the `OrganizationOwner`. If the `
502
- # OrganizationOwner` is deleted, the Organization and all its descendants will
503
- # be deleted.
504
- class OrganizationOwner
506
+ # A container to reference an id for any resource type. A `resource` in Google
507
+ # Cloud Platform is a generic term for something you (a developer) may want to
508
+ # interact with through one of our API's. Some examples are an AppEngine app,
509
+ # a Compute Engine instance, a Cloud SQL database, and so on.
510
+ class ResourceId
505
511
  include Google::Apis::Core::Hashable
506
512
 
507
- # The Google for Work customer id used in the Directory API.
508
- # Corresponds to the JSON property `directoryCustomerId`
513
+ # Required field representing the resource type this id is for.
514
+ # At present, the valid types are "project" and "organization".
515
+ # Corresponds to the JSON property `type`
509
516
  # @return [String]
510
- attr_accessor :directory_customer_id
517
+ attr_accessor :type
518
+
519
+ # Required field for the type-specific id. This should correspond to the id
520
+ # used in the type-specific API's.
521
+ # Corresponds to the JSON property `id`
522
+ # @return [String]
523
+ attr_accessor :id
511
524
 
512
525
  def initialize(**args)
513
526
  update!(**args)
@@ -515,33 +528,77 @@ module Google
515
528
 
516
529
  # Update properties of this object
517
530
  def update!(**args)
518
- @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id)
531
+ @type = args[:type] if args.key?(:type)
532
+ @id = args[:id] if args.key?(:id)
519
533
  end
520
534
  end
521
535
 
522
- # A status object which is used as the `metadata` field for the Operation
523
- # returned by CreateProject. It provides insight for when significant phases of
524
- # Project creation have completed.
525
- class ProjectCreationStatus
536
+ # A Project is a high-level Google Cloud Platform entity. It is a
537
+ # container for ACLs, APIs, AppEngine Apps, VMs, and other
538
+ # Google Cloud Platform resources.
539
+ class Project
526
540
  include Google::Apis::Core::Hashable
527
541
 
528
- # Creation time of the project creation workflow.
542
+ # A container to reference an id for any resource type. A `resource` in Google
543
+ # Cloud Platform is a generic term for something you (a developer) may want to
544
+ # interact with through one of our API's. Some examples are an AppEngine app,
545
+ # a Compute Engine instance, a Cloud SQL database, and so on.
546
+ # Corresponds to the JSON property `parent`
547
+ # @return [Google::Apis::CloudresourcemanagerV1beta1::ResourceId]
548
+ attr_accessor :parent
549
+
550
+ # The labels associated with this Project.
551
+ # Label keys must be between 1 and 63 characters long and must conform
552
+ # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
553
+ # Label values must be between 0 and 63 characters long and must conform
554
+ # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
555
+ # No more than 256 labels can be associated with a given resource.
556
+ # Clients should store labels in a representation such as JSON that does not
557
+ # depend on specific characters being disallowed.
558
+ # Example: <code>"environment" : "dev"</code>
559
+ # Read-write.
560
+ # Corresponds to the JSON property `labels`
561
+ # @return [Hash<String,String>]
562
+ attr_accessor :labels
563
+
564
+ # The Project lifecycle state.
565
+ # Read-only.
566
+ # Corresponds to the JSON property `lifecycleState`
567
+ # @return [String]
568
+ attr_accessor :lifecycle_state
569
+
570
+ # Creation time.
571
+ # Read-only.
529
572
  # Corresponds to the JSON property `createTime`
530
573
  # @return [String]
531
574
  attr_accessor :create_time
532
575
 
533
- # True if the project can be retrieved using GetProject. No other operations on
534
- # the project are guaranteed to work until the project creation is complete.
535
- # Corresponds to the JSON property `gettable`
536
- # @return [Boolean]
537
- attr_accessor :gettable
538
- alias_method :gettable?, :gettable
576
+ # The user-assigned display name of the Project.
577
+ # It must be 4 to 30 characters.
578
+ # Allowed characters are: lowercase and uppercase letters, numbers,
579
+ # hyphen, single-quote, double-quote, space, and exclamation point.
580
+ # Example: <code>My Project</code>
581
+ # Read-write.
582
+ # Corresponds to the JSON property `name`
583
+ # @return [String]
584
+ attr_accessor :name
539
585
 
540
- # True if the project creation process is complete.
541
- # Corresponds to the JSON property `ready`
542
- # @return [Boolean]
543
- attr_accessor :ready
544
- alias_method :ready?, :ready
586
+ # The number uniquely identifying the project.
587
+ # Example: <code>415104041262</code>
588
+ # Read-only.
589
+ # Corresponds to the JSON property `projectNumber`
590
+ # @return [String]
591
+ attr_accessor :project_number
592
+
593
+ # The unique, user-assigned ID of the Project.
594
+ # It must be 6 to 30 lowercase letters, digits, or hyphens.
595
+ # It must start with a letter.
596
+ # Trailing hyphens are prohibited.
597
+ # Example: <code>tokyo-rain-123</code>
598
+ # Read-only after creation.
599
+ # Corresponds to the JSON property `projectId`
600
+ # @return [String]
601
+ attr_accessor :project_id
545
602
 
546
603
  def initialize(**args)
547
604
  update!(**args)
@@ -549,37 +606,44 @@ module Google
549
606
 
550
607
  # Update properties of this object
551
608
  def update!(**args)
609
+ @parent = args[:parent] if args.key?(:parent)
610
+ @labels = args[:labels] if args.key?(:labels)
611
+ @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
552
612
  @create_time = args[:create_time] if args.key?(:create_time)
553
- @gettable = args[:gettable] if args.key?(:gettable)
554
- @ready = args[:ready] if args.key?(:ready)
613
+ @name = args[:name] if args.key?(:name)
614
+ @project_number = args[:project_number] if args.key?(:project_number)
615
+ @project_id = args[:project_id] if args.key?(:project_id)
555
616
  end
556
617
  end
557
618
 
558
- # Metadata describing a long running folder operation
559
- class FolderOperation
619
+ # Associates `members` with a `role`.
620
+ class Binding
560
621
  include Google::Apis::Core::Hashable
561
622
 
562
- # The display name of the folder.
563
- # Corresponds to the JSON property `displayName`
564
- # @return [String]
565
- attr_accessor :display_name
566
-
567
- # The type of this operation.
568
- # Corresponds to the JSON property `operationType`
569
- # @return [String]
570
- attr_accessor :operation_type
571
-
572
- # The resource name of the folder's parent. Only applicable when the
573
- # operation_type is MOVE.
574
- # Corresponds to the JSON property `sourceParent`
575
- # @return [String]
576
- attr_accessor :source_parent
623
+ # Specifies the identities requesting access for a Cloud Platform resource.
624
+ # `members` can have the following values:
625
+ # * `allUsers`: A special identifier that represents anyone who is
626
+ # on the internet; with or without a Google account.
627
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
628
+ # who is authenticated with a Google account or a service account.
629
+ # * `user:`emailid``: An email address that represents a specific Google
630
+ # account. For example, `alice@gmail.com` or `joe@example.com`.
631
+ # * `serviceAccount:`emailid``: An email address that represents a service
632
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
633
+ # * `group:`emailid``: An email address that represents a Google group.
634
+ # For example, `admins@example.com`.
635
+ # * `domain:`domain``: A Google Apps domain name that represents all the
636
+ # users of that domain. For example, `google.com` or `example.com`.
637
+ # Corresponds to the JSON property `members`
638
+ # @return [Array<String>]
639
+ attr_accessor :members
577
640
 
578
- # The resource name of the folder or organization we are either creating the
579
- # folder under or moving the folder to.
580
- # Corresponds to the JSON property `destinationParent`
641
+ # Role that is assigned to `members`.
642
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
643
+ # Required
644
+ # Corresponds to the JSON property `role`
581
645
  # @return [String]
582
- attr_accessor :destination_parent
646
+ attr_accessor :role
583
647
 
584
648
  def initialize(**args)
585
649
  update!(**args)
@@ -587,21 +651,22 @@ module Google
587
651
 
588
652
  # Update properties of this object
589
653
  def update!(**args)
590
- @display_name = args[:display_name] if args.key?(:display_name)
591
- @operation_type = args[:operation_type] if args.key?(:operation_type)
592
- @source_parent = args[:source_parent] if args.key?(:source_parent)
593
- @destination_parent = args[:destination_parent] if args.key?(:destination_parent)
654
+ @members = args[:members] if args.key?(:members)
655
+ @role = args[:role] if args.key?(:role)
594
656
  end
595
657
  end
596
658
 
597
- # A classification of the Folder Operation error.
598
- class FolderOperationError
659
+ # The entity that owns an Organization. The lifetime of the Organization and
660
+ # all of its descendants are bound to the `OrganizationOwner`. If the
661
+ # `OrganizationOwner` is deleted, the Organization and all its descendants will
662
+ # be deleted.
663
+ class OrganizationOwner
599
664
  include Google::Apis::Core::Hashable
600
665
 
601
- # The type of operation error experienced.
602
- # Corresponds to the JSON property `errorMessageId`
666
+ # The Google for Work customer id used in the Directory API.
667
+ # Corresponds to the JSON property `directoryCustomerId`
603
668
  # @return [String]
604
- attr_accessor :error_message_id
669
+ attr_accessor :directory_customer_id
605
670
 
606
671
  def initialize(**args)
607
672
  update!(**args)
@@ -609,7 +674,7 @@ module Google
609
674
 
610
675
  # Update properties of this object
611
676
  def update!(**args)
612
- @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
677
+ @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id)
613
678
  end
614
679
  end
615
680
  end