google-api-client 0.10.0 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/README.md +1 -1
  4. data/api_names.yaml +37747 -36512
  5. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  6. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +1016 -114
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +426 -22
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +481 -95
  9. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  10. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +27 -10
  11. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +1 -0
  12. data/generated/google/apis/admin_reports_v1.rb +2 -2
  13. data/generated/google/apis/adsense_v1_4.rb +1 -1
  14. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  15. data/generated/google/apis/analytics_v3.rb +1 -1
  16. data/generated/google/apis/analyticsreporting_v4.rb +4 -4
  17. data/generated/google/apis/analyticsreporting_v4/classes.rb +428 -428
  18. data/generated/google/apis/analyticsreporting_v4/representations.rb +108 -108
  19. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  20. data/generated/google/apis/androidenterprise_v1/classes.rb +60 -66
  21. data/generated/google/apis/androidenterprise_v1/service.rb +12 -11
  22. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  23. data/generated/google/apis/androidpublisher_v2/classes.rb +7 -0
  24. data/generated/google/apis/androidpublisher_v2/representations.rb +1 -0
  25. data/generated/google/apis/androidpublisher_v2/service.rb +1 -1
  26. data/generated/google/apis/appsactivity_v1.rb +3 -3
  27. data/generated/google/apis/appsactivity_v1/service.rb +1 -1
  28. data/generated/google/apis/appstate_v1.rb +1 -1
  29. data/generated/google/apis/bigquery_v2.rb +1 -1
  30. data/generated/google/apis/bigquery_v2/classes.rb +34 -8
  31. data/generated/google/apis/bigquery_v2/representations.rb +15 -0
  32. data/generated/google/apis/calendar_v3.rb +1 -1
  33. data/generated/google/apis/calendar_v3/classes.rb +3 -5
  34. data/generated/google/apis/classroom_v1.rb +25 -22
  35. data/generated/google/apis/classroom_v1/classes.rb +910 -1001
  36. data/generated/google/apis/classroom_v1/representations.rb +240 -240
  37. data/generated/google/apis/classroom_v1/service.rb +1064 -1272
  38. data/generated/google/apis/cloudbilling_v1.rb +3 -3
  39. data/generated/google/apis/cloudbilling_v1/classes.rb +76 -75
  40. data/generated/google/apis/cloudbilling_v1/representations.rb +17 -17
  41. data/generated/google/apis/cloudbilling_v1/service.rb +117 -110
  42. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  43. data/generated/google/apis/cloudbuild_v1/classes.rb +238 -238
  44. data/generated/google/apis/cloudbuild_v1/representations.rb +48 -48
  45. data/generated/google/apis/cloudbuild_v1/service.rb +176 -176
  46. data/generated/google/apis/clouddebugger_v2.rb +4 -4
  47. data/generated/google/apis/clouddebugger_v2/classes.rb +315 -315
  48. data/generated/google/apis/clouddebugger_v2/representations.rb +90 -90
  49. data/generated/google/apis/clouddebugger_v2/service.rb +152 -152
  50. data/generated/google/apis/cloudkms_v1.rb +35 -0
  51. data/generated/google/apis/cloudkms_v1/classes.rb +1039 -0
  52. data/generated/google/apis/cloudkms_v1/representations.rb +448 -0
  53. data/generated/google/apis/cloudkms_v1/service.rb +933 -0
  54. data/generated/google/apis/cloudkms_v1beta1.rb +1 -1
  55. data/generated/google/apis/cloudkms_v1beta1/classes.rb +645 -605
  56. data/generated/google/apis/cloudkms_v1beta1/representations.rb +136 -136
  57. data/generated/google/apis/cloudkms_v1beta1/service.rb +258 -264
  58. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  59. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  60. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +677 -456
  61. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +154 -89
  62. data/generated/google/apis/cloudresourcemanager_v1/service.rb +380 -279
  63. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +4 -4
  64. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +247 -114
  65. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +72 -40
  66. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +202 -208
  67. data/generated/google/apis/cloudtrace_v1.rb +4 -4
  68. data/generated/google/apis/cloudtrace_v1/classes.rb +39 -39
  69. data/generated/google/apis/cloudtrace_v1/representations.rb +13 -13
  70. data/generated/google/apis/cloudtrace_v1/service.rb +18 -18
  71. data/generated/google/apis/compute_beta.rb +1 -1
  72. data/generated/google/apis/compute_beta/classes.rb +813 -82
  73. data/generated/google/apis/compute_beta/representations.rb +305 -0
  74. data/generated/google/apis/compute_beta/service.rb +971 -180
  75. data/generated/google/apis/compute_v1.rb +1 -1
  76. data/generated/google/apis/compute_v1/classes.rb +147 -21
  77. data/generated/google/apis/compute_v1/representations.rb +38 -0
  78. data/generated/google/apis/compute_v1/service.rb +347 -65
  79. data/generated/google/apis/content_v2.rb +1 -1
  80. data/generated/google/apis/content_v2/classes.rb +2 -1
  81. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  82. data/generated/google/apis/dataflow_v1b3/classes.rb +3352 -3110
  83. data/generated/google/apis/dataflow_v1b3/representations.rb +812 -730
  84. data/generated/google/apis/dataflow_v1b3/service.rb +264 -183
  85. data/generated/google/apis/dataproc_v1.rb +1 -1
  86. data/generated/google/apis/dataproc_v1/classes.rb +1200 -1164
  87. data/generated/google/apis/dataproc_v1/representations.rb +220 -204
  88. data/generated/google/apis/dataproc_v1/service.rb +299 -299
  89. data/generated/google/apis/datastore_v1.rb +4 -4
  90. data/generated/google/apis/datastore_v1/classes.rb +688 -688
  91. data/generated/google/apis/datastore_v1/representations.rb +167 -167
  92. data/generated/google/apis/datastore_v1/service.rb +68 -68
  93. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  94. data/generated/google/apis/deploymentmanager_v2/classes.rb +13 -3
  95. data/generated/google/apis/dns_v1.rb +1 -1
  96. data/generated/google/apis/dns_v2beta1.rb +1 -1
  97. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  98. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +1 -1
  99. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  100. data/generated/google/apis/drive_v2.rb +1 -1
  101. data/generated/google/apis/drive_v2/classes.rb +487 -15
  102. data/generated/google/apis/drive_v2/representations.rb +120 -0
  103. data/generated/google/apis/drive_v2/service.rb +355 -38
  104. data/generated/google/apis/drive_v3.rb +1 -1
  105. data/generated/google/apis/drive_v3/classes.rb +416 -14
  106. data/generated/google/apis/drive_v3/representations.rb +99 -0
  107. data/generated/google/apis/drive_v3/service.rb +315 -28
  108. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  109. data/generated/google/apis/games_management_v1management.rb +1 -1
  110. data/generated/google/apis/games_v1.rb +1 -1
  111. data/generated/google/apis/genomics_v1.rb +7 -7
  112. data/generated/google/apis/genomics_v1/classes.rb +2301 -2301
  113. data/generated/google/apis/genomics_v1/representations.rb +239 -239
  114. data/generated/google/apis/genomics_v1/service.rb +599 -599
  115. data/generated/google/apis/gmail_v1.rb +2 -2
  116. data/generated/google/apis/gmail_v1/service.rb +18 -1
  117. data/generated/google/apis/groupssettings_v1.rb +1 -1
  118. data/generated/google/apis/iam_v1.rb +1 -1
  119. data/generated/google/apis/iam_v1/classes.rb +440 -440
  120. data/generated/google/apis/iam_v1/representations.rb +96 -96
  121. data/generated/google/apis/iam_v1/service.rb +150 -150
  122. data/generated/google/apis/kgsearch_v1/service.rb +13 -13
  123. data/generated/google/apis/language_v1beta1.rb +1 -1
  124. data/generated/google/apis/language_v1beta1/classes.rb +235 -235
  125. data/generated/google/apis/language_v1beta1/representations.rb +73 -73
  126. data/generated/google/apis/language_v1beta1/service.rb +49 -49
  127. data/generated/google/apis/licensing_v1.rb +1 -1
  128. data/generated/google/apis/logging_v2beta1.rb +1 -1
  129. data/generated/google/apis/logging_v2beta1/classes.rb +888 -879
  130. data/generated/google/apis/logging_v2beta1/representations.rb +129 -129
  131. data/generated/google/apis/logging_v2beta1/service.rb +315 -316
  132. data/generated/google/apis/manufacturers_v1/classes.rb +139 -139
  133. data/generated/google/apis/manufacturers_v1/representations.rb +30 -30
  134. data/generated/google/apis/manufacturers_v1/service.rb +32 -32
  135. data/generated/google/apis/monitoring_v3.rb +4 -4
  136. data/generated/google/apis/monitoring_v3/classes.rb +229 -229
  137. data/generated/google/apis/monitoring_v3/representations.rb +45 -45
  138. data/generated/google/apis/monitoring_v3/service.rb +141 -141
  139. data/generated/google/apis/partners_v2.rb +3 -3
  140. data/generated/google/apis/partners_v2/classes.rb +1837 -483
  141. data/generated/google/apis/partners_v2/representations.rb +614 -157
  142. data/generated/google/apis/partners_v2/service.rb +881 -150
  143. data/generated/google/apis/people_v1.rb +1 -1
  144. data/generated/google/apis/people_v1/classes.rb +517 -465
  145. data/generated/google/apis/people_v1/representations.rb +138 -107
  146. data/generated/google/apis/people_v1/service.rb +56 -49
  147. data/generated/google/apis/plus_domains_v1.rb +1 -1
  148. data/generated/google/apis/plus_v1.rb +1 -1
  149. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  150. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +529 -458
  151. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +98 -97
  152. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +494 -370
  153. data/generated/google/apis/pubsub_v1.rb +4 -4
  154. data/generated/google/apis/pubsub_v1/classes.rb +203 -203
  155. data/generated/google/apis/pubsub_v1/representations.rb +65 -65
  156. data/generated/google/apis/pubsub_v1/service.rb +226 -217
  157. data/generated/google/apis/reseller_v1.rb +1 -1
  158. data/generated/google/apis/reseller_v1/classes.rb +213 -61
  159. data/generated/google/apis/reseller_v1/representations.rb +27 -0
  160. data/generated/google/apis/reseller_v1/service.rb +240 -47
  161. data/generated/google/apis/script_v1.rb +14 -14
  162. data/generated/google/apis/script_v1/classes.rb +95 -95
  163. data/generated/google/apis/script_v1/representations.rb +25 -25
  164. data/generated/google/apis/sheets_v4.rb +1 -1
  165. data/generated/google/apis/sheets_v4/classes.rb +4346 -4300
  166. data/generated/google/apis/sheets_v4/representations.rb +853 -837
  167. data/generated/google/apis/sheets_v4/service.rb +32 -32
  168. data/generated/google/apis/slides_v1.rb +1 -1
  169. data/generated/google/apis/slides_v1/classes.rb +804 -748
  170. data/generated/google/apis/slides_v1/representations.rb +204 -187
  171. data/generated/google/apis/slides_v1/service.rb +16 -16
  172. data/generated/google/apis/speech_v1beta1.rb +1 -1
  173. data/generated/google/apis/speech_v1beta1/classes.rb +57 -57
  174. data/generated/google/apis/speech_v1beta1/representations.rb +19 -19
  175. data/generated/google/apis/speech_v1beta1/service.rb +66 -66
  176. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  177. data/generated/google/apis/sqladmin_v1beta4/classes.rb +32 -7
  178. data/generated/google/apis/sqladmin_v1beta4/representations.rb +16 -0
  179. data/generated/google/apis/sqladmin_v1beta4/service.rb +9 -2
  180. data/generated/google/apis/storage_v1.rb +1 -1
  181. data/generated/google/apis/storage_v1/service.rb +10 -7
  182. data/generated/google/apis/vision_v1.rb +1 -1
  183. data/generated/google/apis/vision_v1/classes.rb +1393 -865
  184. data/generated/google/apis/vision_v1/representations.rb +367 -102
  185. data/generated/google/apis/vision_v1/service.rb +4 -4
  186. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  187. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  188. data/generated/google/apis/youtubereporting_v1.rb +4 -4
  189. data/generated/google/apis/youtubereporting_v1/classes.rb +93 -93
  190. data/generated/google/apis/youtubereporting_v1/representations.rb +25 -25
  191. data/generated/google/apis/youtubereporting_v1/service.rb +108 -108
  192. data/lib/google/apis/version.rb +1 -1
  193. metadata +34 -30
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/monitoring/v2beta2/
26
26
  module CloudmonitoringV2beta2
