google-api-client 0.24.2 → 0.24.3

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 (185) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +68 -0
  3. data/README.md +9 -0
  4. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +5 -4
  5. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +90 -87
  6. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +17 -15
  7. data/generated/google/apis/admin_directory_v1.rb +1 -1
  8. data/generated/google/apis/admin_directory_v1/classes.rb +155 -0
  9. data/generated/google/apis/admin_directory_v1/representations.rb +82 -0
  10. data/generated/google/apis/alertcenter_v1beta1.rb +31 -0
  11. data/generated/google/apis/alertcenter_v1beta1/classes.rb +835 -0
  12. data/generated/google/apis/alertcenter_v1beta1/representations.rb +394 -0
  13. data/generated/google/apis/alertcenter_v1beta1/service.rb +302 -0
  14. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  15. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +37 -0
  16. data/generated/google/apis/androiddeviceprovisioning_v1/representations.rb +6 -0
  17. data/generated/google/apis/androiddeviceprovisioning_v1/service.rb +8 -1
  18. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  19. data/generated/google/apis/androidenterprise_v1/classes.rb +8 -4
  20. data/generated/google/apis/androidenterprise_v1/representations.rb +1 -0
  21. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  22. data/generated/google/apis/androidpublisher_v2/service.rb +5 -1
  23. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  24. data/generated/google/apis/androidpublisher_v3/service.rb +5 -1
  25. data/generated/google/apis/appengine_v1.rb +1 -1
  26. data/generated/google/apis/appengine_v1/classes.rb +8 -1
  27. data/generated/google/apis/appengine_v1/representations.rb +1 -0
  28. data/generated/google/apis/appengine_v1beta.rb +1 -1
  29. data/generated/google/apis/appengine_v1beta/classes.rb +1 -1
  30. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  31. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +6 -5
  32. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +12 -10
  33. data/generated/google/apis/calendar_v3.rb +1 -1
  34. data/generated/google/apis/calendar_v3/service.rb +52 -18
  35. data/generated/google/apis/cloudasset_v1beta1.rb +34 -0
  36. data/generated/google/apis/cloudasset_v1beta1/classes.rb +798 -0
  37. data/generated/google/apis/cloudasset_v1beta1/representations.rb +263 -0
  38. data/generated/google/apis/cloudasset_v1beta1/service.rb +313 -0
  39. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  40. data/generated/google/apis/cloudbuild_v1/classes.rb +42 -5
  41. data/generated/google/apis/cloudbuild_v1/representations.rb +6 -0
  42. data/generated/google/apis/cloudiot_v1.rb +1 -1
  43. data/generated/google/apis/cloudiot_v1/classes.rb +59 -0
  44. data/generated/google/apis/cloudiot_v1/representations.rb +28 -0
  45. data/generated/google/apis/cloudiot_v1/service.rb +94 -0
  46. data/generated/google/apis/composer_v1.rb +1 -1
  47. data/generated/google/apis/composer_v1/classes.rb +1 -0
  48. data/generated/google/apis/composer_v1beta1.rb +1 -1
  49. data/generated/google/apis/composer_v1beta1/classes.rb +34 -5
  50. data/generated/google/apis/composer_v1beta1/representations.rb +1 -0
  51. data/generated/google/apis/compute_alpha.rb +1 -1
  52. data/generated/google/apis/compute_alpha/classes.rb +227 -48
  53. data/generated/google/apis/compute_alpha/representations.rb +84 -1
  54. data/generated/google/apis/compute_alpha/service.rb +50 -10
  55. data/generated/google/apis/compute_beta.rb +1 -1
  56. data/generated/google/apis/compute_beta/classes.rb +593 -77
  57. data/generated/google/apis/compute_beta/representations.rb +224 -18
  58. data/generated/google/apis/compute_beta/service.rb +174 -3
  59. data/generated/google/apis/compute_v1.rb +1 -1
  60. data/generated/google/apis/compute_v1/classes.rb +41 -18
  61. data/generated/google/apis/compute_v1/representations.rb +3 -0
  62. data/generated/google/apis/content_v2.rb +1 -1
  63. data/generated/google/apis/content_v2/classes.rb +372 -119
  64. data/generated/google/apis/content_v2/representations.rb +157 -39
  65. data/generated/google/apis/content_v2/service.rb +101 -11
  66. data/generated/google/apis/content_v2sandbox.rb +1 -1
  67. data/generated/google/apis/content_v2sandbox/classes.rb +372 -119
  68. data/generated/google/apis/content_v2sandbox/representations.rb +157 -39
  69. data/generated/google/apis/content_v2sandbox/service.rb +90 -0
  70. data/generated/google/apis/customsearch_v1.rb +1 -1
  71. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  72. data/generated/google/apis/dataflow_v1b3/classes.rb +7 -0
  73. data/generated/google/apis/dataflow_v1b3/representations.rb +1 -0
  74. data/generated/google/apis/dataproc_v1.rb +1 -1
  75. data/generated/google/apis/dataproc_v1/classes.rb +12 -0
  76. data/generated/google/apis/dataproc_v1/representations.rb +2 -0
  77. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  78. data/generated/google/apis/dataproc_v1beta2/classes.rb +21 -6
  79. data/generated/google/apis/dataproc_v1beta2/representations.rb +2 -0
  80. data/generated/google/apis/datastore_v1.rb +1 -1
  81. data/generated/google/apis/datastore_v1/classes.rb +2 -2
  82. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  83. data/generated/google/apis/datastore_v1beta3/classes.rb +2 -2
  84. data/generated/google/apis/dlp_v2.rb +1 -1
  85. data/generated/google/apis/dlp_v2/classes.rb +110 -5
  86. data/generated/google/apis/dlp_v2/representations.rb +17 -0
  87. data/generated/google/apis/dlp_v2/service.rb +41 -3
  88. data/generated/google/apis/file_v1beta1.rb +1 -1
  89. data/generated/google/apis/file_v1beta1/classes.rb +0 -234
  90. data/generated/google/apis/file_v1beta1/representations.rb +0 -79
  91. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  92. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +19 -1
  93. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +3 -0
  94. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +4 -1
  95. data/generated/google/apis/firebasehosting_v1beta1.rb +43 -0
  96. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +767 -0
  97. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +337 -0
  98. data/generated/google/apis/firebasehosting_v1beta1/service.rb +502 -0
  99. data/generated/google/apis/firebaserules_v1.rb +1 -1
  100. data/generated/google/apis/firebaserules_v1/classes.rb +8 -0
  101. data/generated/google/apis/firebaserules_v1/representations.rb +1 -0
  102. data/generated/google/apis/firebaserules_v1/service.rb +1 -1
  103. data/generated/google/apis/firestore_v1beta2.rb +1 -1
  104. data/generated/google/apis/firestore_v1beta2/service.rb +80 -80
  105. data/generated/google/apis/games_v1.rb +1 -1
  106. data/generated/google/apis/games_v1/service.rb +4 -1
  107. data/generated/google/apis/iam_v1.rb +1 -1
  108. data/generated/google/apis/iam_v1/classes.rb +3 -1
  109. data/generated/google/apis/iamcredentials_v1.rb +1 -1
  110. data/generated/google/apis/iamcredentials_v1/service.rb +0 -10
  111. data/generated/google/apis/iap_v1beta1.rb +1 -1
  112. data/generated/google/apis/iap_v1beta1/service.rb +339 -0
  113. data/generated/google/apis/jobs_v2.rb +1 -1
  114. data/generated/google/apis/jobs_v2/classes.rb +45 -37
  115. data/generated/google/apis/jobs_v3.rb +1 -1
  116. data/generated/google/apis/jobs_v3/classes.rb +21 -18
  117. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  118. data/generated/google/apis/jobs_v3p1beta1/classes.rb +45 -20
  119. data/generated/google/apis/jobs_v3p1beta1/representations.rb +2 -0
  120. data/generated/google/apis/language_v1.rb +1 -1
  121. data/generated/google/apis/language_v1beta1.rb +1 -1
  122. data/generated/google/apis/language_v1beta2.rb +1 -1
  123. data/generated/google/apis/logging_v2.rb +1 -1
  124. data/generated/google/apis/logging_v2/classes.rb +12 -0
  125. data/generated/google/apis/logging_v2/representations.rb +1 -0
  126. data/generated/google/apis/logging_v2beta1.rb +1 -1
  127. data/generated/google/apis/logging_v2beta1/classes.rb +12 -0
  128. data/generated/google/apis/logging_v2beta1/representations.rb +1 -0
  129. data/generated/google/apis/ml_v1.rb +1 -1
  130. data/generated/google/apis/ml_v1/classes.rb +2 -2
  131. data/generated/google/apis/monitoring_v3.rb +1 -1
  132. data/generated/google/apis/monitoring_v3/classes.rb +19 -17
  133. data/generated/google/apis/monitoring_v3/representations.rb +1 -2
  134. data/generated/google/apis/partners_v2.rb +1 -1
  135. data/generated/google/apis/partners_v2/classes.rb +18 -15
  136. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  137. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +18 -15
  138. data/generated/google/apis/redis_v1.rb +1 -1
  139. data/generated/google/apis/redis_v1/classes.rb +1 -1
  140. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  141. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +1 -1
  142. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  143. data/generated/google/apis/servicemanagement_v1/classes.rb +2 -150
  144. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -42
  145. data/generated/google/apis/servicenetworking_v1beta.rb +38 -0
  146. data/generated/google/apis/servicenetworking_v1beta/classes.rb +3440 -0
  147. data/generated/google/apis/servicenetworking_v1beta/representations.rb +992 -0
  148. data/generated/google/apis/servicenetworking_v1beta/service.rb +227 -0
  149. data/generated/google/apis/serviceusage_v1.rb +1 -1
  150. data/generated/google/apis/serviceusage_v1/classes.rb +1 -1
  151. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  152. data/generated/google/apis/serviceusage_v1beta1/classes.rb +1 -1
  153. data/generated/google/apis/serviceuser_v1.rb +1 -1
  154. data/generated/google/apis/serviceuser_v1/classes.rb +2 -150
  155. data/generated/google/apis/serviceuser_v1/representations.rb +0 -42
  156. data/generated/google/apis/spanner_v1.rb +1 -1
  157. data/generated/google/apis/spanner_v1/classes.rb +308 -30
  158. data/generated/google/apis/spanner_v1/representations.rb +17 -0
  159. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  160. data/generated/google/apis/streetviewpublish_v1/classes.rb +12 -0
  161. data/generated/google/apis/streetviewpublish_v1/representations.rb +1 -0
  162. data/generated/google/apis/testing_v1.rb +1 -1
  163. data/generated/google/apis/testing_v1/classes.rb +47 -0
  164. data/generated/google/apis/testing_v1/representations.rb +18 -0
  165. data/generated/google/apis/videointelligence_v1.rb +1 -1
  166. data/generated/google/apis/videointelligence_v1/classes.rb +676 -0
  167. data/generated/google/apis/videointelligence_v1/representations.rb +306 -0
  168. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  169. data/generated/google/apis/videointelligence_v1beta2/classes.rb +676 -0
  170. data/generated/google/apis/videointelligence_v1beta2/representations.rb +306 -0
  171. data/generated/google/apis/{videointelligence_v1beta1.rb → videointelligence_v1p1beta1.rb} +6 -6
  172. data/generated/google/apis/{videointelligence_v1beta1 → videointelligence_v1p1beta1}/classes.rb +885 -489
  173. data/generated/google/apis/{videointelligence_v1beta1 → videointelligence_v1p1beta1}/representations.rb +357 -194
  174. data/generated/google/apis/{videointelligence_v1beta1 → videointelligence_v1p1beta1}/service.rb +12 -12
  175. data/generated/google/apis/vision_v1.rb +1 -1
  176. data/generated/google/apis/vision_v1/classes.rb +1 -1
  177. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  178. data/generated/google/apis/vision_v1p1beta1/classes.rb +1 -1
  179. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  180. data/generated/google/apis/vision_v1p2beta1/classes.rb +1 -1
  181. data/generated/google/apis/youtube_partner_v1.rb +2 -2
  182. data/generated/google/apis/youtube_partner_v1/classes.rb +2 -1
  183. data/generated/google/apis/youtube_partner_v1/service.rb +1 -1
  184. data/lib/google/apis/version.rb +1 -1
  185. metadata +22 -6
