google-api-client 0.9.28 → 0.10.0

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