27
27
  VERSION = 'V2beta2'
28
- REVISION = '20170130'
28
+ REVISION = '20170219'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/resource-manager
27
27
  module CloudresourcemanagerV1
28
28
  VERSION = 'V1'
29
- REVISION = '20170208'
29
+ REVISION = '20170301'
30
30
 
31
31
  # View your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only'
@@ -22,162 +22,6 @@ module Google
22
22
  module Apis
23
23
  module CloudresourcemanagerV1
24
24
 
25
- # Request message for `SetIamPolicy` method.
26
- class SetIamPolicyRequest
27
- include Google::Apis::Core::Hashable
28
-
29
- # Defines an Identity and Access Management (IAM) policy. It is used to
30
- # specify access control policies for Cloud Platform resources.
31
- # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
32
- # `members` to a `role`, where the members can be user accounts, Google groups,
33
- # Google domains, and service accounts. A `role` is a named list of permissions
34
- # defined by IAM.
35
- # **Example**
36
- # `
37
- # "bindings": [
38
- # `
39
- # "role": "roles/owner",
40
- # "members": [
41
- # "user:mike@example.com",
42
- # "group:admins@example.com",
43
- # "domain:google.com",
44
- # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
45
- # ]
46
- # `,
47
- # `
48
- # "role": "roles/viewer",
49
- # "members": ["user:sean@example.com"]
50
- # `
51
- # ]
52
- # `
53
- # For a description of IAM and its features, see the
54
- # [IAM developer's guide](https://cloud.google.com/iam).
55
- # Corresponds to the JSON property `policy`
56
- # @return [Google::Apis::CloudresourcemanagerV1::Policy]
57
- attr_accessor :policy
58
-
59
- def initialize(**args)
60
- update!(**args)
61
- end
62
-
63
- # Update properties of this object
64
- def update!(**args)
65
- @policy = args[:policy] if args.key?(:policy)
66
- end
67
- end
68
-
69
- # The `Status` type defines a logical error model that is suitable for different
70
- # programming environments, including REST APIs and RPC APIs. It is used by
71
- # [gRPC](https://github.com/grpc). The error model is designed to be:
72
- # - Simple to use and understand for most users
73
- # - Flexible enough to meet unexpected needs
74
- # # Overview
75
- # The `Status` message contains three pieces of data: error code, error message,
76
- # and error details. The error code should be an enum value of
77
- # google.rpc.Code, but it may accept additional error codes if needed. The
78
- # error message should be a developer-facing English message that helps
79
- # developers *understand* and *resolve* the error. If a localized user-facing
80
- # error message is needed, put the localized message in the error details or
81
- # localize it in the client. The optional error details may contain arbitrary
82
- # information about the error. There is a predefined set of error detail types
83
- # in the package `google.rpc` which can be used for common error conditions.
84
- # # Language mapping
85
- # The `Status` message is the logical representation of the error model, but it
86
- # is not necessarily the actual wire format. When the `Status` message is
87
- # exposed in different client libraries and different wire protocols, it can be
88
- # mapped differently. For example, it will likely be mapped to some exceptions
89
- # in Java, but more likely mapped to some error codes in C.
90
- # # Other uses
91
- # The error model and the `Status` message can be used in a variety of
92
- # environments, either with or without APIs, to provide a
93
- # consistent developer experience across different environments.
94
- # Example uses of this error model include:
95
- # - Partial errors. If a service needs to return partial errors to the client,
96
- # it may embed the `Status` in the normal response to indicate the partial
97
- # errors.
98
- # - Workflow errors. A typical workflow has multiple steps. Each step may
99
- # have a `Status` message for error reporting purpose.
100
- # - Batch operations. If a client uses batch request and batch response, the
101
- # `Status` message should be used directly inside batch response, one for
102
- # each error sub-response.
103
- # - Asynchronous operations. If an API call embeds asynchronous operation
104
- # results in its response, the status of those operations should be
105
- # represented directly using the `Status` message.
106
- # - Logging. If some API errors are stored in logs, the message `Status` could
107
- # be used directly after any stripping needed for security/privacy reasons.
108
- class Status
109
- include Google::Apis::Core::Hashable
110
-
111
- # A list of messages that carry the error details. There will be a
112
- # common set of message types for APIs to use.
113
- # Corresponds to the JSON property `details`
114
- # @return [Array<Hash<String,Object>>]
115
- attr_accessor :details
116
-
117
- # The status code, which should be an enum value of google.rpc.Code.
118
- # Corresponds to the JSON property `code`
119
- # @return [Fixnum]
120
- attr_accessor :code
121
-
122
- # A developer-facing error message, which should be in English. Any
123
- # user-facing error message should be localized and sent in the
124
- # google.rpc.Status.details field, or localized by the client.
125
- # Corresponds to the JSON property `message`
126
- # @return [String]
127
- attr_accessor :message
128
-
129
- def initialize(**args)
130
- update!(**args)
131
- end
132
-
133
- # Update properties of this object
134
- def update!(**args)
135
- @details = args[:details] if args.key?(:details)
136
- @code = args[:code] if args.key?(:code)
137
- @message = args[:message] if args.key?(:message)
138
- end
139
- end
140
-
141
- # Associates `members` with a `role`.
142
- class Binding
143
- include Google::Apis::Core::Hashable
144
-
145
- # Specifies the identities requesting access for a Cloud Platform resource.
146
- # `members` can have the following values:
147
- # * `allUsers`: A special identifier that represents anyone who is
148
- # on the internet; with or without a Google account.
149
- # * `allAuthenticatedUsers`: A special identifier that represents anyone
150
- # who is authenticated with a Google account or a service account.
151
- # * `user:`emailid``: An email address that represents a specific Google
152
- # account. For example, `alice@gmail.com` or `joe@example.com`.
153
- # * `serviceAccount:`emailid``: An email address that represents a service
154
- # account. For example, `my-other-app@appspot.gserviceaccount.com`.
155
- # * `group:`emailid``: An email address that represents a Google group.
156
- # For example, `admins@example.com`.
157
- # * `domain:`domain``: A Google Apps domain name that represents all the
158
- # users of that domain. For example, `google.com` or `example.com`.
159
- # Corresponds to the JSON property `members`
160
- # @return [Array<String>]
161
- attr_accessor :members
162
-
163
- # Role that is assigned to `members`.
164
- # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
165
- # Required
166
- # Corresponds to the JSON property `role`
167
- # @return [String]
168
- attr_accessor :role
169
-
170
- def initialize(**args)
171
- update!(**args)
172
- end
173
-
174
- # Update properties of this object
175
- def update!(**args)
176
- @members = args[:members] if args.key?(:members)
177
- @role = args[:role] if args.key?(:role)
178
- end
179
- end
180
-
181
25
  # A generic empty message that you can re-use to avoid defining duplicated