@@ -0,0 +1,34 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/cloudasset_v1beta1/service.rb'
16
+ require 'google/apis/cloudasset_v1beta1/classes.rb'
17
+ require 'google/apis/cloudasset_v1beta1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Cloud Asset API
22
+ #
23
+ # The cloud asset API manages the history and inventory of cloud resources.
24
+ #
25
+ # @see https://console.cloud.google.com/apis/api/cloudasset.googleapis.com/overview
26
+ module CloudassetV1beta1
27
+ VERSION = 'V1beta1'
28
+ REVISION = '20181001'
29
+
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,798 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module CloudassetV1beta1
24
+
25
+ # Cloud asset. This includes all Google Cloud Platform resources,
26
+ # Cloud IAM policies, and other non-GCP assets.
27
+ class Asset
28
+ include Google::Apis::Core::Hashable
29
+
30
+ # Type of the asset. Example: "google.compute.disk".
31
+ # Corresponds to the JSON property `assetType`
32
+ # @return [String]
33
+ attr_accessor :asset_type
34
+
35
+ # Defines an Identity and Access Management (IAM) policy. It is used to
36
+ # specify access control policies for Cloud Platform resources.
37
+ # A `Policy` consists of a list of `bindings`. A `binding` binds a list of
38
+ # `members` to a `role`, where the members can be user accounts, Google groups,
39
+ # Google domains, and service accounts. A `role` is a named list of permissions
40
+ # defined by IAM.
41
+ # **JSON Example**
42
+ # `
43
+ # "bindings": [
44
+ # `
45
+ # "role": "roles/owner",
46
+ # "members": [
47
+ # "user:mike@example.com",
48
+ # "group:admins@example.com",
49
+ # "domain:google.com",
50
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com"
51
+ # ]
52
+ # `,
53
+ # `
54
+ # "role": "roles/viewer",
55
+ # "members": ["user:sean@example.com"]
56
+ # `
57
+ # ]
58
+ # `
59
+ # **YAML Example**
60
+ # bindings:
61
+ # - members:
62
+ # - user:mike@example.com
63
+ # - group:admins@example.com
64
+ # - domain:google.com
65
+ # - serviceAccount:my-other-app@appspot.gserviceaccount.com
66
+ # role: roles/owner
67
+ # - members:
68
+ # - user:sean@example.com
69
+ # role: roles/viewer
70
+ # For a description of IAM and its features, see the
71
+ # [IAM developer's guide](https://cloud.google.com/iam/docs).
72
+ # Corresponds to the JSON property `iamPolicy`
73
+ # @return [Google::Apis::CloudassetV1beta1::Policy]
74
+ attr_accessor :iam_policy
75
+
76
+ # The full name of the asset. For example: `//compute.googleapis.com/projects/
77
+ # my_project_123/zones/zone1/instances/instance1`.
78
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names#
79
+ # full_resource_name)
80
+ # for more information.
81
+ # Corresponds to the JSON property `name`
82
+ # @return [String]
83
+ attr_accessor :name
84
+
85
+ # Representation of a cloud resource.
86
+ # Corresponds to the JSON property `resource`
87
+ # @return [Google::Apis::CloudassetV1beta1::Resource]
88
+ attr_accessor :resource
89
+
90
+ def initialize(**args)
91
+ update!(**args)
92
+ end
93
+
94
+ # Update properties of this object
95
+ def update!(**args)
96
+ @asset_type = args[:asset_type] if args.key?(:asset_type)
97
+ @iam_policy = args[:iam_policy] if args.key?(:iam_policy)
98
+ @name = args[:name] if args.key?(:name)
99
+ @resource = args[:resource] if args.key?(:resource)
100
+ end
101
+ end
102
+
103
+ # Specifies the audit configuration for a service.
104
+ # The configuration determines which permission types are logged, and what
105
+ # identities, if any, are exempted from logging.
106
+ # An AuditConfig must have one or more AuditLogConfigs.
107
+ # If there are AuditConfigs for both `allServices` and a specific service,
108
+ # the union of the two AuditConfigs is used for that service: the log_types
109
+ # specified in each AuditConfig are enabled, and the exempted_members in each
110
+ # AuditLogConfig are exempted.
111
+ # Example Policy with multiple AuditConfigs:
112
+ # `
113
+ # "audit_configs": [
114
+ # `
115
+ # "service": "allServices"
116
+ # "audit_log_configs": [
117
+ # `
118
+ # "log_type": "DATA_READ",
119
+ # "exempted_members": [
120
+ # "user:foo@gmail.com"
121
+ # ]
122
+ # `,
123
+ # `
124
+ # "log_type": "DATA_WRITE",
125
+ # `,
126
+ # `
127
+ # "log_type": "ADMIN_READ",
128
+ # `
129
+ # ]
130
+ # `,
131
+ # `
132
+ # "service": "fooservice.googleapis.com"
133
+ # "audit_log_configs": [
134
+ # `
135
+ # "log_type": "DATA_READ",
136
+ # `,
137
+ # `
138
+ # "log_type": "DATA_WRITE",
139
+ # "exempted_members": [
140
+ # "user:bar@gmail.com"
141
+ # ]
142
+ # `
143
+ # ]
144
+ # `
145
+ # ]
146
+ # `
147
+ # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
148
+ # logging. It also exempts foo@gmail.com from DATA_READ logging, and
149
+ # bar@gmail.com from DATA_WRITE logging.
150
+ class AuditConfig
151
+ include Google::Apis::Core::Hashable
152
+
153
+ # The configuration for logging of each type of permission.
154
+ # Corresponds to the JSON property `auditLogConfigs`
155
+ # @return [Array<Google::Apis::CloudassetV1beta1::AuditLogConfig>]
156
+ attr_accessor :audit_log_configs
157
+
158
+ # Specifies a service that will be enabled for audit logging.
159
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
160
+ # `allServices` is a special value that covers all services.
161
+ # Corresponds to the JSON property `service`
162
+ # @return [String]
163
+ attr_accessor :service
164
+
165
+ def initialize(**args)
166
+ update!(**args)
167
+ end
168
+
169
+ # Update properties of this object
170
+ def update!(**args)
171
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
172
+ @service = args[:service] if args.key?(:service)
173
+ end
174
+ end
175
+
176
+ # Provides the configuration for logging a type of permissions.
177
+ # Example:
178
+ # `
179
+ # "audit_log_configs": [
180
+ # `
181
+ # "log_type": "DATA_READ",
182
+ # "exempted_members": [
183
+ # "user:foo@gmail.com"
184
+ # ]
185
+ # `,
186
+ # `
187
+ # "log_type": "DATA_WRITE",
188
+ # `
189
+ # ]
190
+ # `
191
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
192
+ # foo@gmail.com from DATA_READ logging.
193
+ class AuditLogConfig
194
+ include Google::Apis::Core::Hashable
195
+
196
+ # Specifies the identities that do not cause logging for this type of
197
+ # permission.
198
+ # Follows the same format of Binding.members.
199
+ # Corresponds to the JSON property `exemptedMembers`
200
+ # @return [Array<String>]
201
+ attr_accessor :exempted_members
202
+
203
+ # The log type that this config enables.
204
+ # Corresponds to the JSON property `logType`
205
+ # @return [String]
206
+ attr_accessor :log_type
207
+
208
+ def initialize(**args)
209
+ update!(**args)
210
+ end
211
+
212
+ # Update properties of this object
213
+ def update!(**args)
214
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
215
+ @log_type = args[:log_type] if args.key?(:log_type)
216
+ end
217
+ end
218
+
219
+ # Batch get assets history response.
220
+ class BatchGetAssetsHistoryResponse
221
+ include Google::Apis::Core::Hashable
222
+
223
+ # A list of assets with valid time windows.
224
+ # Corresponds to the JSON property `assets`
225
+ # @return [Array<Google::Apis::CloudassetV1beta1::TemporalAsset>]
226
+ attr_accessor :assets
227
+
228
+ def initialize(**args)
229
+ update!(**args)
230
+ end
231
+
232
+ # Update properties of this object
233
+ def update!(**args)
234
+ @assets = args[:assets] if args.key?(:assets)
235
+ end
236
+ end
237
+
238
+ # Associates `members` with a `role`.
239
+ class Binding
240
+ include Google::Apis::Core::Hashable
241
+
242
+ # Represents an expression text. Example:
243
+ # title: "User account presence"
244
+ # description: "Determines whether the request has a user account"
245
+ # expression: "size(request.user) > 0"
246
+ # Corresponds to the JSON property `condition`
247
+ # @return [Google::Apis::CloudassetV1beta1::Expr]
248
+ attr_accessor :condition
249
+
250
+ # Specifies the identities requesting access for a Cloud Platform resource.
251
+ # `members` can have the following values:
252
+ # * `allUsers`: A special identifier that represents anyone who is
253
+ # on the internet; with or without a Google account.
254
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
255
+ # who is authenticated with a Google account or a service account.
256
+ # * `user:`emailid``: An email address that represents a specific Google
257
+ # account. For example, `alice@gmail.com` .
258
+ # * `serviceAccount:`emailid``: An email address that represents a service
259
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
260
+ # * `group:`emailid``: An email address that represents a Google group.
261
+ # For example, `admins@example.com`.
262
+ # * `domain:`domain``: A Google Apps domain name that represents all the
263
+ # users of that domain. For example, `google.com` or `example.com`.
264
+ # Corresponds to the JSON property `members`
265
+ # @return [Array<String>]
266
+ attr_accessor :members
267
+
268
+ # Role that is assigned to `members`.
269
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
270
+ # Corresponds to the JSON property `role`
271
+ # @return [String]
272
+ attr_accessor :role
273
+
274
+ def initialize(**args)
275
+ update!(**args)
276
+ end
277
+
278
+ # Update properties of this object
279
+ def update!(**args)
280
+ @condition = args[:condition] if args.key?(:condition)
281
+ @members = args[:members] if args.key?(:members)
282
+ @role = args[:role] if args.key?(:role)
283
+ end
284
+ end
285
+
286
+ # Export asset request.
287
+ class ExportAssetsRequest
288
+ include Google::Apis::Core::Hashable
289
+
290
+ # A list of asset types of which to take a snapshot for. For example:
291
+ # "google.compute.disk". If specified, only matching assets will be returned.
292
+ # Corresponds to the JSON property `assetTypes`
293
+ # @return [Array<String>]
294
+ attr_accessor :asset_types
295
+
296
+ # Asset content type. If not specified, no content but the asset name will be
297
+ # returned.
298
+ # Corresponds to the JSON property `contentType`
299
+ # @return [String]
300
+ attr_accessor :content_type
301
+
302
+ # Output configuration for export assets destination.
303
+ # Corresponds to the JSON property `outputConfig`
304
+ # @return [Google::Apis::CloudassetV1beta1::OutputConfig]
305
+ attr_accessor :output_config
306
+
307
+ # Timestamp to take an asset snapshot. This can only be set to a timestamp in
308
+ # the past or of the current time. If not specified, the current time will be
309
+ # used. Due to delays in resource data collection and indexing, there is a
310
+ # volatile window during which running the same query may get different
311
+ # results.
312
+ # Corresponds to the JSON property `readTime`
313
+ # @return [String]
314
+ attr_accessor :read_time
315
+
316
+ def initialize(**args)
317
+ update!(**args)
318
+ end
319
+
320
+ # Update properties of this object
321
+ def update!(**args)
322
+ @asset_types = args[:asset_types] if args.key?(:asset_types)
323
+ @content_type = args[:content_type] if args.key?(:content_type)
324
+ @output_config = args[:output_config] if args.key?(:output_config)
325
+ @read_time = args[:read_time] if args.key?(:read_time)
326
+ end
327
+ end
328
+
329
+ # Represents an expression text. Example:
330
+ # title: "User account presence"
331
+ # description: "Determines whether the request has a user account"
332
+ # expression: "size(request.user) > 0"
333
+ class Expr
334
+ include Google::Apis::Core::Hashable
335
+
336
+ # An optional description of the expression. This is a longer text which
337
+ # describes the expression, e.g. when hovered over it in a UI.
338
+ # Corresponds to the JSON property `description`
339
+ # @return [String]
340
+ attr_accessor :description
341
+
342
+ # Textual representation of an expression in
343
+ # Common Expression Language syntax.
344
+ # The application context of the containing message determines which
345
+ # well-known feature set of CEL is supported.
346
+ # Corresponds to the JSON property `expression`
347
+ # @return [String]
348
+ attr_accessor :expression
349
+
350
+ # An optional string indicating the location of the expression for error
351
+ # reporting, e.g. a file name and a position in the file.
352
+ # Corresponds to the JSON property `location`
353
+ # @return [String]
354
+ attr_accessor :location
355
+
356
+ # An optional title for the expression, i.e. a short string describing
357
+ # its purpose. This can be used e.g. in UIs which allow to enter the
358
+ # expression.
359
+ # Corresponds to the JSON property `title`
360
+ # @return [String]
361
+ attr_accessor :title
362
+
363
+ def initialize(**args)
364
+ update!(**args)
365
+ end
366
+
367
+ # Update properties of this object
368
+ def update!(**args)
369
+ @description = args[:description] if args.key?(:description)
370
+ @expression = args[:expression] if args.key?(:expression)
371
+ @location = args[:location] if args.key?(:location)
372
+ @title = args[:title] if args.key?(:title)
373
+ end
374
+ end
375
+
376
+ # A Cloud Storage location.
377
+ class GcsDestination
378
+ include Google::Apis::Core::Hashable
379
+
380
+ # The path of the Cloud Storage objects. It's the same path that is used by
381
+ # gsutil. For example: "gs://bucket_name/object_path". See [Viewing and Editing
382
+ # Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-
383
+ # metadata)
384
+ # for more information.
385
+ # Corresponds to the JSON property `uri`
386
+ # @return [String]
387
+ attr_accessor :uri
388
+
389
+ def initialize(**args)
390
+ update!(**args)
391
+ end
392
+
393
+ # Update properties of this object
394
+ def update!(**args)
395
+ @uri = args[:uri] if args.key?(:uri)
396
+ end
397
+ end
398
+
399
+ # This resource represents a long-running operation that is the result of a
400
+ # network API call.
401
+ class Operation
402
+ include Google::Apis::Core::Hashable
403
+
404
+ # If the value is `false`, it means the operation is still in progress.
405
+ # If `true`, the operation is completed, and either `error` or `response` is
406
+ # available.
407
+ # Corresponds to the JSON property `done`
408
+ # @return [Boolean]
409
+ attr_accessor :done
410
+ alias_method :done?, :done
411
+
412
+ # The `Status` type defines a logical error model that is suitable for different
413
+ # programming environments, including REST APIs and RPC APIs. It is used by
414
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
415
+ # - Simple to use and understand for most users
416
+ # - Flexible enough to meet unexpected needs
417
+ # # Overview
418
+ # The `Status` message contains three pieces of data: error code, error message,
419
+ # and error details. The error code should be an enum value of
420
+ # google.rpc.Code, but it may accept additional error codes if needed. The
421
+ # error message should be a developer-facing English message that helps
422
+ # developers *understand* and *resolve* the error. If a localized user-facing
423
+ # error message is needed, put the localized message in the error details or
424
+ # localize it in the client. The optional error details may contain arbitrary
425
+ # information about the error. There is a predefined set of error detail types
426
+ # in the package `google.rpc` that can be used for common error conditions.
427
+ # # Language mapping
428
+ # The `Status` message is the logical representation of the error model, but it
429
+ # is not necessarily the actual wire format. When the `Status` message is
430
+ # exposed in different client libraries and different wire protocols, it can be
431
+ # mapped differently. For example, it will likely be mapped to some exceptions
432
+ # in Java, but more likely mapped to some error codes in C.
433
+ # # Other uses
434
+ # The error model and the `Status` message can be used in a variety of
435
+ # environments, either with or without APIs, to provide a
436
+ # consistent developer experience across different environments.
437
+ # Example uses of this error model include:
438
+ # - Partial errors. If a service needs to return partial errors to the client,
439
+ # it may embed the `Status` in the normal response to indicate the partial
440
+ # errors.
441
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
442
+ # have a `Status` message for error reporting.
443
+ # - Batch operations. If a client uses batch request and batch response, the
444
+ # `Status` message should be used directly inside batch response, one for
445
+ # each error sub-response.
446
+ # - Asynchronous operations. If an API call embeds asynchronous operation
447
+ # results in its response, the status of those operations should be
448
+ # represented directly using the `Status` message.
449
+ # - Logging. If some API errors are stored in logs, the message `Status` could
450
+ # be used directly after any stripping needed for security/privacy reasons.
451
+ # Corresponds to the JSON property `error`
452
+ # @return [Google::Apis::CloudassetV1beta1::Status]
453
+ attr_accessor :error
454
+
455
+ # Service-specific metadata associated with the operation. It typically
456
+ # contains progress information and common metadata such as create time.
457
+ # Some services might not provide such metadata. Any method that returns a
458
+ # long-running operation should document the metadata type, if any.
459
+ # Corresponds to the JSON property `metadata`
460
+ # @return [Hash<String,Object>]
461
+ attr_accessor :metadata
462
+
463
+ # The server-assigned name, which is only unique within the same service that
464
+ # originally returns it. If you use the default HTTP mapping, the
465
+ # `name` should have the format of `operations/some/unique/name`.
466
+ # Corresponds to the JSON property `name`
467
+ # @return [String]
468
+ attr_accessor :name
469
+
470
+ # The normal response of the operation in case of success. If the original
471
+ # method returns no data on success, such as `Delete`, the response is
472
+ # `google.protobuf.Empty`. If the original method is standard
473
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
474
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
475
+ # is the original method name. For example, if the original method name
476
+ # is `TakeSnapshot()`, the inferred response type is
477
+ # `TakeSnapshotResponse`.
478
+ # Corresponds to the JSON property `response`
479
+ # @return [Hash<String,Object>]
480
+ attr_accessor :response
481
+
482
+ def initialize(**args)
483
+ update!(**args)
484
+ end
485
+
486
+ # Update properties of this object
487
+ def update!(**args)
488
+ @done = args[:done] if args.key?(:done)
489
+ @error = args[:error] if args.key?(:error)
490
+ @metadata = args[:metadata] if args.key?(:metadata)
491
+ @name = args[:name] if args.key?(:name)
492
+ @response = args[:response] if args.key?(:response)
493
+ end
494
+ end
495
+
496
+ # Output configuration for export assets destination.
497
+ class OutputConfig
498
+ include Google::Apis::Core::Hashable
499
+
500
+ # A Cloud Storage location.
501
+ # Corresponds to the JSON property `gcsDestination`
502
+ # @return [Google::Apis::CloudassetV1beta1::GcsDestination]
503
+ attr_accessor :gcs_destination
504
+
505
+ def initialize(**args)
506
+ update!(**args)
507
+ end
508
+
509
+ # Update properties of this object
510
+ def update!(**args)
511
+ @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
512
+ end
513
+ end
514
+
515
+ # Defines an Identity and Access Management (IAM) policy. It is used to
516
+ # specify access control policies for Cloud Platform resources.
517
+ # A `Policy` consists of a list of `bindings`. A `binding` binds a list of
518
+ # `members` to a `role`, where the members can be user accounts, Google groups,
519
+ # Google domains, and service accounts. A `role` is a named list of permissions
520
+ # defined by IAM.
521
+ # **JSON Example**
522
+ # `
523
+ # "bindings": [
524
+ # `
525
+ # "role": "roles/owner",
526
+ # "members": [
527
+ # "user:mike@example.com",
528
+ # "group:admins@example.com",
529
+ # "domain:google.com",
530
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com"
531
+ # ]
532
+ # `,
533
+ # `
534
+ # "role": "roles/viewer",
535
+ # "members": ["user:sean@example.com"]
536
+ # `
537
+ # ]
538
+ # `
539
+ # **YAML Example**
540
+ # bindings:
541
+ # - members:
542
+ # - user:mike@example.com
543
+ # - group:admins@example.com
544
+ # - domain:google.com
545
+ # - serviceAccount:my-other-app@appspot.gserviceaccount.com
546
+ # role: roles/owner
547
+ # - members:
548
+ # - user:sean@example.com
549
+ # role: roles/viewer
550
+ # For a description of IAM and its features, see the
551
+ # [IAM developer's guide](https://cloud.google.com/iam/docs).
552
+ class Policy
553
+ include Google::Apis::Core::Hashable
554
+
555
+ # Specifies cloud audit logging configuration for this policy.
556
+ # Corresponds to the JSON property `auditConfigs`
557
+ # @return [Array<Google::Apis::CloudassetV1beta1::AuditConfig>]
558
+ attr_accessor :audit_configs
559
+
560
+ # Associates a list of `members` to a `role`.
561
+ # `bindings` with no members will result in an error.
562
+ # Corresponds to the JSON property `bindings`
563
+ # @return [Array<Google::Apis::CloudassetV1beta1::Binding>]
564
+ attr_accessor :bindings
565
+
566
+ # `etag` is used for optimistic concurrency control as a way to help
567
+ # prevent simultaneous updates of a policy from overwriting each other.
568
+ # It is strongly suggested that systems make use of the `etag` in the
569
+ # read-modify-write cycle to perform policy updates in order to avoid race
570
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
571
+ # systems are expected to put that etag in the request to `setIamPolicy` to
572
+ # ensure that their change will be applied to the same version of the policy.
573
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
574
+ # policy is overwritten blindly.
575
+ # Corresponds to the JSON property `etag`
576
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
577
+ # @return [String]
578
+ attr_accessor :etag
579
+
580
+ # Deprecated.
581
+ # Corresponds to the JSON property `version`
582
+ # @return [Fixnum]
583
+ attr_accessor :version
584
+
585
+ def initialize(**args)
586
+ update!(**args)
587
+ end
588
+
589
+ # Update properties of this object
590
+ def update!(**args)
591
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
592
+ @bindings = args[:bindings] if args.key?(:bindings)
593
+ @etag = args[:etag] if args.key?(:etag)
594
+ @version = args[:version] if args.key?(:version)
595
+ end
596
+ end
597
+
598
+ # Representation of a cloud resource.
599
+ class Resource
600
+ include Google::Apis::Core::Hashable
601
+
602
+ # The content of the resource, in which some sensitive fields are scrubbed
603
+ # away and may not be present.
604
+ # Corresponds to the JSON property `data`
605
+ # @return [Hash<String,Object>]
606
+ attr_accessor :data
607
+
608
+ # The URL of the discovery document containing the resource's JSON schema.
609
+ # For example:
610
+ # `"https://www.googleapis.com/discovery/v1/apis/compute/v1/rest"`.
611
+ # It will be left unspecified for resources without a discovery-based API,
612
+ # such as Cloud Bigtable.
613
+ # Corresponds to the JSON property `discoveryDocumentUri`
614
+ # @return [String]
615
+ attr_accessor :discovery_document_uri
616
+
617
+ # The JSON schema name listed in the discovery document.
618
+ # Example: "Project". It will be left unspecified for resources (such as
619
+ # Cloud Bigtable) without a discovery-based API.
620
+ # Corresponds to the JSON property `discoveryName`
621
+ # @return [String]
622
+ attr_accessor :discovery_name
623
+
624
+ # The full name of the immediate parent of this resource. See
625
+ # [Resource Names](https://cloud.google.com/apis/design/resource_names#
626
+ # full_resource_name)
627
+ # for more information.
628
+ # For GCP assets, it is the parent resource defined in the [Cloud IAM policy
629
+ # hierarchy](https://cloud.google.com/iam/docs/overview#policy_hierarchy).
630
+ # For example: `"//cloudresourcemanager.googleapis.com/projects/my_project_123"`.
631
+ # For third-party assets, it is up to the users to define.
632
+ # Corresponds to the JSON property `parent`
633
+ # @return [String]
634
+ attr_accessor :parent
635
+
636
+ # The REST URL for accessing the resource. An HTTP GET operation using this
637
+ # URL returns the resource itself.
638
+ # Example:
639
+ # `https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123`.
640
+ # It will be left unspecified for resources without a REST API.
641
+ # Corresponds to the JSON property `resourceUrl`
642
+ # @return [String]
643
+ attr_accessor :resource_url
644
+
645
+ # The API version. Example: "v1".
646
+ # Corresponds to the JSON property `version`
647
+ # @return [String]
648
+ attr_accessor :version
649
+
650
+ def initialize(**args)
651
+ update!(**args)
652
+ end
653
+
654
+ # Update properties of this object
655
+ def update!(**args)
656
+ @data = args[:data] if args.key?(:data)
657
+ @discovery_document_uri = args[:discovery_document_uri] if args.key?(:discovery_document_uri)
658
+ @discovery_name = args[:discovery_name] if args.key?(:discovery_name)
659
+ @parent = args[:parent] if args.key?(:parent)
660
+ @resource_url = args[:resource_url] if args.key?(:resource_url)
661
+ @version = args[:version] if args.key?(:version)
662
+ end
663
+ end
664
+
665
+ # The `Status` type defines a logical error model that is suitable for different
666
+ # programming environments, including REST APIs and RPC APIs. It is used by
667
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
668
+ # - Simple to use and understand for most users
669
+ # - Flexible enough to meet unexpected needs
670
+ # # Overview
671
+ # The `Status` message contains three pieces of data: error code, error message,
672
+ # and error details. The error code should be an enum value of
673
+ # google.rpc.Code, but it may accept additional error codes if needed. The
674
+ # error message should be a developer-facing English message that helps
675
+ # developers *understand* and *resolve* the error. If a localized user-facing
676
+ # error message is needed, put the localized message in the error details or
677
+ # localize it in the client. The optional error details may contain arbitrary
678
+ # information about the error. There is a predefined set of error detail types
679
+ # in the package `google.rpc` that can be used for common error conditions.
680
+ # # Language mapping
681
+ # The `Status` message is the logical representation of the error model, but it
682
+ # is not necessarily the actual wire format. When the `Status` message is
683
+ # exposed in different client libraries and different wire protocols, it can be
684
+ # mapped differently. For example, it will likely be mapped to some exceptions
685
+ # in Java, but more likely mapped to some error codes in C.
686
+ # # Other uses
687
+ # The error model and the `Status` message can be used in a variety of
688
+ # environments, either with or without APIs, to provide a
689
+ # consistent developer experience across different environments.
690
+ # Example uses of this error model include:
691
+ # - Partial errors. If a service needs to return partial errors to the client,
692
+ # it may embed the `Status` in the normal response to indicate the partial
693
+ # errors.
694
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
695
+ # have a `Status` message for error reporting.
696
+ # - Batch operations. If a client uses batch request and batch response, the
697
+ # `Status` message should be used directly inside batch response, one for
698
+ # each error sub-response.
699
+ # - Asynchronous operations. If an API call embeds asynchronous operation
700
+ # results in its response, the status of those operations should be
701
+ # represented directly using the `Status` message.
702
+ # - Logging. If some API errors are stored in logs, the message `Status` could
703
+ # be used directly after any stripping needed for security/privacy reasons.
704
+ class Status
705
+ include Google::Apis::Core::Hashable
706
+
707
+ # The status code, which should be an enum value of google.rpc.Code.
708
+ # Corresponds to the JSON property `code`
709
+ # @return [Fixnum]
710
+ attr_accessor :code
711
+
712
+ # A list of messages that carry the error details. There is a common set of
713
+ # message types for APIs to use.
714
+ # Corresponds to the JSON property `details`
715
+ # @return [Array<Hash<String,Object>>]
716
+ attr_accessor :details
717
+
718
+ # A developer-facing error message, which should be in English. Any
719
+ # user-facing error message should be localized and sent in the
720
+ # google.rpc.Status.details field, or localized by the client.
721
+ # Corresponds to the JSON property `message`
722
+ # @return [String]
723
+ attr_accessor :message
724
+
725
+ def initialize(**args)
726
+ update!(**args)
727
+ end
728
+
729
+ # Update properties of this object
730
+ def update!(**args)
731
+ @code = args[:code] if args.key?(:code)
732
+ @details = args[:details] if args.key?(:details)
733
+ @message = args[:message] if args.key?(:message)
734
+ end
735
+ end
736
+
737
+ # Temporal asset. In addition to the asset, the temporal asset includes the
738
+ # status of the asset and valid from and to time of it.
739
+ class TemporalAsset
740
+ include Google::Apis::Core::Hashable
741
+
742
+ # Cloud asset. This includes all Google Cloud Platform resources,
743
+ # Cloud IAM policies, and other non-GCP assets.
744
+ # Corresponds to the JSON property `asset`
745
+ # @return [Google::Apis::CloudassetV1beta1::Asset]
746
+ attr_accessor :asset
747
+
748
+ # If the asset is deleted or not.
749
+ # Corresponds to the JSON property `deleted`
750
+ # @return [Boolean]
751
+ attr_accessor :deleted
752
+ alias_method :deleted?, :deleted
753
+
754
+ # A time window of [start_time, end_time).
755
+ # Corresponds to the JSON property `window`
756
+ # @return [Google::Apis::CloudassetV1beta1::TimeWindow]
757
+ attr_accessor :window
758
+
759
+ def initialize(**args)
760
+ update!(**args)
761
+ end
762
+
763
+ # Update properties of this object
764
+ def update!(**args)
765
+ @asset = args[:asset] if args.key?(:asset)
766
+ @deleted = args[:deleted] if args.key?(:deleted)
767
+ @window = args[:window] if args.key?(:window)
768
+ end
769
+ end
770
+
771
+ # A time window of [start_time, end_time).
772
+ class TimeWindow
773
+ include Google::Apis::Core::Hashable
774
+
775
+ # End time of the time window (exclusive).
776
+ # Current timestamp if not specified.
777
+ # Corresponds to the JSON property `endTime`
778
+ # @return [String]
779
+ attr_accessor :end_time
780
+
781
+ # Start time of the time window (inclusive).
782
+ # Corresponds to the JSON property `startTime`
783
+ # @return [String]
784
+ attr_accessor :start_time
785
+
786
+ def initialize(**args)
787
+ update!(**args)
788
+ end
789
+
790
+ # Update properties of this object
791
+ def update!(**args)
792
+ @end_time = args[:end_time] if args.key?(:end_time)
793
+ @start_time = args[:start_time] if args.key?(:start_time)
794
+ end
795
+ end
796
+ end
797
+ end
798
+ end