182
26
  # empty messages in your APIs. A typical example is to use it as the request
183
27
  # or the response type of an API method. For instance:
@@ -197,31 +41,11 @@ module Google
197
41
  end
198
42
  end
199
43
 
200
- # The request sent to the UndeleteProject
201
- # method.
202
- class UndeleteProjectRequest
203
- include Google::Apis::Core::Hashable
204
-
205
- def initialize(**args)
206
- update!(**args)
207
- end
208
-
209
- # Update properties of this object
210
- def update!(**args)
211
- end
212
- end
213
-
214
44
  # The root node in the resource hierarchy to which a particular entity's
215
45
  # (e.g., company) resources belong.
216
46
  class Organization
217
47
  include Google::Apis::Core::Hashable
218
48
 
219
- # Timestamp when the Organization was created. Assigned by the server.
220
- # @OutputOnly
221
- # Corresponds to the JSON property `creationTime`
222
- # @return [String]
223
- attr_accessor :creation_time
224
-
225
49
  # The entity that owns an Organization. The lifetime of the Organization and
226
50
  # all of its descendants are bound to the `OrganizationOwner`. If the
227
51
  # `OrganizationOwner` is deleted, the Organization and all its descendants will
@@ -251,44 +75,36 @@ module Google
251
75
  # @return [String]
252
76
  attr_accessor :display_name
253
77
 
78
+ # Timestamp when the Organization was created. Assigned by the server.
79
+ # @OutputOnly
80
+ # Corresponds to the JSON property `creationTime`
81
+ # @return [String]
82
+ attr_accessor :creation_time
83
+
254
84
  def initialize(**args)
255
85
  update!(**args)
256
86
  end
257
87
 
258
88
  # Update properties of this object
259
89
  def update!(**args)
260
- @creation_time = args[:creation_time] if args.key?(:creation_time)
261
90
  @owner = args[:owner] if args.key?(:owner)
262
91
  @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
263
92
  @name = args[:name] if args.key?(:name)
264
93
  @display_name = args[:display_name] if args.key?(:display_name)
94
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
265
95
  end
266
96
  end
267
97
 
268
- # A status object which is used as the `metadata` field for the Operation
269
- # returned by CreateProject. It provides insight for when significant phases of
270
- # Project creation have completed.
271
- class ProjectCreationStatus
98
+ # Response from the GetAncestry method.
99
+ class GetAncestryResponse
272
100
  include Google::Apis::Core::Hashable
273
101
 
274
- # True if the project creation process is complete.
275
- # Corresponds to the JSON property `ready`
276
- # @return [Boolean]
277
- attr_accessor :ready
278
- alias_method :ready?, :ready
279
-
280
- # Creation time of the project creation workflow.
281
- # Corresponds to the JSON property `createTime`
282
- # @return [String]
283
- attr_accessor :create_time
284
-
285
- # True if the project can be retrieved using GetProject. No other operations
286
- # on the project are guaranteed to work until the project creation is
287
- # complete.
288
- # Corresponds to the JSON property `gettable`
289
- # @return [Boolean]
290
- attr_accessor :gettable
291
- alias_method :gettable?, :gettable
102
+ # Ancestors are ordered from bottom to top of the resource hierarchy. The
103
+ # first ancestor is the project itself, followed by the project's parent,
104
+ # etc.
105
+ # Corresponds to the JSON property `ancestor`
106
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Ancestor>]
107
+ attr_accessor :ancestor
292
108
 
293
109
  def initialize(**args)
294
110
  update!(**args)
@@ -296,35 +112,41 @@ module Google
296
112
 
297
113
  # Update properties of this object
298
114
  def update!(**args)
299
- @ready = args[:ready] if args.key?(:ready)
300
- @create_time = args[:create_time] if args.key?(:create_time)
301
- @gettable = args[:gettable] if args.key?(:gettable)
115
+ @ancestor = args[:ancestor] if args.key?(:ancestor)
302
116
  end
303
117
  end
304
118
 
305
- # Response message for `TestIamPermissions` method.
306
- class TestIamPermissionsResponse
119
+ # Provides the configuration for logging a type of permissions.
120
+ # Example:
121
+ # `
122
+ # "audit_log_configs": [
123
+ # `
124
+ # "log_type": "DATA_READ",
125
+ # "exempted_members": [
126
+ # "user:foo@gmail.com"
127
+ # ]
128
+ # `,
129
+ # `
130
+ # "log_type": "DATA_WRITE",
131
+ # `
132
+ # ]
133
+ # `
134
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
135
+ # foo@gmail.com from DATA_READ logging.
136
+ class AuditLogConfig
307
137
  include Google::Apis::Core::Hashable
308
138
 
309
- # A subset of `TestPermissionsRequest.permissions` that the caller is
310
- # allowed.
311
- # Corresponds to the JSON property `permissions`
139
+ # Specifies the identities that do not cause logging for this type of
140
+ # permission.
141
+ # Follows the same format of Binding.members.
142
+ # Corresponds to the JSON property `exemptedMembers`
312
143
  # @return [Array<String>]
313
- attr_accessor :permissions
314
-
315
- def initialize(**args)
316
- update!(**args)
317
- end
318
-
319
- # Update properties of this object
320
- def update!(**args)
321
- @permissions = args[:permissions] if args.key?(:permissions)
322
- end
323
- end
144
+ attr_accessor :exempted_members
324
145
 
325
- # Request message for `GetIamPolicy` method.
326
- class GetIamPolicyRequest
327
- include Google::Apis::Core::Hashable
146
+ # The log type that this config enables.
147
+ # Corresponds to the JSON property `logType`
148
+ # @return [String]
149
+ attr_accessor :log_type
328
150
 
329
151
  def initialize(**args)
330
152
  update!(**args)
@@ -332,92 +154,13 @@ module Google
332
154
 
333
155
  # Update properties of this object
334
156
  def update!(**args)
157
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
158
+ @log_type = args[:log_type] if args.key?(:log_type)
335
159
  end
336
160
  end
337
161
 
338
- # The entity that owns an Organization. The lifetime of the Organization and
339
- # all of its descendants are bound to the `OrganizationOwner`. If the
340
- # `OrganizationOwner` is deleted, the Organization and all its descendants will
341
- # be deleted.
342
- class OrganizationOwner
343
- include Google::Apis::Core::Hashable
344
-
345
- # The Google for Work customer id used in the Directory API.
346
- # Corresponds to the JSON property `directoryCustomerId`
347
- # @return [String]
348
- attr_accessor :directory_customer_id
349
-
350
- def initialize(**args)
351
- update!(**args)
352
- end
353
-
354
- # Update properties of this object
355
- def update!(**args)
356
- @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id)
357
- end
358
- end
359
-
360
- # Response from the GetAncestry method.
361
- class GetAncestryResponse
362
- include Google::Apis::Core::Hashable
363
-
364
- # Ancestors are ordered from bottom to top of the resource hierarchy. The
365
- # first ancestor is the project itself, followed by the project's parent,
366
- # etc.
367
- # Corresponds to the JSON property `ancestor`
368
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Ancestor>]
369
- attr_accessor :ancestor
370
-
371
- def initialize(**args)
372
- update!(**args)
373
- end
374
-
375
- # Update properties of this object
376
- def update!(**args)
377
- @ancestor = args[:ancestor] if args.key?(:ancestor)
378
- end
379
- end
380
-
381
- # A page of the response received from the
382
- # ListProjects
383
- # method.
384
- # A paginated response where more pages are available has
385
- # `next_page_token` set. This token can be used in a subsequent request to
386
- # retrieve the next request page.
387
- class ListProjectsResponse
388
- include Google::Apis::Core::Hashable
389
-
390
- # Pagination token.
391
- # If the result set is too large to fit in a single response, this token
392
- # is returned. It encodes the position of the current result cursor.
393
- # Feeding this value into a new list request with the `page_token` parameter
394
- # gives the next page of the results.
395
- # When `next_page_token` is not filled in, there is no next page and
396
- # the list returned is the last page in the result set.
397
- # Pagination tokens have a limited lifetime.
398
- # Corresponds to the JSON property `nextPageToken`
399
- # @return [String]
400
- attr_accessor :next_page_token
401
-
402
- # The list of Projects that matched the list filter. This list can
403
- # be paginated.
404
- # Corresponds to the JSON property `projects`
405
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Project>]
406
- attr_accessor :projects
407
-
408
- def initialize(**args)
409
- update!(**args)
410
- end
411
-
412
- # Update properties of this object
413
- def update!(**args)
414
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
415
- @projects = args[:projects] if args.key?(:projects)
416
- end
417
- end
418
-
419
- # The request sent to the `SearchOrganizations` method.
420
- class SearchOrganizationsRequest
162
+ # The request sent to the `SearchOrganizations` method.
163
+ class SearchOrganizationsRequest
421
164
  include Google::Apis::Core::Hashable
422
165
 
423
166
  # An optional query string used to filter the Organizations to return in
@@ -474,119 +217,6 @@ module Google
474
217
  end
475
218
  end
476
219
 
477
- # A Project is a high-level Google Cloud Platform entity. It is a
478
- # container for ACLs, APIs, AppEngine Apps, VMs, and other
479
- # Google Cloud Platform resources.
480
- class Project
481
- include Google::Apis::Core::Hashable
482
-
483
- # The Project lifecycle state.
484
- # Read-only.
485
- # Corresponds to the JSON property `lifecycleState`
486
- # @return [String]
487
- attr_accessor :lifecycle_state
488
-
489
- # The number uniquely identifying the project.
490
- # Example: <code>415104041262</code>
491
- # Read-only.
492
- # Corresponds to the JSON property `projectNumber`
493
- # @return [String]
494
- attr_accessor :project_number
495
-
496
- # A container to reference an id for any resource type. A `resource` in Google
497
- # Cloud Platform is a generic term for something you (a developer) may want to
498
- # interact with through one of our API's. Some examples are an AppEngine app,
499
- # a Compute Engine instance, a Cloud SQL database, and so on.
500
- # Corresponds to the JSON property `parent`
501
- # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
502
- attr_accessor :parent
503
-
504
- # Creation time.
505
- # Read-only.
506
- # Corresponds to the JSON property `createTime`
507
- # @return [String]
508
- attr_accessor :create_time
509
-
510
- # The labels associated with this Project.
511
- # Label keys must be between 1 and 63 characters long and must conform
512
- # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
513
- # Label values must be between 0 and 63 characters long and must conform
514
- # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
515
- # No more than 256 labels can be associated with a given resource.
516
- # Clients should store labels in a representation such as JSON that does not
517
- # depend on specific characters being disallowed.
518
- # Example: <code>"environment" : "dev"</code>
519
- # Read-write.
520
- # Corresponds to the JSON property `labels`
521
- # @return [Hash<String,String>]
522
- attr_accessor :labels
523
-
524
- # The user-assigned display name of the Project.
525
- # It must be 4 to 30 characters.
526
- # Allowed characters are: lowercase and uppercase letters, numbers,
527
- # hyphen, single-quote, double-quote, space, and exclamation point.
528
- # Example: <code>My Project</code>
529
- # Read-write.
530
- # Corresponds to the JSON property `name`
531
- # @return [String]
532
- attr_accessor :name
533
-
534
- # The unique, user-assigned ID of the Project.
535
- # It must be 6 to 30 lowercase letters, digits, or hyphens.
536
- # It must start with a letter.
537
- # Trailing hyphens are prohibited.
538
- # Example: <code>tokyo-rain-123</code>
539
- # Read-only after creation.
540
- # Corresponds to the JSON property `projectId`
541
- # @return [String]
542
- attr_accessor :project_id
543
-
544
- def initialize(**args)
545
- update!(**args)
546
- end
547
-
548
- # Update properties of this object
549
- def update!(**args)
550
- @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
551
- @project_number = args[:project_number] if args.key?(:project_number)
552
- @parent = args[:parent] if args.key?(:parent)
553
- @create_time = args[:create_time] if args.key?(:create_time)
554
- @labels = args[:labels] if args.key?(:labels)
555
- @name = args[:name] if args.key?(:name)
556
- @project_id = args[:project_id] if args.key?(:project_id)
557
- end
558
- end
559
-
560
- # The response returned from the `SearchOrganizations` method.
561
- class SearchOrganizationsResponse
562
- include Google::Apis::Core::Hashable
563
-
564
- # A pagination token to be used to retrieve the next page of results. If the
565
- # result is too large to fit within the page size specified in the request,
566
- # this field will be set with a token that can be used to fetch the next page
567
- # of results. If this field is empty, it indicates that this response
568
- # contains the last page of results.
569
- # Corresponds to the JSON property `nextPageToken`
570
- # @return [String]
571
- attr_accessor :next_page_token
572
-
573
- # The list of Organizations that matched the search query, possibly
574
- # paginated.
575
- # Corresponds to the JSON property `organizations`
576
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Organization>]
577
- attr_accessor :organizations
578
-
579
- def initialize(**args)
580
- update!(**args)
581
- end
582
-
583
- # Update properties of this object
584
- def update!(**args)
585
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
586
- @organizations = args[:organizations] if args.key?(:organizations)
587
- end
588
- end
589
-
590
220
  # Request message for `TestIamPermissions` method.
591
221
  class TestIamPermissionsRequest
592
222
  include Google::Apis::Core::Hashable
@@ -609,29 +239,15 @@ module Google
609
239
  end
610
240
  end
611
241
 
612
- # A classification of the Folder Operation error.
613
- class FolderOperationError
614
- include Google::Apis::Core::Hashable
615
-
616
- # The type of operation error experienced.
617
- # Corresponds to the JSON property `errorMessageId`
618
- # @return [String]
619
- attr_accessor :error_message_id
620
-
621
- def initialize(**args)
622
- update!(**args)
623
- end
624
-
625
- # Update properties of this object
626
- def update!(**args)
627
- @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
628
- end
629
- end
630
-
631
242
  # Metadata describing a long running folder operation
632
243
  class FolderOperation
633
244
  include Google::Apis::Core::Hashable
634
245
 
246
+ # The type of this operation.
247
+ # Corresponds to the JSON property `operationType`
248
+ # @return [String]
249
+ attr_accessor :operation_type
250
+
635
251
  # The display name of the folder.
636
252
  # Corresponds to the JSON property `displayName`
637
253
  # @return [String]
@@ -649,21 +265,16 @@ module Google
649
265
  # @return [String]
650
266
  attr_accessor :destination_parent
651
267
 
652
- # The type of this operation.
653
- # Corresponds to the JSON property `operationType`
654
- # @return [String]
655
- attr_accessor :operation_type
656
-
657
268
  def initialize(**args)
658
269
  update!(**args)
659
270
  end
660
271
 
661
272
  # Update properties of this object
662
273
  def update!(**args)
274
+ @operation_type = args[:operation_type] if args.key?(:operation_type)
663
275
  @display_name = args[:display_name] if args.key?(:display_name)
664
276
  @source_parent = args[:source_parent] if args.key?(:source_parent)
665
277
  @destination_parent = args[:destination_parent] if args.key?(:destination_parent)
666
- @operation_type = args[:operation_type] if args.key?(:operation_type)
667
278
  end
668
279
  end
669
280
 
@@ -714,6 +325,11 @@ module Google
714
325
  # @return [Fixnum]
715
326
  attr_accessor :version
716
327
 
328
+ # Specifies cloud audit logging configuration for this policy.
329
+ # Corresponds to the JSON property `auditConfigs`
330
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::AuditConfig>]
331
+ attr_accessor :audit_configs
332
+
717
333
  # Associates a list of `members` to a `role`.
718
334
  # Multiple `bindings` must not be specified for the same `role`.
719
335
  # `bindings` with no members will result in an error.
@@ -729,47 +345,122 @@ module Google
729
345
  def update!(**args)
730
346
  @etag = args[:etag] if args.key?(:etag)
731
347
  @version = args[:version] if args.key?(:version)
348
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
732
349
  @bindings = args[:bindings] if args.key?(:bindings)
733
350
  end
734
351
  end
735
352
 
736
353
  # A container to reference an id for any resource type. A `resource` in Google
737
354
  # Cloud Platform is a generic term for something you (a developer) may want to
738
- # interact with through one of our API's. Some examples are an AppEngine app,
355
+ # interact with through one of our API's. Some examples are an App Engine app,
739
356
  # a Compute Engine instance, a Cloud SQL database, and so on.
740
357
  class ResourceId
741
358
  include Google::Apis::Core::Hashable
742
359
 
743
- # Required field representing the resource type this id is for.
744
- # At present, the only valid type is "organization".
745
- # Corresponds to the JSON property `type`
746
- # @return [String]
747
- attr_accessor :type
748
-
749
360
  # Required field for the type-specific id. This should correspond to the id
750
361
  # used in the type-specific API's.
751
362
  # Corresponds to the JSON property `id`
752
363
  # @return [String]
753
364
  attr_accessor :id
754
365
 
366
+ # Required field representing the resource type this id is for.
367
+ # At present, the valid types are: "organization"
368
+ # Corresponds to the JSON property `type`
369
+ # @return [String]
370
+ attr_accessor :type
371
+
755
372
  def initialize(**args)
756
373
  update!(**args)
757
374
  end
758
375
 
759
376
  # Update properties of this object
760
377
  def update!(**args)
761
- @type = args[:type] if args.key?(:type)
762
378
  @id = args[:id] if args.key?(:id)
379
+ @type = args[:type] if args.key?(:type)
763
380
  end
764
381
  end
765
382
 
766
- # This resource represents a long-running operation that is the result of a
767
- # network API call.
768
- class Operation
383
+ # Specifies the audit configuration for a service.
384
+ # It consists of which permission types are logged, and what identities, if
385
+ # any, are exempted from logging.
386
+ # An AuditConifg must have one or more AuditLogConfigs.
387
+ # If there are AuditConfigs for both `allServices` and a specific service,
388
+ # the union of the two AuditConfigs is used for that service: the log_types
389
+ # specified in each AuditConfig are enabled, and the exempted_members in each
390
+ # AuditConfig are exempted.
391
+ # Example Policy with multiple AuditConfigs:
392
+ # `
393
+ # "audit_configs": [
394
+ # `
395
+ # "service": "allServices"
396
+ # "audit_log_configs": [
397
+ # `
398
+ # "log_type": "DATA_READ",
399
+ # "exempted_members": [
400
+ # "user:foo@gmail.com"
401
+ # ]
402
+ # `,
403
+ # `
404
+ # "log_type": "DATA_WRITE",
405
+ # `,
406
+ # `
407
+ # "log_type": "ADMIN_READ",
408
+ # `
409
+ # ]
410
+ # `,
411
+ # `
412
+ # "service": "fooservice@googleapis.com"
413
+ # "audit_log_configs": [
414
+ # `
415
+ # "log_type": "DATA_READ",
416
+ # `,
417
+ # `
418
+ # "log_type": "DATA_WRITE",
419
+ # "exempted_members": [
420
+ # "user:bar@gmail.com"
421
+ # ]
422
+ # `
423
+ # ]
424
+ # `
425
+ # ]
426
+ # `
427
+ # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
428
+ # logging. It also exempts foo@gmail.com from DATA_READ logging, and
429
+ # bar@gmail.com from DATA_WRITE logging.
430
+ class AuditConfig
769
431
  include Google::Apis::Core::Hashable
770
432
 
771
- # If the value is `false`, it means the operation is still in progress.
772
- # If true, the operation is completed, and either `error` or `response` is
433
+ # Specifies a service that will be enabled for audit logging.
434
+ # For example, `resourcemanager`, `storage`, `compute`.
435
+ # `allServices` is a special value that covers all services.
436
+ # Corresponds to the JSON property `service`
437
+ # @return [String]
438
+ attr_accessor :service
439
+
440
+ # The configuration for logging of each type of permission.
441
+ # Next ID: 4
442
+ # Corresponds to the JSON property `auditLogConfigs`
443
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::AuditLogConfig>]
444
+ attr_accessor :audit_log_configs
445
+
446
+ def initialize(**args)
447
+ update!(**args)
448
+ end
449
+
450
+ # Update properties of this object
451
+ def update!(**args)
452
+ @service = args[:service] if args.key?(:service)
453
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
454
+ end
455
+ end
456
+
457
+ # This resource represents a long-running operation that is the result of a
458
+ # network API call.
459
+ class Operation
460
+ include Google::Apis::Core::Hashable
461
+
462
+ # If the value is `false`, it means the operation is still in progress.
463
+ # If true, the operation is completed, and either `error` or `response` is
773
464
  # available.
774
465
  # Corresponds to the JSON property `done`
775
466
  # @return [Boolean]
@@ -860,13 +551,489 @@ module Google
860
551
  end
861
552
  end
862
553
 
554
+ # The `Status` type defines a logical error model that is suitable for different
555
+ # programming environments, including REST APIs and RPC APIs. It is used by
556
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
557
+ # - Simple to use and understand for most users
558
+ # - Flexible enough to meet unexpected needs
559
+ # # Overview
560
+ # The `Status` message contains three pieces of data: error code, error message,
561
+ # and error details. The error code should be an enum value of
562
+ # google.rpc.Code, but it may accept additional error codes if needed. The
563
+ # error message should be a developer-facing English message that helps
564
+ # developers *understand* and *resolve* the error. If a localized user-facing
565
+ # error message is needed, put the localized message in the error details or
566
+ # localize it in the client. The optional error details may contain arbitrary
567
+ # information about the error. There is a predefined set of error detail types
568
+ # in the package `google.rpc` which can be used for common error conditions.
569
+ # # Language mapping
570
+ # The `Status` message is the logical representation of the error model, but it
571
+ # is not necessarily the actual wire format. When the `Status` message is
572
+ # exposed in different client libraries and different wire protocols, it can be
573
+ # mapped differently. For example, it will likely be mapped to some exceptions
574
+ # in Java, but more likely mapped to some error codes in C.
575
+ # # Other uses
576
+ # The error model and the `Status` message can be used in a variety of
577
+ # environments, either with or without APIs, to provide a
578
+ # consistent developer experience across different environments.
579
+ # Example uses of this error model include:
580
+ # - Partial errors. If a service needs to return partial errors to the client,
581
+ # it may embed the `Status` in the normal response to indicate the partial
582
+ # errors.
583
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
584
+ # have a `Status` message for error reporting purpose.
585
+ # - Batch operations. If a client uses batch request and batch response, the
586
+ # `Status` message should be used directly inside batch response, one for
587
+ # each error sub-response.
588
+ # - Asynchronous operations. If an API call embeds asynchronous operation
589
+ # results in its response, the status of those operations should be
590
+ # represented directly using the `Status` message.
591
+ # - Logging. If some API errors are stored in logs, the message `Status` could
592
+ # be used directly after any stripping needed for security/privacy reasons.
593
+ class Status
594
+ include Google::Apis::Core::Hashable
595
+
596
+ # A developer-facing error message, which should be in English. Any
597
+ # user-facing error message should be localized and sent in the
598
+ # google.rpc.Status.details field, or localized by the client.
599
+ # Corresponds to the JSON property `message`
600
+ # @return [String]
601
+ attr_accessor :message
602
+
603
+ # A list of messages that carry the error details. There will be a
604
+ # common set of message types for APIs to use.
605
+ # Corresponds to the JSON property `details`
606
+ # @return [Array<Hash<String,Object>>]
607
+ attr_accessor :details
608
+
609
+ # The status code, which should be an enum value of google.rpc.Code.
610
+ # Corresponds to the JSON property `code`
611
+ # @return [Fixnum]
612
+ attr_accessor :code
613
+
614
+ def initialize(**args)
615
+ update!(**args)
616
+ end
617
+
618
+ # Update properties of this object
619
+ def update!(**args)
620
+ @message = args[:message] if args.key?(:message)
621
+ @details = args[:details] if args.key?(:details)
622
+ @code = args[:code] if args.key?(:code)
623
+ end
624
+ end
625
+
626
+ # The response message for Liens.ListLiens.
627
+ class ListLiensResponse
628
+ include Google::Apis::Core::Hashable
629
+
630
+ # Token to retrieve the next page of results, or empty if there are no more
631
+ # results in the list.
632
+ # Corresponds to the JSON property `nextPageToken`
633
+ # @return [String]
634
+ attr_accessor :next_page_token
635
+
636
+ # A list of Liens.
637
+ # Corresponds to the JSON property `liens`
638
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Lien>]
639
+ attr_accessor :liens
640
+
641
+ def initialize(**args)
642
+ update!(**args)
643
+ end
644
+
645
+ # Update properties of this object
646
+ def update!(**args)
647
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
648
+ @liens = args[:liens] if args.key?(:liens)
649
+ end
650
+ end
651
+
652
+ # Associates `members` with a `role`.
653
+ class Binding
654
+ include Google::Apis::Core::Hashable
655
+
656
+ # Specifies the identities requesting access for a Cloud Platform resource.
657
+ # `members` can have the following values:
658
+ # * `allUsers`: A special identifier that represents anyone who is
659
+ # on the internet; with or without a Google account.
660
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
661
+ # who is authenticated with a Google account or a service account.
662
+ # * `user:`emailid``: An email address that represents a specific Google
663
+ # account. For example, `alice@gmail.com` or `joe@example.com`.
664
+ # * `serviceAccount:`emailid``: An email address that represents a service
665
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
666
+ # * `group:`emailid``: An email address that represents a Google group.
667
+ # For example, `admins@example.com`.
668
+ # * `domain:`domain``: A Google Apps domain name that represents all the
669
+ # users of that domain. For example, `google.com` or `example.com`.
670
+ # Corresponds to the JSON property `members`
671
+ # @return [Array<String>]
672
+ attr_accessor :members
673
+
674
+ # Role that is assigned to `members`.
675
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
676
+ # Required
677
+ # Corresponds to the JSON property `role`
678
+ # @return [String]
679
+ attr_accessor :role
680
+
681
+ def initialize(**args)
682
+ update!(**args)
683
+ end
684
+
685
+ # Update properties of this object
686
+ def update!(**args)
687
+ @members = args[:members] if args.key?(:members)
688
+ @role = args[:role] if args.key?(:role)
689
+ end
690
+ end
691
+
692
+ # The request sent to the UndeleteProject
693
+ # method.
694
+ class UndeleteProjectRequest
695
+ include Google::Apis::Core::Hashable
696
+
697
+ def initialize(**args)
698
+ update!(**args)
699
+ end
700
+
701
+ # Update properties of this object
702
+ def update!(**args)
703
+ end
704
+ end
705
+
706
+ # A status object which is used as the `metadata` field for the Operation
707
+ # returned by CreateProject. It provides insight for when significant phases of
708
+ # Project creation have completed.
709
+ class ProjectCreationStatus
710
+ include Google::Apis::Core::Hashable
711
+
712
+ # True if the project creation process is complete.
713
+ # Corresponds to the JSON property `ready`
714
+ # @return [Boolean]
715
+ attr_accessor :ready
716
+ alias_method :ready?, :ready
717
+
718
+ # Creation time of the project creation workflow.
719
+ # Corresponds to the JSON property `createTime`
720
+ # @return [String]
721
+ attr_accessor :create_time
722
+
723
+ # True if the project can be retrieved using GetProject. No other operations
724
+ # on the project are guaranteed to work until the project creation is
725
+ # complete.
726
+ # Corresponds to the JSON property `gettable`
727
+ # @return [Boolean]
728
+ attr_accessor :gettable
729
+ alias_method :gettable?, :gettable
730
+
731
+ def initialize(**args)
732
+ update!(**args)
733
+ end
734
+
735
+ # Update properties of this object
736
+ def update!(**args)
737
+ @ready = args[:ready] if args.key?(:ready)
738
+ @create_time = args[:create_time] if args.key?(:create_time)
739
+ @gettable = args[:gettable] if args.key?(:gettable)
740
+ end
741
+ end
742
+
743
+ # Response message for `TestIamPermissions` method.
744
+ class TestIamPermissionsResponse
745
+ include Google::Apis::Core::Hashable
746
+
747
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
748
+ # allowed.
749
+ # Corresponds to the JSON property `permissions`
750
+ # @return [Array<String>]
751
+ attr_accessor :permissions
752
+
753
+ def initialize(**args)
754
+ update!(**args)
755
+ end
756
+
757
+ # Update properties of this object
758
+ def update!(**args)
759
+ @permissions = args[:permissions] if args.key?(:permissions)
760
+ end
761
+ end
762
+
763
+ # Request message for `GetIamPolicy` method.
764
+ class GetIamPolicyRequest
765
+ include Google::Apis::Core::Hashable
766
+
767
+ def initialize(**args)
768
+ update!(**args)
769
+ end
770
+
771
+ # Update properties of this object
772
+ def update!(**args)
773
+ end
774
+ end
775
+
776
+ # The entity that owns an Organization. The lifetime of the Organization and
777
+ # all of its descendants are bound to the `OrganizationOwner`. If the
778
+ # `OrganizationOwner` is deleted, the Organization and all its descendants will
779
+ # be deleted.
780
+ class OrganizationOwner
781
+ include Google::Apis::Core::Hashable
782
+
783
+ # The Google for Work customer id used in the Directory API.
784
+ # Corresponds to the JSON property `directoryCustomerId`
785
+ # @return [String]
786
+ attr_accessor :directory_customer_id
787
+
788
+ def initialize(**args)
789
+ update!(**args)
790
+ end
791
+
792
+ # Update properties of this object
793
+ def update!(**args)
794
+ @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id)
795
+ end
796
+ end
797
+
798
+ # A page of the response received from the
799
+ # ListProjects
800
+ # method.
801
+ # A paginated response where more pages are available has
802
+ # `next_page_token` set. This token can be used in a subsequent request to
803
+ # retrieve the next request page.
804
+ class ListProjectsResponse
805
+ include Google::Apis::Core::Hashable
806
+
807
+ # The list of Projects that matched the list filter. This list can
808
+ # be paginated.
809
+ # Corresponds to the JSON property `projects`
810
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Project>]
811
+ attr_accessor :projects
812
+
813
+ # Pagination token.
814
+ # If the result set is too large to fit in a single response, this token
815
+ # is returned. It encodes the position of the current result cursor.
816
+ # Feeding this value into a new list request with the `page_token` parameter
817
+ # gives the next page of the results.
818
+ # When `next_page_token` is not filled in, there is no next page and
819
+ # the list returned is the last page in the result set.
820
+ # Pagination tokens have a limited lifetime.
821
+ # Corresponds to the JSON property `nextPageToken`
822
+ # @return [String]
823
+ attr_accessor :next_page_token
824
+
825
+ def initialize(**args)
826
+ update!(**args)
827
+ end
828
+
829
+ # Update properties of this object
830
+ def update!(**args)
831
+ @projects = args[:projects] if args.key?(:projects)
832
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
833
+ end
834
+ end
835
+
836
+ # A Project is a high-level Google Cloud Platform entity. It is a
837
+ # container for ACLs, APIs, App Engine Apps, VMs, and other
838
+ # Google Cloud Platform resources.
839
+ class Project
840
+ include Google::Apis::Core::Hashable
841
+
842
+ # The Project lifecycle state.
843
+ # Read-only.
844
+ # Corresponds to the JSON property `lifecycleState`
845
+ # @return [String]
846
+ attr_accessor :lifecycle_state
847
+
848
+ # The number uniquely identifying the project.
849
+ # Example: <code>415104041262</code>
850
+ # Read-only.
851
+ # Corresponds to the JSON property `projectNumber`
852
+ # @return [String]
853
+ attr_accessor :project_number
854
+
855
+ # A container to reference an id for any resource type. A `resource` in Google
856
+ # Cloud Platform is a generic term for something you (a developer) may want to
857
+ # interact with through one of our API's. Some examples are an App Engine app,
858
+ # a Compute Engine instance, a Cloud SQL database, and so on.
859
+ # Corresponds to the JSON property `parent`
860
+ # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
861
+ attr_accessor :parent
862
+
863
+ # Creation time.
864
+ # Read-only.
865
+ # Corresponds to the JSON property `createTime`
866
+ # @return [String]
867
+ attr_accessor :create_time
868
+
869
+ # The labels associated with this Project.
870
+ # Label keys must be between 1 and 63 characters long and must conform
871
+ # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
872
+ # Label values must be between 0 and 63 characters long and must conform
873
+ # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
874
+ # No more than 256 labels can be associated with a given resource.
875
+ # Clients should store labels in a representation such as JSON that does not
876
+ # depend on specific characters being disallowed.
877
+ # Example: <code>"environment" : "dev"</code>
878
+ # Read-write.
879
+ # Corresponds to the JSON property `labels`
880
+ # @return [Hash<String,String>]
881
+ attr_accessor :labels
882
+
883
+ # The user-assigned display name of the Project.
884
+ # It must be 4 to 30 characters.
885
+ # Allowed characters are: lowercase and uppercase letters, numbers,
886
+ # hyphen, single-quote, double-quote, space, and exclamation point.
887
+ # Example: <code>My Project</code>
888
+ # Read-write.
889
+ # Corresponds to the JSON property `name`
890
+ # @return [String]
891
+ attr_accessor :name
892
+
893
+ # The unique, user-assigned ID of the Project.
894
+ # It must be 6 to 30 lowercase letters, digits, or hyphens.
895
+ # It must start with a letter.
896
+ # Trailing hyphens are prohibited.
897
+ # Example: <code>tokyo-rain-123</code>
898
+ # Read-only after creation.
899
+ # Corresponds to the JSON property `projectId`
900
+ # @return [String]
901
+ attr_accessor :project_id
902
+
903
+ def initialize(**args)
904
+ update!(**args)
905
+ end
906
+
907
+ # Update properties of this object
908
+ def update!(**args)
909
+ @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
910
+ @project_number = args[:project_number] if args.key?(:project_number)
911
+ @parent = args[:parent] if args.key?(:parent)
912
+ @create_time = args[:create_time] if args.key?(:create_time)
913
+ @labels = args[:labels] if args.key?(:labels)
914
+ @name = args[:name] if args.key?(:name)
915
+ @project_id = args[:project_id] if args.key?(:project_id)
916
+ end
917
+ end
918
+
919
+ # The response returned from the `SearchOrganizations` method.
920
+ class SearchOrganizationsResponse
921
+ include Google::Apis::Core::Hashable
922
+
923
+ # A pagination token to be used to retrieve the next page of results. If the
924
+ # result is too large to fit within the page size specified in the request,
925
+ # this field will be set with a token that can be used to fetch the next page
926
+ # of results. If this field is empty, it indicates that this response
927
+ # contains the last page of results.
928
+ # Corresponds to the JSON property `nextPageToken`
929
+ # @return [String]
930
+ attr_accessor :next_page_token
931
+
932
+ # The list of Organizations that matched the search query, possibly
933
+ # paginated.
934
+ # Corresponds to the JSON property `organizations`
935
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Organization>]
936
+ attr_accessor :organizations
937
+
938
+ def initialize(**args)
939
+ update!(**args)
940
+ end
941
+
942
+ # Update properties of this object
943
+ def update!(**args)
944
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
945
+ @organizations = args[:organizations] if args.key?(:organizations)
946
+ end
947
+ end
948
+
949
+ # A classification of the Folder Operation error.
950
+ class FolderOperationError
951
+ include Google::Apis::Core::Hashable
952
+
953
+ # The type of operation error experienced.
954
+ # Corresponds to the JSON property `errorMessageId`
955
+ # @return [String]
956
+ attr_accessor :error_message_id
957
+
958
+ def initialize(**args)
959
+ update!(**args)
960
+ end
961
+
962
+ # Update properties of this object
963
+ def update!(**args)
964
+ @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
965
+ end
966
+ end
967
+
968
+ # A Lien represents an encumbrance on the actions that can be performed on a
969
+ # resource.
970
+ class Lien
971
+ include Google::Apis::Core::Hashable
972
+
973
+ # A reference to the resource this Lien is attached to. The server will
974
+ # validate the parent against those for which Liens are supported.
975
+ # Example: `projects/1234`
976
+ # Corresponds to the JSON property `parent`
977
+ # @return [String]
978
+ attr_accessor :parent
979
+
980
+ # The creation time of this Lien.
981
+ # Corresponds to the JSON property `createTime`
982
+ # @return [String]
983
+ attr_accessor :create_time
984
+
985
+ # A system-generated unique identifier for this Lien.
986
+ # Example: `liens/1234abcd`
987
+ # Corresponds to the JSON property `name`
988
+ # @return [String]
989
+ attr_accessor :name
990
+
991
+ # Concise user-visible strings indicating why an action cannot be performed
992
+ # on a resource. Maximum lenth of 200 characters.
993
+ # Example: 'Holds production API key'
994
+ # Corresponds to the JSON property `reason`
995
+ # @return [String]
996
+ attr_accessor :reason
997
+
998
+ # A stable, user-visible/meaningful string identifying the origin of the
999
+ # Lien, intended to be inspected programmatically. Maximum length of 200
1000
+ # characters.
1001
+ # Example: 'compute.googleapis.com'
1002
+ # Corresponds to the JSON property `origin`
1003
+ # @return [String]
1004
+ attr_accessor :origin
1005
+
1006
+ # The types of operations which should be blocked as a result of this Lien.
1007
+ # Each value should correspond to an IAM permission. The server will
1008
+ # validate the permissions against those for which Liens are supported.
1009
+ # An empty list is meaningless and will be rejected.
1010
+ # Example: ['resourcemanager.projects.delete']
1011
+ # Corresponds to the JSON property `restrictions`
1012
+ # @return [Array<String>]
1013
+ attr_accessor :restrictions
1014
+
1015
+ def initialize(**args)
1016
+ update!(**args)
1017
+ end
1018
+
1019
+ # Update properties of this object
1020
+ def update!(**args)
1021
+ @parent = args[:parent] if args.key?(:parent)
1022
+ @create_time = args[:create_time] if args.key?(:create_time)
1023
+ @name = args[:name] if args.key?(:name)
1024
+ @reason = args[:reason] if args.key?(:reason)
1025
+ @origin = args[:origin] if args.key?(:origin)
1026
+ @restrictions = args[:restrictions] if args.key?(:restrictions)
1027
+ end
1028
+ end
1029
+
863
1030
  # Identifying information for a single ancestor of a project.
864
1031
  class Ancestor
865
1032
  include Google::Apis::Core::Hashable
866
1033
 
867
1034
  # A container to reference an id for any resource type. A `resource` in Google
868
1035
  # Cloud Platform is a generic term for something you (a developer) may want to
869
- # interact with through one of our API's. Some examples are an AppEngine app,
1036
+ # interact with through one of our API's. Some examples are an App Engine app,
870
1037
  # a Compute Engine instance, a Cloud SQL database, and so on.
871
1038
  # Corresponds to the JSON property `resourceId`
872
1039
  # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
@@ -881,6 +1048,60 @@ module Google
881
1048
  @resource_id = args[:resource_id] if args.key?(:resource_id)
882
1049
  end
883
1050
  end
1051
+
1052
+ # Request message for `SetIamPolicy` method.
1053
+ class SetIamPolicyRequest
1054
+ include Google::Apis::Core::Hashable
1055
+
1056
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
1057
+ # the fields in the mask will be modified. If no mask is provided, a default
1058
+ # mask is used:
1059
+ # paths: "bindings, etag"
1060
+ # This field is only used by Cloud IAM.
1061
+ # Corresponds to the JSON property `updateMask`
1062
+ # @return [String]
1063
+ attr_accessor :update_mask
1064
+
1065
+ # Defines an Identity and Access Management (IAM) policy. It is used to
1066
+ # specify access control policies for Cloud Platform resources.
1067
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
1068
+ # `members` to a `role`, where the members can be user accounts, Google groups,
1069
+ # Google domains, and service accounts. A `role` is a named list of permissions
1070
+ # defined by IAM.
1071
+ # **Example**
1072
+ # `
1073
+ # "bindings": [
1074
+ # `
1075
+ # "role": "roles/owner",
1076
+ # "members": [
1077
+ # "user:mike@example.com",
1078
+ # "group:admins@example.com",
1079
+ # "domain:google.com",
1080
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
1081
+ # ]
1082
+ # `,
1083
+ # `
1084
+ # "role": "roles/viewer",
1085
+ # "members": ["user:sean@example.com"]
1086
+ # `
1087
+ # ]
1088
+ # `
1089
+ # For a description of IAM and its features, see the
1090
+ # [IAM developer's guide](https://cloud.google.com/iam).
1091
+ # Corresponds to the JSON property `policy`
1092
+ # @return [Google::Apis::CloudresourcemanagerV1::Policy]
1093
+ attr_accessor :policy
1094
+
1095
+ def initialize(**args)
1096
+ update!(**args)
1097
+ end
1098
+
1099
+ # Update properties of this object
1100
+ def update!(**args)
1101
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
1102
+ @policy = args[:policy] if args.key?(:policy)
1103
+ end
1104
+ end
884
1105
  end
885
1106
  end
886
1107
  end