google-api-client 0.14.4 → 0.14.5
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +41 -0
- data/generated/google/apis/analyticsreporting_v4.rb +1 -1
- data/generated/google/apis/androidmanagement_v1.rb +1 -1
- data/generated/google/apis/androidmanagement_v1/classes.rb +2 -2
- data/generated/google/apis/appengine_v1.rb +1 -1
- data/generated/google/apis/appengine_v1/classes.rb +111 -0
- data/generated/google/apis/appengine_v1/representations.rb +59 -0
- data/generated/google/apis/appengine_v1/service.rb +220 -0
- data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
- data/generated/google/apis/classroom_v1.rb +7 -1
- data/generated/google/apis/classroom_v1/classes.rb +361 -0
- data/generated/google/apis/classroom_v1/representations.rb +161 -0
- data/generated/google/apis/classroom_v1/service.rb +426 -0
- data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
- data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +3 -3
- data/generated/google/apis/cloudiot_v1.rb +38 -0
- data/generated/google/apis/cloudiot_v1/classes.rb +1197 -0
- data/generated/google/apis/cloudiot_v1/representations.rb +473 -0
- data/generated/google/apis/cloudiot_v1/service.rb +657 -0
- data/generated/google/apis/cloudiot_v1beta1.rb +38 -0
- data/generated/google/apis/cloudiot_v1beta1/classes.rb +1064 -0
- data/generated/google/apis/cloudiot_v1beta1/representations.rb +442 -0
- data/generated/google/apis/cloudiot_v1beta1/service.rb +725 -0
- data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
- data/generated/google/apis/cloudtasks_v2beta2/classes.rb +4 -4
- data/generated/google/apis/cloudtrace_v1.rb +1 -1
- data/generated/google/apis/cloudtrace_v2.rb +1 -1
- data/generated/google/apis/cloudtrace_v2/classes.rb +1 -1
- data/generated/google/apis/cloudtrace_v2/service.rb +1 -1
- data/generated/google/apis/container_v1.rb +1 -1
- data/generated/google/apis/container_v1/classes.rb +34 -4
- data/generated/google/apis/container_v1/representations.rb +15 -0
- data/generated/google/apis/container_v1beta1.rb +1 -1
- data/generated/google/apis/container_v1beta1/classes.rb +34 -4
- data/generated/google/apis/container_v1beta1/representations.rb +15 -0
- data/generated/google/apis/content_v2.rb +1 -1
- data/generated/google/apis/content_v2/classes.rb +91 -9
- data/generated/google/apis/content_v2/representations.rb +20 -0
- data/generated/google/apis/content_v2/service.rb +1 -2
- data/generated/google/apis/content_v2sandbox.rb +1 -1
- data/generated/google/apis/content_v2sandbox/classes.rb +90 -8
- data/generated/google/apis/content_v2sandbox/representations.rb +20 -0
- data/generated/google/apis/dataflow_v1b3.rb +1 -1
- data/generated/google/apis/dataflow_v1b3/classes.rb +53 -3
- data/generated/google/apis/dataflow_v1b3/representations.rb +16 -0
- data/generated/google/apis/dataproc_v1beta2.rb +1 -1
- data/generated/google/apis/dataproc_v1beta2/classes.rb +461 -0
- data/generated/google/apis/dataproc_v1beta2/representations.rb +194 -0
- data/generated/google/apis/dataproc_v1beta2/service.rb +452 -0
- data/generated/google/apis/deploymentmanager_alpha.rb +1 -1
- data/generated/google/apis/deploymentmanager_alpha/classes.rb +30 -1
- data/generated/google/apis/deploymentmanager_alpha/representations.rb +8 -0
- data/generated/google/apis/deploymentmanager_v2.rb +1 -1
- data/generated/google/apis/deploymentmanager_v2/classes.rb +2 -1
- data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
- data/generated/google/apis/deploymentmanager_v2beta/classes.rb +2 -1
- data/generated/google/apis/dlp_v2beta1.rb +1 -1
- data/generated/google/apis/dlp_v2beta1/classes.rb +2 -2
- data/generated/google/apis/firebaserules_v1.rb +1 -1
- data/generated/google/apis/firebaserules_v1/classes.rb +44 -0
- data/generated/google/apis/firebaserules_v1/representations.rb +17 -0
- data/generated/google/apis/firebaserules_v1/service.rb +35 -0
- data/generated/google/apis/fitness_v1.rb +1 -1
- data/generated/google/apis/fitness_v1/classes.rb +3 -3
- data/generated/google/apis/fitness_v1/service.rb +4 -4
- data/generated/google/apis/iam_v1.rb +1 -1
- data/generated/google/apis/iam_v1/classes.rb +14 -14
- data/generated/google/apis/iam_v1/service.rb +29 -29
- data/generated/google/apis/kgsearch_v1.rb +1 -1
- data/generated/google/apis/logging_v2.rb +1 -1
- data/generated/google/apis/logging_v2/classes.rb +11 -9
- data/generated/google/apis/logging_v2beta1.rb +1 -1
- data/generated/google/apis/logging_v2beta1/classes.rb +11 -9
- data/generated/google/apis/ml_v1.rb +1 -1
- data/generated/google/apis/ml_v1/classes.rb +5 -4
- data/generated/google/apis/oslogin_v1alpha.rb +1 -1
- data/generated/google/apis/oslogin_v1beta.rb +1 -1
- data/generated/google/apis/pubsub_v1.rb +1 -1
- data/generated/google/apis/pubsub_v1/classes.rb +2 -1
- data/generated/google/apis/script_v1.rb +2 -2
- data/generated/google/apis/script_v1/service.rb +1 -1
- data/generated/google/apis/servicecontrol_v1.rb +1 -1
- data/generated/google/apis/servicecontrol_v1/classes.rb +19 -23
- data/generated/google/apis/servicecontrol_v1/representations.rb +1 -1
- data/generated/google/apis/servicemanagement_v1.rb +1 -1
- data/generated/google/apis/servicemanagement_v1/classes.rb +106 -0
- data/generated/google/apis/servicemanagement_v1/representations.rb +32 -0
- data/generated/google/apis/serviceuser_v1.rb +1 -1
- data/generated/google/apis/serviceuser_v1/classes.rb +92 -92
- data/generated/google/apis/serviceuser_v1/representations.rb +27 -15
- data/generated/google/apis/streetviewpublish_v1.rb +1 -1
- data/generated/google/apis/streetviewpublish_v1/service.rb +7 -0
- data/generated/google/apis/toolresults_v1beta3.rb +1 -1
- data/generated/google/apis/toolresults_v1beta3/classes.rb +2 -2
- data/generated/google/apis/youtube_partner_v1.rb +1 -1
- data/generated/google/apis/youtube_partner_v1/classes.rb +53 -0
- data/generated/google/apis/youtube_partner_v1/representations.rb +29 -0
- data/generated/google/apis/youtube_partner_v1/service.rb +37 -0
- data/lib/google/apis/version.rb +1 -1
- metadata +10 -2
|
@@ -0,0 +1,38 @@
|
|
|
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/cloudiot_v1beta1/service.rb'
|
|
16
|
+
require 'google/apis/cloudiot_v1beta1/classes.rb'
|
|
17
|
+
require 'google/apis/cloudiot_v1beta1/representations.rb'
|
|
18
|
+
|
|
19
|
+
module Google
|
|
20
|
+
module Apis
|
|
21
|
+
# Google Cloud IoT API
|
|
22
|
+
#
|
|
23
|
+
# Registers and manages IoT (Internet of Things) devices that connect to the
|
|
24
|
+
# Google Cloud Platform.
|
|
25
|
+
#
|
|
26
|
+
# @see https://cloud.google.com/iot
|
|
27
|
+
module CloudiotV1beta1
|
|
28
|
+
VERSION = 'V1beta1'
|
|
29
|
+
REVISION = '20170922'
|
|
30
|
+
|
|
31
|
+
# View and manage your data across Google Cloud Platform services
|
|
32
|
+
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
|
|
33
|
+
|
|
34
|
+
# Register and manage devices in the Google Cloud IoT service
|
|
35
|
+
AUTH_CLOUDIOT = 'https://www.googleapis.com/auth/cloudiot'
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
@@ -0,0 +1,1064 @@
|
|
|
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 CloudiotV1beta1
|
|
24
|
+
|
|
25
|
+
# Specifies the audit configuration for a service.
|
|
26
|
+
# The configuration determines which permission types are logged, and what
|
|
27
|
+
# identities, if any, are exempted from logging.
|
|
28
|
+
# An AuditConfig must have one or more AuditLogConfigs.
|
|
29
|
+
# If there are AuditConfigs for both `allServices` and a specific service,
|
|
30
|
+
# the union of the two AuditConfigs is used for that service: the log_types
|
|
31
|
+
# specified in each AuditConfig are enabled, and the exempted_members in each
|
|
32
|
+
# AuditConfig are exempted.
|
|
33
|
+
# Example Policy with multiple AuditConfigs:
|
|
34
|
+
# `
|
|
35
|
+
# "audit_configs": [
|
|
36
|
+
# `
|
|
37
|
+
# "service": "allServices"
|
|
38
|
+
# "audit_log_configs": [
|
|
39
|
+
# `
|
|
40
|
+
# "log_type": "DATA_READ",
|
|
41
|
+
# "exempted_members": [
|
|
42
|
+
# "user:foo@gmail.com"
|
|
43
|
+
# ]
|
|
44
|
+
# `,
|
|
45
|
+
# `
|
|
46
|
+
# "log_type": "DATA_WRITE",
|
|
47
|
+
# `,
|
|
48
|
+
# `
|
|
49
|
+
# "log_type": "ADMIN_READ",
|
|
50
|
+
# `
|
|
51
|
+
# ]
|
|
52
|
+
# `,
|
|
53
|
+
# `
|
|
54
|
+
# "service": "fooservice.googleapis.com"
|
|
55
|
+
# "audit_log_configs": [
|
|
56
|
+
# `
|
|
57
|
+
# "log_type": "DATA_READ",
|
|
58
|
+
# `,
|
|
59
|
+
# `
|
|
60
|
+
# "log_type": "DATA_WRITE",
|
|
61
|
+
# "exempted_members": [
|
|
62
|
+
# "user:bar@gmail.com"
|
|
63
|
+
# ]
|
|
64
|
+
# `
|
|
65
|
+
# ]
|
|
66
|
+
# `
|
|
67
|
+
# ]
|
|
68
|
+
# `
|
|
69
|
+
# For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
|
|
70
|
+
# logging. It also exempts foo@gmail.com from DATA_READ logging, and
|
|
71
|
+
# bar@gmail.com from DATA_WRITE logging.
|
|
72
|
+
class AuditConfig
|
|
73
|
+
include Google::Apis::Core::Hashable
|
|
74
|
+
|
|
75
|
+
# The configuration for logging of each type of permission.
|
|
76
|
+
# Next ID: 4
|
|
77
|
+
# Corresponds to the JSON property `auditLogConfigs`
|
|
78
|
+
# @return [Array<Google::Apis::CloudiotV1beta1::AuditLogConfig>]
|
|
79
|
+
attr_accessor :audit_log_configs
|
|
80
|
+
|
|
81
|
+
#
|
|
82
|
+
# Corresponds to the JSON property `exemptedMembers`
|
|
83
|
+
# @return [Array<String>]
|
|
84
|
+
attr_accessor :exempted_members
|
|
85
|
+
|
|
86
|
+
# Specifies a service that will be enabled for audit logging.
|
|
87
|
+
# For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
|
|
88
|
+
# `allServices` is a special value that covers all services.
|
|
89
|
+
# Corresponds to the JSON property `service`
|
|
90
|
+
# @return [String]
|
|
91
|
+
attr_accessor :service
|
|
92
|
+
|
|
93
|
+
def initialize(**args)
|
|
94
|
+
update!(**args)
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# Update properties of this object
|
|
98
|
+
def update!(**args)
|
|
99
|
+
@audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
|
|
100
|
+
@exempted_members = args[:exempted_members] if args.key?(:exempted_members)
|
|
101
|
+
@service = args[:service] if args.key?(:service)
|
|
102
|
+
end
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
# Provides the configuration for logging a type of permissions.
|
|
106
|
+
# Example:
|
|
107
|
+
# `
|
|
108
|
+
# "audit_log_configs": [
|
|
109
|
+
# `
|
|
110
|
+
# "log_type": "DATA_READ",
|
|
111
|
+
# "exempted_members": [
|
|
112
|
+
# "user:foo@gmail.com"
|
|
113
|
+
# ]
|
|
114
|
+
# `,
|
|
115
|
+
# `
|
|
116
|
+
# "log_type": "DATA_WRITE",
|
|
117
|
+
# `
|
|
118
|
+
# ]
|
|
119
|
+
# `
|
|
120
|
+
# This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
|
|
121
|
+
# foo@gmail.com from DATA_READ logging.
|
|
122
|
+
class AuditLogConfig
|
|
123
|
+
include Google::Apis::Core::Hashable
|
|
124
|
+
|
|
125
|
+
# Specifies the identities that do not cause logging for this type of
|
|
126
|
+
# permission.
|
|
127
|
+
# Follows the same format of Binding.members.
|
|
128
|
+
# Corresponds to the JSON property `exemptedMembers`
|
|
129
|
+
# @return [Array<String>]
|
|
130
|
+
attr_accessor :exempted_members
|
|
131
|
+
|
|
132
|
+
# The log type that this config enables.
|
|
133
|
+
# Corresponds to the JSON property `logType`
|
|
134
|
+
# @return [String]
|
|
135
|
+
attr_accessor :log_type
|
|
136
|
+
|
|
137
|
+
def initialize(**args)
|
|
138
|
+
update!(**args)
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
# Update properties of this object
|
|
142
|
+
def update!(**args)
|
|
143
|
+
@exempted_members = args[:exempted_members] if args.key?(:exempted_members)
|
|
144
|
+
@log_type = args[:log_type] if args.key?(:log_type)
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
# Associates `members` with a `role`.
|
|
149
|
+
class Binding
|
|
150
|
+
include Google::Apis::Core::Hashable
|
|
151
|
+
|
|
152
|
+
# Represents an expression text. Example:
|
|
153
|
+
# title: "User account presence"
|
|
154
|
+
# description: "Determines whether the request has a user account"
|
|
155
|
+
# expression: "size(request.user) > 0"
|
|
156
|
+
# Corresponds to the JSON property `condition`
|
|
157
|
+
# @return [Google::Apis::CloudiotV1beta1::Expr]
|
|
158
|
+
attr_accessor :condition
|
|
159
|
+
|
|
160
|
+
# Specifies the identities requesting access for a Cloud Platform resource.
|
|
161
|
+
# `members` can have the following values:
|
|
162
|
+
# * `allUsers`: A special identifier that represents anyone who is
|
|
163
|
+
# on the internet; with or without a Google account.
|
|
164
|
+
# * `allAuthenticatedUsers`: A special identifier that represents anyone
|
|
165
|
+
# who is authenticated with a Google account or a service account.
|
|
166
|
+
# * `user:`emailid``: An email address that represents a specific Google
|
|
167
|
+
# account. For example, `alice@gmail.com` or `joe@example.com`.
|
|
168
|
+
# * `serviceAccount:`emailid``: An email address that represents a service
|
|
169
|
+
# account. For example, `my-other-app@appspot.gserviceaccount.com`.
|
|
170
|
+
# * `group:`emailid``: An email address that represents a Google group.
|
|
171
|
+
# For example, `admins@example.com`.
|
|
172
|
+
# * `domain:`domain``: A Google Apps domain name that represents all the
|
|
173
|
+
# users of that domain. For example, `google.com` or `example.com`.
|
|
174
|
+
# Corresponds to the JSON property `members`
|
|
175
|
+
# @return [Array<String>]
|
|
176
|
+
attr_accessor :members
|
|
177
|
+
|
|
178
|
+
# Role that is assigned to `members`.
|
|
179
|
+
# For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
|
|
180
|
+
# Required
|
|
181
|
+
# Corresponds to the JSON property `role`
|
|
182
|
+
# @return [String]
|
|
183
|
+
attr_accessor :role
|
|
184
|
+
|
|
185
|
+
def initialize(**args)
|
|
186
|
+
update!(**args)
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
# Update properties of this object
|
|
190
|
+
def update!(**args)
|
|
191
|
+
@condition = args[:condition] if args.key?(:condition)
|
|
192
|
+
@members = args[:members] if args.key?(:members)
|
|
193
|
+
@role = args[:role] if args.key?(:role)
|
|
194
|
+
end
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
# The device resource.
|
|
198
|
+
class Device
|
|
199
|
+
include Google::Apis::Core::Hashable
|
|
200
|
+
|
|
201
|
+
# The device configuration and its metadata. Eventually delivered to devices.
|
|
202
|
+
# Corresponds to the JSON property `config`
|
|
203
|
+
# @return [Google::Apis::CloudiotV1beta1::DeviceConfig]
|
|
204
|
+
attr_accessor :config
|
|
205
|
+
|
|
206
|
+
# The credentials used to authenticate this device. To allow credential
|
|
207
|
+
# rotation without interruption, multiple device credentials can be bound to
|
|
208
|
+
# this device. No more than 3 credentials can be bound to a single device at
|
|
209
|
+
# a time.
|
|
210
|
+
# Corresponds to the JSON property `credentials`
|
|
211
|
+
# @return [Array<Google::Apis::CloudiotV1beta1::DeviceCredential>]
|
|
212
|
+
attr_accessor :credentials
|
|
213
|
+
|
|
214
|
+
# If a device is disabled, communication from it will be blocked. Can be used
|
|
215
|
+
# to temporarily prevent the device from connecting if, for example, the
|
|
216
|
+
# sensor is generating bad data and needs maintenance.
|
|
217
|
+
# Corresponds to the JSON property `enabledState`
|
|
218
|
+
# @return [String]
|
|
219
|
+
attr_accessor :enabled_state
|
|
220
|
+
|
|
221
|
+
# The user-defined device identifier. The device ID must be unique
|
|
222
|
+
# within a device registry.
|
|
223
|
+
# Corresponds to the JSON property `id`
|
|
224
|
+
# @return [String]
|
|
225
|
+
attr_accessor :id
|
|
226
|
+
|
|
227
|
+
# [Output only] The last time a cloud-to-device config version acknowledgment
|
|
228
|
+
# was received from the device.
|
|
229
|
+
# Corresponds to the JSON property `lastConfigAckTime`
|
|
230
|
+
# @return [String]
|
|
231
|
+
attr_accessor :last_config_ack_time
|
|
232
|
+
|
|
233
|
+
# The `Status` type defines a logical error model that is suitable for different
|
|
234
|
+
# programming environments, including REST APIs and RPC APIs. It is used by
|
|
235
|
+
# [gRPC](https://github.com/grpc). The error model is designed to be:
|
|
236
|
+
# - Simple to use and understand for most users
|
|
237
|
+
# - Flexible enough to meet unexpected needs
|
|
238
|
+
# # Overview
|
|
239
|
+
# The `Status` message contains three pieces of data: error code, error message,
|
|
240
|
+
# and error details. The error code should be an enum value of
|
|
241
|
+
# google.rpc.Code, but it may accept additional error codes if needed. The
|
|
242
|
+
# error message should be a developer-facing English message that helps
|
|
243
|
+
# developers *understand* and *resolve* the error. If a localized user-facing
|
|
244
|
+
# error message is needed, put the localized message in the error details or
|
|
245
|
+
# localize it in the client. The optional error details may contain arbitrary
|
|
246
|
+
# information about the error. There is a predefined set of error detail types
|
|
247
|
+
# in the package `google.rpc` that can be used for common error conditions.
|
|
248
|
+
# # Language mapping
|
|
249
|
+
# The `Status` message is the logical representation of the error model, but it
|
|
250
|
+
# is not necessarily the actual wire format. When the `Status` message is
|
|
251
|
+
# exposed in different client libraries and different wire protocols, it can be
|
|
252
|
+
# mapped differently. For example, it will likely be mapped to some exceptions
|
|
253
|
+
# in Java, but more likely mapped to some error codes in C.
|
|
254
|
+
# # Other uses
|
|
255
|
+
# The error model and the `Status` message can be used in a variety of
|
|
256
|
+
# environments, either with or without APIs, to provide a
|
|
257
|
+
# consistent developer experience across different environments.
|
|
258
|
+
# Example uses of this error model include:
|
|
259
|
+
# - Partial errors. If a service needs to return partial errors to the client,
|
|
260
|
+
# it may embed the `Status` in the normal response to indicate the partial
|
|
261
|
+
# errors.
|
|
262
|
+
# - Workflow errors. A typical workflow has multiple steps. Each step may
|
|
263
|
+
# have a `Status` message for error reporting.
|
|
264
|
+
# - Batch operations. If a client uses batch request and batch response, the
|
|
265
|
+
# `Status` message should be used directly inside batch response, one for
|
|
266
|
+
# each error sub-response.
|
|
267
|
+
# - Asynchronous operations. If an API call embeds asynchronous operation
|
|
268
|
+
# results in its response, the status of those operations should be
|
|
269
|
+
# represented directly using the `Status` message.
|
|
270
|
+
# - Logging. If some API errors are stored in logs, the message `Status` could
|
|
271
|
+
# be used directly after any stripping needed for security/privacy reasons.
|
|
272
|
+
# Corresponds to the JSON property `lastErrorStatus`
|
|
273
|
+
# @return [Google::Apis::CloudiotV1beta1::Status]
|
|
274
|
+
attr_accessor :last_error_status
|
|
275
|
+
|
|
276
|
+
# [Output only] The last time an error happened, e.g., failed to publish to
|
|
277
|
+
# Cloud Pub/Sub. This field is the timestamp of 'last_error_status'.
|
|
278
|
+
# Corresponds to the JSON property `lastErrorTime`
|
|
279
|
+
# @return [String]
|
|
280
|
+
attr_accessor :last_error_time
|
|
281
|
+
|
|
282
|
+
# [Output only] The last time an event was received. Timestamps are
|
|
283
|
+
# periodically collected and written to storage; they may be stale by a few
|
|
284
|
+
# minutes.
|
|
285
|
+
# Corresponds to the JSON property `lastEventTime`
|
|
286
|
+
# @return [String]
|
|
287
|
+
attr_accessor :last_event_time
|
|
288
|
+
|
|
289
|
+
# [Output only] The last time a heartbeat was received. Timestamps are
|
|
290
|
+
# periodically collected and written to storage; they may be stale by a few
|
|
291
|
+
# minutes.
|
|
292
|
+
# Corresponds to the JSON property `lastHeartbeatTime`
|
|
293
|
+
# @return [String]
|
|
294
|
+
attr_accessor :last_heartbeat_time
|
|
295
|
+
|
|
296
|
+
# The resource path name. For example,
|
|
297
|
+
# `projects/p1/locations/us-central1/registries/registry0/devices/dev0` or
|
|
298
|
+
# `projects/p1/locations/us-central1/registries/registry0/devices/`num_id``.
|
|
299
|
+
# When `name` is populated as a response from the service, it always ends
|
|
300
|
+
# in the device numeric ID.
|
|
301
|
+
# Corresponds to the JSON property `name`
|
|
302
|
+
# @return [String]
|
|
303
|
+
attr_accessor :name
|
|
304
|
+
|
|
305
|
+
# [Output only] A server-defined unique numeric ID for the device. This is a
|
|
306
|
+
# more compact way to identify devices, and it is globally unique.
|
|
307
|
+
# Corresponds to the JSON property `numId`
|
|
308
|
+
# @return [Fixnum]
|
|
309
|
+
attr_accessor :num_id
|
|
310
|
+
|
|
311
|
+
def initialize(**args)
|
|
312
|
+
update!(**args)
|
|
313
|
+
end
|
|
314
|
+
|
|
315
|
+
# Update properties of this object
|
|
316
|
+
def update!(**args)
|
|
317
|
+
@config = args[:config] if args.key?(:config)
|
|
318
|
+
@credentials = args[:credentials] if args.key?(:credentials)
|
|
319
|
+
@enabled_state = args[:enabled_state] if args.key?(:enabled_state)
|
|
320
|
+
@id = args[:id] if args.key?(:id)
|
|
321
|
+
@last_config_ack_time = args[:last_config_ack_time] if args.key?(:last_config_ack_time)
|
|
322
|
+
@last_error_status = args[:last_error_status] if args.key?(:last_error_status)
|
|
323
|
+
@last_error_time = args[:last_error_time] if args.key?(:last_error_time)
|
|
324
|
+
@last_event_time = args[:last_event_time] if args.key?(:last_event_time)
|
|
325
|
+
@last_heartbeat_time = args[:last_heartbeat_time] if args.key?(:last_heartbeat_time)
|
|
326
|
+
@name = args[:name] if args.key?(:name)
|
|
327
|
+
@num_id = args[:num_id] if args.key?(:num_id)
|
|
328
|
+
end
|
|
329
|
+
end
|
|
330
|
+
|
|
331
|
+
# The device configuration and its metadata. Eventually delivered to devices.
|
|
332
|
+
class DeviceConfig
|
|
333
|
+
include Google::Apis::Core::Hashable
|
|
334
|
+
|
|
335
|
+
# [Output only] The time when this version state was updated in the Cloud IoT
|
|
336
|
+
# Core service. This timestamp is set by the server.
|
|
337
|
+
# Corresponds to the JSON property `cloudUpdateTime`
|
|
338
|
+
# @return [String]
|
|
339
|
+
attr_accessor :cloud_update_time
|
|
340
|
+
|
|
341
|
+
# The data for a device configuration. Only binary data is currently supported.
|
|
342
|
+
# Corresponds to the JSON property `data`
|
|
343
|
+
# @return [Google::Apis::CloudiotV1beta1::DeviceConfigData]
|
|
344
|
+
attr_accessor :data
|
|
345
|
+
|
|
346
|
+
# [Output only] The time when the Cloud IoT Core server received the
|
|
347
|
+
# acknowledgment from the device, indicating that the device has received
|
|
348
|
+
# this configuration version. If this field is not present, the device has
|
|
349
|
+
# not yet acknowledged that it received this version. Note that when sending
|
|
350
|
+
# the config to the device, there may have been many config versions on the
|
|
351
|
+
# Cloud IoT Core service while the device was disconnected; and on
|
|
352
|
+
# connection, only the latest version is sent to the device. Some of the
|
|
353
|
+
# versions may never be sent to the device, and therefore are never
|
|
354
|
+
# acknowledged. This timestamp is set by the Cloud IoT Core service.
|
|
355
|
+
# Corresponds to the JSON property `deviceAckTime`
|
|
356
|
+
# @return [String]
|
|
357
|
+
attr_accessor :device_ack_time
|
|
358
|
+
|
|
359
|
+
# [Output only] The version of this update. The version number is assigned by
|
|
360
|
+
# the server, and is always greater than zero after device creation. The
|
|
361
|
+
# version must be zero on the `CreateDevice` request if a `config` is
|
|
362
|
+
# specified; the response of `CreateDevice` will always have a value of one.
|
|
363
|
+
# Corresponds to the JSON property `version`
|
|
364
|
+
# @return [Fixnum]
|
|
365
|
+
attr_accessor :version
|
|
366
|
+
|
|
367
|
+
def initialize(**args)
|
|
368
|
+
update!(**args)
|
|
369
|
+
end
|
|
370
|
+
|
|
371
|
+
# Update properties of this object
|
|
372
|
+
def update!(**args)
|
|
373
|
+
@cloud_update_time = args[:cloud_update_time] if args.key?(:cloud_update_time)
|
|
374
|
+
@data = args[:data] if args.key?(:data)
|
|
375
|
+
@device_ack_time = args[:device_ack_time] if args.key?(:device_ack_time)
|
|
376
|
+
@version = args[:version] if args.key?(:version)
|
|
377
|
+
end
|
|
378
|
+
end
|
|
379
|
+
|
|
380
|
+
# The data for a device configuration. Only binary data is currently supported.
|
|
381
|
+
class DeviceConfigData
|
|
382
|
+
include Google::Apis::Core::Hashable
|
|
383
|
+
|
|
384
|
+
# The configuration sent to the device, as bytes.
|
|
385
|
+
# Corresponds to the JSON property `binaryData`
|
|
386
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
|
387
|
+
# @return [String]
|
|
388
|
+
attr_accessor :binary_data
|
|
389
|
+
|
|
390
|
+
def initialize(**args)
|
|
391
|
+
update!(**args)
|
|
392
|
+
end
|
|
393
|
+
|
|
394
|
+
# Update properties of this object
|
|
395
|
+
def update!(**args)
|
|
396
|
+
@binary_data = args[:binary_data] if args.key?(:binary_data)
|
|
397
|
+
end
|
|
398
|
+
end
|
|
399
|
+
|
|
400
|
+
# A server-stored device credential used for authentication.
|
|
401
|
+
class DeviceCredential
|
|
402
|
+
include Google::Apis::Core::Hashable
|
|
403
|
+
|
|
404
|
+
# [Optional] The time at which this credential becomes invalid. This
|
|
405
|
+
# credential will be ignored for new client authentication requests after
|
|
406
|
+
# this timestamp; however, it will not be automatically deleted.
|
|
407
|
+
# Corresponds to the JSON property `expirationTime`
|
|
408
|
+
# @return [String]
|
|
409
|
+
attr_accessor :expiration_time
|
|
410
|
+
|
|
411
|
+
# A public key format and data.
|
|
412
|
+
# Corresponds to the JSON property `publicKey`
|
|
413
|
+
# @return [Google::Apis::CloudiotV1beta1::PublicKeyCredential]
|
|
414
|
+
attr_accessor :public_key
|
|
415
|
+
|
|
416
|
+
def initialize(**args)
|
|
417
|
+
update!(**args)
|
|
418
|
+
end
|
|
419
|
+
|
|
420
|
+
# Update properties of this object
|
|
421
|
+
def update!(**args)
|
|
422
|
+
@expiration_time = args[:expiration_time] if args.key?(:expiration_time)
|
|
423
|
+
@public_key = args[:public_key] if args.key?(:public_key)
|
|
424
|
+
end
|
|
425
|
+
end
|
|
426
|
+
|
|
427
|
+
# A container for a group of devices.
|
|
428
|
+
class DeviceRegistry
|
|
429
|
+
include Google::Apis::Core::Hashable
|
|
430
|
+
|
|
431
|
+
# Configuration to forward messages such as telemetry events.
|
|
432
|
+
# Corresponds to the JSON property `eventNotificationConfig`
|
|
433
|
+
# @return [Google::Apis::CloudiotV1beta1::NotificationConfig]
|
|
434
|
+
attr_accessor :event_notification_config
|
|
435
|
+
|
|
436
|
+
# The identifier of this device registry. For example, `myRegistry`.
|
|
437
|
+
# Corresponds to the JSON property `id`
|
|
438
|
+
# @return [String]
|
|
439
|
+
attr_accessor :id
|
|
440
|
+
|
|
441
|
+
# The configuration of MQTT for a device registry.
|
|
442
|
+
# Corresponds to the JSON property `mqttConfig`
|
|
443
|
+
# @return [Google::Apis::CloudiotV1beta1::MqttConfig]
|
|
444
|
+
attr_accessor :mqtt_config
|
|
445
|
+
|
|
446
|
+
# The resource path name. For example,
|
|
447
|
+
# `projects/example-project/locations/us-central1/registries/my-registry`.
|
|
448
|
+
# Corresponds to the JSON property `name`
|
|
449
|
+
# @return [String]
|
|
450
|
+
attr_accessor :name
|
|
451
|
+
|
|
452
|
+
def initialize(**args)
|
|
453
|
+
update!(**args)
|
|
454
|
+
end
|
|
455
|
+
|
|
456
|
+
# Update properties of this object
|
|
457
|
+
def update!(**args)
|
|
458
|
+
@event_notification_config = args[:event_notification_config] if args.key?(:event_notification_config)
|
|
459
|
+
@id = args[:id] if args.key?(:id)
|
|
460
|
+
@mqtt_config = args[:mqtt_config] if args.key?(:mqtt_config)
|
|
461
|
+
@name = args[:name] if args.key?(:name)
|
|
462
|
+
end
|
|
463
|
+
end
|
|
464
|
+
|
|
465
|
+
# A generic empty message that you can re-use to avoid defining duplicated
|
|
466
|
+
# empty messages in your APIs. A typical example is to use it as the request
|
|
467
|
+
# or the response type of an API method. For instance:
|
|
468
|
+
# service Foo `
|
|
469
|
+
# rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
|
|
470
|
+
# `
|
|
471
|
+
# The JSON representation for `Empty` is empty JSON object ````.
|
|
472
|
+
class Empty
|
|
473
|
+
include Google::Apis::Core::Hashable
|
|
474
|
+
|
|
475
|
+
def initialize(**args)
|
|
476
|
+
update!(**args)
|
|
477
|
+
end
|
|
478
|
+
|
|
479
|
+
# Update properties of this object
|
|
480
|
+
def update!(**args)
|
|
481
|
+
end
|
|
482
|
+
end
|
|
483
|
+
|
|
484
|
+
# Represents an expression text. Example:
|
|
485
|
+
# title: "User account presence"
|
|
486
|
+
# description: "Determines whether the request has a user account"
|
|
487
|
+
# expression: "size(request.user) > 0"
|
|
488
|
+
class Expr
|
|
489
|
+
include Google::Apis::Core::Hashable
|
|
490
|
+
|
|
491
|
+
# An optional description of the expression. This is a longer text which
|
|
492
|
+
# describes the expression, e.g. when hovered over it in a UI.
|
|
493
|
+
# Corresponds to the JSON property `description`
|
|
494
|
+
# @return [String]
|
|
495
|
+
attr_accessor :description
|
|
496
|
+
|
|
497
|
+
# Textual representation of an expression in
|
|
498
|
+
# Common Expression Language syntax.
|
|
499
|
+
# The application context of the containing message determines which
|
|
500
|
+
# well-known feature set of CEL is supported.
|
|
501
|
+
# Corresponds to the JSON property `expression`
|
|
502
|
+
# @return [String]
|
|
503
|
+
attr_accessor :expression
|
|
504
|
+
|
|
505
|
+
# An optional string indicating the location of the expression for error
|
|
506
|
+
# reporting, e.g. a file name and a position in the file.
|
|
507
|
+
# Corresponds to the JSON property `location`
|
|
508
|
+
# @return [String]
|
|
509
|
+
attr_accessor :location
|
|
510
|
+
|
|
511
|
+
# An optional title for the expression, i.e. a short string describing
|
|
512
|
+
# its purpose. This can be used e.g. in UIs which allow to enter the
|
|
513
|
+
# expression.
|
|
514
|
+
# Corresponds to the JSON property `title`
|
|
515
|
+
# @return [String]
|
|
516
|
+
attr_accessor :title
|
|
517
|
+
|
|
518
|
+
def initialize(**args)
|
|
519
|
+
update!(**args)
|
|
520
|
+
end
|
|
521
|
+
|
|
522
|
+
# Update properties of this object
|
|
523
|
+
def update!(**args)
|
|
524
|
+
@description = args[:description] if args.key?(:description)
|
|
525
|
+
@expression = args[:expression] if args.key?(:expression)
|
|
526
|
+
@location = args[:location] if args.key?(:location)
|
|
527
|
+
@title = args[:title] if args.key?(:title)
|
|
528
|
+
end
|
|
529
|
+
end
|
|
530
|
+
|
|
531
|
+
# Request message for `GetIamPolicy` method.
|
|
532
|
+
class GetIamPolicyRequest
|
|
533
|
+
include Google::Apis::Core::Hashable
|
|
534
|
+
|
|
535
|
+
def initialize(**args)
|
|
536
|
+
update!(**args)
|
|
537
|
+
end
|
|
538
|
+
|
|
539
|
+
# Update properties of this object
|
|
540
|
+
def update!(**args)
|
|
541
|
+
end
|
|
542
|
+
end
|
|
543
|
+
|
|
544
|
+
# The device configuration obtained from Cloud IoT Core.
|
|
545
|
+
class HttpDeviceConfig
|
|
546
|
+
include Google::Apis::Core::Hashable
|
|
547
|
+
|
|
548
|
+
# Data in binary format.
|
|
549
|
+
# Corresponds to the JSON property `binaryData`
|
|
550
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
|
551
|
+
# @return [String]
|
|
552
|
+
attr_accessor :binary_data
|
|
553
|
+
|
|
554
|
+
# The version of the configuration in Cloud IoT Core.
|
|
555
|
+
# Corresponds to the JSON property `version`
|
|
556
|
+
# @return [Fixnum]
|
|
557
|
+
attr_accessor :version
|
|
558
|
+
|
|
559
|
+
def initialize(**args)
|
|
560
|
+
update!(**args)
|
|
561
|
+
end
|
|
562
|
+
|
|
563
|
+
# Update properties of this object
|
|
564
|
+
def update!(**args)
|
|
565
|
+
@binary_data = args[:binary_data] if args.key?(:binary_data)
|
|
566
|
+
@version = args[:version] if args.key?(:version)
|
|
567
|
+
end
|
|
568
|
+
end
|
|
569
|
+
|
|
570
|
+
# The device state reported to Cloud IoT Core.
|
|
571
|
+
class HttpDeviceState
|
|
572
|
+
include Google::Apis::Core::Hashable
|
|
573
|
+
|
|
574
|
+
# Data in binary format.
|
|
575
|
+
# Corresponds to the JSON property `binaryData`
|
|
576
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
|
577
|
+
# @return [String]
|
|
578
|
+
attr_accessor :binary_data
|
|
579
|
+
|
|
580
|
+
def initialize(**args)
|
|
581
|
+
update!(**args)
|
|
582
|
+
end
|
|
583
|
+
|
|
584
|
+
# Update properties of this object
|
|
585
|
+
def update!(**args)
|
|
586
|
+
@binary_data = args[:binary_data] if args.key?(:binary_data)
|
|
587
|
+
end
|
|
588
|
+
end
|
|
589
|
+
|
|
590
|
+
# Request for `PublishEvent`.
|
|
591
|
+
class HttpPublishEventRequest
|
|
592
|
+
include Google::Apis::Core::Hashable
|
|
593
|
+
|
|
594
|
+
# Payload data in binary format.
|
|
595
|
+
# Corresponds to the JSON property `binaryData`
|
|
596
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
|
597
|
+
# @return [String]
|
|
598
|
+
attr_accessor :binary_data
|
|
599
|
+
|
|
600
|
+
# Optional subfolder for the telemetry event. This can be used to classify
|
|
601
|
+
# types of events, and is included in the Pub/Sub message attributes.
|
|
602
|
+
# Corresponds to the JSON property `subFolder`
|
|
603
|
+
# @return [String]
|
|
604
|
+
attr_accessor :sub_folder
|
|
605
|
+
|
|
606
|
+
def initialize(**args)
|
|
607
|
+
update!(**args)
|
|
608
|
+
end
|
|
609
|
+
|
|
610
|
+
# Update properties of this object
|
|
611
|
+
def update!(**args)
|
|
612
|
+
@binary_data = args[:binary_data] if args.key?(:binary_data)
|
|
613
|
+
@sub_folder = args[:sub_folder] if args.key?(:sub_folder)
|
|
614
|
+
end
|
|
615
|
+
end
|
|
616
|
+
|
|
617
|
+
# Response for `PublishEvent`.
|
|
618
|
+
class HttpPublishEventResponse
|
|
619
|
+
include Google::Apis::Core::Hashable
|
|
620
|
+
|
|
621
|
+
def initialize(**args)
|
|
622
|
+
update!(**args)
|
|
623
|
+
end
|
|
624
|
+
|
|
625
|
+
# Update properties of this object
|
|
626
|
+
def update!(**args)
|
|
627
|
+
end
|
|
628
|
+
end
|
|
629
|
+
|
|
630
|
+
# Request for `SetDeviceState`.
|
|
631
|
+
class HttpSetDeviceStateRequest
|
|
632
|
+
include Google::Apis::Core::Hashable
|
|
633
|
+
|
|
634
|
+
# The device state reported to Cloud IoT Core.
|
|
635
|
+
# Corresponds to the JSON property `state`
|
|
636
|
+
# @return [Google::Apis::CloudiotV1beta1::HttpDeviceState]
|
|
637
|
+
attr_accessor :state
|
|
638
|
+
|
|
639
|
+
def initialize(**args)
|
|
640
|
+
update!(**args)
|
|
641
|
+
end
|
|
642
|
+
|
|
643
|
+
# Update properties of this object
|
|
644
|
+
def update!(**args)
|
|
645
|
+
@state = args[:state] if args.key?(:state)
|
|
646
|
+
end
|
|
647
|
+
end
|
|
648
|
+
|
|
649
|
+
# Response for `ListDeviceConfigVersions`.
|
|
650
|
+
class ListDeviceConfigVersionsResponse
|
|
651
|
+
include Google::Apis::Core::Hashable
|
|
652
|
+
|
|
653
|
+
# The device configuration for the last few versions. Versions are listed
|
|
654
|
+
# in decreasing order, starting from the most recent one.
|
|
655
|
+
# Corresponds to the JSON property `deviceConfigs`
|
|
656
|
+
# @return [Array<Google::Apis::CloudiotV1beta1::DeviceConfig>]
|
|
657
|
+
attr_accessor :device_configs
|
|
658
|
+
|
|
659
|
+
def initialize(**args)
|
|
660
|
+
update!(**args)
|
|
661
|
+
end
|
|
662
|
+
|
|
663
|
+
# Update properties of this object
|
|
664
|
+
def update!(**args)
|
|
665
|
+
@device_configs = args[:device_configs] if args.key?(:device_configs)
|
|
666
|
+
end
|
|
667
|
+
end
|
|
668
|
+
|
|
669
|
+
# Response for `ListDeviceRegistries`.
|
|
670
|
+
class ListDeviceRegistriesResponse
|
|
671
|
+
include Google::Apis::Core::Hashable
|
|
672
|
+
|
|
673
|
+
# The registries that matched the query.
|
|
674
|
+
# Corresponds to the JSON property `deviceRegistries`
|
|
675
|
+
# @return [Array<Google::Apis::CloudiotV1beta1::DeviceRegistry>]
|
|
676
|
+
attr_accessor :device_registries
|
|
677
|
+
|
|
678
|
+
# If not empty, indicates that there may be more registries that match the
|
|
679
|
+
# request; this value should be passed in a new
|
|
680
|
+
# `ListDeviceRegistriesRequest`.
|
|
681
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
682
|
+
# @return [String]
|
|
683
|
+
attr_accessor :next_page_token
|
|
684
|
+
|
|
685
|
+
def initialize(**args)
|
|
686
|
+
update!(**args)
|
|
687
|
+
end
|
|
688
|
+
|
|
689
|
+
# Update properties of this object
|
|
690
|
+
def update!(**args)
|
|
691
|
+
@device_registries = args[:device_registries] if args.key?(:device_registries)
|
|
692
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
693
|
+
end
|
|
694
|
+
end
|
|
695
|
+
|
|
696
|
+
# Response for `ListDevices`.
|
|
697
|
+
class ListDevicesResponse
|
|
698
|
+
include Google::Apis::Core::Hashable
|
|
699
|
+
|
|
700
|
+
# The devices that match the request.
|
|
701
|
+
# Corresponds to the JSON property `devices`
|
|
702
|
+
# @return [Array<Google::Apis::CloudiotV1beta1::Device>]
|
|
703
|
+
attr_accessor :devices
|
|
704
|
+
|
|
705
|
+
# If not empty, indicates that there may be more devices that match the
|
|
706
|
+
# request; this value should be passed in a new `ListDevicesRequest`.
|
|
707
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
708
|
+
# @return [String]
|
|
709
|
+
attr_accessor :next_page_token
|
|
710
|
+
|
|
711
|
+
def initialize(**args)
|
|
712
|
+
update!(**args)
|
|
713
|
+
end
|
|
714
|
+
|
|
715
|
+
# Update properties of this object
|
|
716
|
+
def update!(**args)
|
|
717
|
+
@devices = args[:devices] if args.key?(:devices)
|
|
718
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
719
|
+
end
|
|
720
|
+
end
|
|
721
|
+
|
|
722
|
+
# Request for `ModifyCloudToDeviceConfig`.
|
|
723
|
+
class ModifyCloudToDeviceConfigRequest
|
|
724
|
+
include Google::Apis::Core::Hashable
|
|
725
|
+
|
|
726
|
+
# The data for a device configuration. Only binary data is currently supported.
|
|
727
|
+
# Corresponds to the JSON property `data`
|
|
728
|
+
# @return [Google::Apis::CloudiotV1beta1::DeviceConfigData]
|
|
729
|
+
attr_accessor :data
|
|
730
|
+
|
|
731
|
+
# The version number to update. If this value is zero, it will not check the
|
|
732
|
+
# version number of the server and will always update the current version;
|
|
733
|
+
# otherwise, this update will fail if the version number found on the server
|
|
734
|
+
# does not match this version number. This is used to support multiple
|
|
735
|
+
# simultaneous updates without losing data.
|
|
736
|
+
# Corresponds to the JSON property `versionToUpdate`
|
|
737
|
+
# @return [Fixnum]
|
|
738
|
+
attr_accessor :version_to_update
|
|
739
|
+
|
|
740
|
+
def initialize(**args)
|
|
741
|
+
update!(**args)
|
|
742
|
+
end
|
|
743
|
+
|
|
744
|
+
# Update properties of this object
|
|
745
|
+
def update!(**args)
|
|
746
|
+
@data = args[:data] if args.key?(:data)
|
|
747
|
+
@version_to_update = args[:version_to_update] if args.key?(:version_to_update)
|
|
748
|
+
end
|
|
749
|
+
end
|
|
750
|
+
|
|
751
|
+
# The configuration of MQTT for a device registry.
|
|
752
|
+
class MqttConfig
|
|
753
|
+
include Google::Apis::Core::Hashable
|
|
754
|
+
|
|
755
|
+
# If enabled, allows connections using the MQTT protocol. Otherwise any MQTT
|
|
756
|
+
# connection to this registry will fail.
|
|
757
|
+
# Corresponds to the JSON property `mqttConfigState`
|
|
758
|
+
# @return [String]
|
|
759
|
+
attr_accessor :mqtt_config_state
|
|
760
|
+
|
|
761
|
+
def initialize(**args)
|
|
762
|
+
update!(**args)
|
|
763
|
+
end
|
|
764
|
+
|
|
765
|
+
# Update properties of this object
|
|
766
|
+
def update!(**args)
|
|
767
|
+
@mqtt_config_state = args[:mqtt_config_state] if args.key?(:mqtt_config_state)
|
|
768
|
+
end
|
|
769
|
+
end
|
|
770
|
+
|
|
771
|
+
# Configuration to forward messages such as telemetry events.
|
|
772
|
+
class NotificationConfig
|
|
773
|
+
include Google::Apis::Core::Hashable
|
|
774
|
+
|
|
775
|
+
# A Cloud Pub/Sub topic name. For example,
|
|
776
|
+
# `projects/myProject/topics/deviceEvents`.
|
|
777
|
+
# Corresponds to the JSON property `pubsubTopicName`
|
|
778
|
+
# @return [String]
|
|
779
|
+
attr_accessor :pubsub_topic_name
|
|
780
|
+
|
|
781
|
+
def initialize(**args)
|
|
782
|
+
update!(**args)
|
|
783
|
+
end
|
|
784
|
+
|
|
785
|
+
# Update properties of this object
|
|
786
|
+
def update!(**args)
|
|
787
|
+
@pubsub_topic_name = args[:pubsub_topic_name] if args.key?(:pubsub_topic_name)
|
|
788
|
+
end
|
|
789
|
+
end
|
|
790
|
+
|
|
791
|
+
# Defines an Identity and Access Management (IAM) policy. It is used to
|
|
792
|
+
# specify access control policies for Cloud Platform resources.
|
|
793
|
+
# A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
|
|
794
|
+
# `members` to a `role`, where the members can be user accounts, Google groups,
|
|
795
|
+
# Google domains, and service accounts. A `role` is a named list of permissions
|
|
796
|
+
# defined by IAM.
|
|
797
|
+
# **Example**
|
|
798
|
+
# `
|
|
799
|
+
# "bindings": [
|
|
800
|
+
# `
|
|
801
|
+
# "role": "roles/owner",
|
|
802
|
+
# "members": [
|
|
803
|
+
# "user:mike@example.com",
|
|
804
|
+
# "group:admins@example.com",
|
|
805
|
+
# "domain:google.com",
|
|
806
|
+
# "serviceAccount:my-other-app@appspot.gserviceaccount.com",
|
|
807
|
+
# ]
|
|
808
|
+
# `,
|
|
809
|
+
# `
|
|
810
|
+
# "role": "roles/viewer",
|
|
811
|
+
# "members": ["user:sean@example.com"]
|
|
812
|
+
# `
|
|
813
|
+
# ]
|
|
814
|
+
# `
|
|
815
|
+
# For a description of IAM and its features, see the
|
|
816
|
+
# [IAM developer's guide](https://cloud.google.com/iam).
|
|
817
|
+
class Policy
|
|
818
|
+
include Google::Apis::Core::Hashable
|
|
819
|
+
|
|
820
|
+
# Specifies cloud audit logging configuration for this policy.
|
|
821
|
+
# Corresponds to the JSON property `auditConfigs`
|
|
822
|
+
# @return [Array<Google::Apis::CloudiotV1beta1::AuditConfig>]
|
|
823
|
+
attr_accessor :audit_configs
|
|
824
|
+
|
|
825
|
+
# Associates a list of `members` to a `role`.
|
|
826
|
+
# `bindings` with no members will result in an error.
|
|
827
|
+
# Corresponds to the JSON property `bindings`
|
|
828
|
+
# @return [Array<Google::Apis::CloudiotV1beta1::Binding>]
|
|
829
|
+
attr_accessor :bindings
|
|
830
|
+
|
|
831
|
+
# `etag` is used for optimistic concurrency control as a way to help
|
|
832
|
+
# prevent simultaneous updates of a policy from overwriting each other.
|
|
833
|
+
# It is strongly suggested that systems make use of the `etag` in the
|
|
834
|
+
# read-modify-write cycle to perform policy updates in order to avoid race
|
|
835
|
+
# conditions: An `etag` is returned in the response to `getIamPolicy`, and
|
|
836
|
+
# systems are expected to put that etag in the request to `setIamPolicy` to
|
|
837
|
+
# ensure that their change will be applied to the same version of the policy.
|
|
838
|
+
# If no `etag` is provided in the call to `setIamPolicy`, then the existing
|
|
839
|
+
# policy is overwritten blindly.
|
|
840
|
+
# Corresponds to the JSON property `etag`
|
|
841
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
|
842
|
+
# @return [String]
|
|
843
|
+
attr_accessor :etag
|
|
844
|
+
|
|
845
|
+
#
|
|
846
|
+
# Corresponds to the JSON property `iamOwned`
|
|
847
|
+
# @return [Boolean]
|
|
848
|
+
attr_accessor :iam_owned
|
|
849
|
+
alias_method :iam_owned?, :iam_owned
|
|
850
|
+
|
|
851
|
+
# Version of the `Policy`. The default version is 0.
|
|
852
|
+
# Corresponds to the JSON property `version`
|
|
853
|
+
# @return [Fixnum]
|
|
854
|
+
attr_accessor :version
|
|
855
|
+
|
|
856
|
+
def initialize(**args)
|
|
857
|
+
update!(**args)
|
|
858
|
+
end
|
|
859
|
+
|
|
860
|
+
# Update properties of this object
|
|
861
|
+
def update!(**args)
|
|
862
|
+
@audit_configs = args[:audit_configs] if args.key?(:audit_configs)
|
|
863
|
+
@bindings = args[:bindings] if args.key?(:bindings)
|
|
864
|
+
@etag = args[:etag] if args.key?(:etag)
|
|
865
|
+
@iam_owned = args[:iam_owned] if args.key?(:iam_owned)
|
|
866
|
+
@version = args[:version] if args.key?(:version)
|
|
867
|
+
end
|
|
868
|
+
end
|
|
869
|
+
|
|
870
|
+
# A public key format and data.
|
|
871
|
+
class PublicKeyCredential
|
|
872
|
+
include Google::Apis::Core::Hashable
|
|
873
|
+
|
|
874
|
+
# The format of the key.
|
|
875
|
+
# Corresponds to the JSON property `format`
|
|
876
|
+
# @return [String]
|
|
877
|
+
attr_accessor :format
|
|
878
|
+
|
|
879
|
+
# The key data.
|
|
880
|
+
# Corresponds to the JSON property `key`
|
|
881
|
+
# @return [String]
|
|
882
|
+
attr_accessor :key
|
|
883
|
+
|
|
884
|
+
def initialize(**args)
|
|
885
|
+
update!(**args)
|
|
886
|
+
end
|
|
887
|
+
|
|
888
|
+
# Update properties of this object
|
|
889
|
+
def update!(**args)
|
|
890
|
+
@format = args[:format] if args.key?(:format)
|
|
891
|
+
@key = args[:key] if args.key?(:key)
|
|
892
|
+
end
|
|
893
|
+
end
|
|
894
|
+
|
|
895
|
+
# Request message for `SetIamPolicy` method.
|
|
896
|
+
class SetIamPolicyRequest
|
|
897
|
+
include Google::Apis::Core::Hashable
|
|
898
|
+
|
|
899
|
+
# Defines an Identity and Access Management (IAM) policy. It is used to
|
|
900
|
+
# specify access control policies for Cloud Platform resources.
|
|
901
|
+
# A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
|
|
902
|
+
# `members` to a `role`, where the members can be user accounts, Google groups,
|
|
903
|
+
# Google domains, and service accounts. A `role` is a named list of permissions
|
|
904
|
+
# defined by IAM.
|
|
905
|
+
# **Example**
|
|
906
|
+
# `
|
|
907
|
+
# "bindings": [
|
|
908
|
+
# `
|
|
909
|
+
# "role": "roles/owner",
|
|
910
|
+
# "members": [
|
|
911
|
+
# "user:mike@example.com",
|
|
912
|
+
# "group:admins@example.com",
|
|
913
|
+
# "domain:google.com",
|
|
914
|
+
# "serviceAccount:my-other-app@appspot.gserviceaccount.com",
|
|
915
|
+
# ]
|
|
916
|
+
# `,
|
|
917
|
+
# `
|
|
918
|
+
# "role": "roles/viewer",
|
|
919
|
+
# "members": ["user:sean@example.com"]
|
|
920
|
+
# `
|
|
921
|
+
# ]
|
|
922
|
+
# `
|
|
923
|
+
# For a description of IAM and its features, see the
|
|
924
|
+
# [IAM developer's guide](https://cloud.google.com/iam).
|
|
925
|
+
# Corresponds to the JSON property `policy`
|
|
926
|
+
# @return [Google::Apis::CloudiotV1beta1::Policy]
|
|
927
|
+
attr_accessor :policy
|
|
928
|
+
|
|
929
|
+
# OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
|
|
930
|
+
# the fields in the mask will be modified. If no mask is provided, the
|
|
931
|
+
# following default mask is used:
|
|
932
|
+
# paths: "bindings, etag"
|
|
933
|
+
# This field is only used by Cloud IAM.
|
|
934
|
+
# Corresponds to the JSON property `updateMask`
|
|
935
|
+
# @return [String]
|
|
936
|
+
attr_accessor :update_mask
|
|
937
|
+
|
|
938
|
+
def initialize(**args)
|
|
939
|
+
update!(**args)
|
|
940
|
+
end
|
|
941
|
+
|
|
942
|
+
# Update properties of this object
|
|
943
|
+
def update!(**args)
|
|
944
|
+
@policy = args[:policy] if args.key?(:policy)
|
|
945
|
+
@update_mask = args[:update_mask] if args.key?(:update_mask)
|
|
946
|
+
end
|
|
947
|
+
end
|
|
948
|
+
|
|
949
|
+
# The `Status` type defines a logical error model that is suitable for different
|
|
950
|
+
# programming environments, including REST APIs and RPC APIs. It is used by
|
|
951
|
+
# [gRPC](https://github.com/grpc). The error model is designed to be:
|
|
952
|
+
# - Simple to use and understand for most users
|
|
953
|
+
# - Flexible enough to meet unexpected needs
|
|
954
|
+
# # Overview
|
|
955
|
+
# The `Status` message contains three pieces of data: error code, error message,
|
|
956
|
+
# and error details. The error code should be an enum value of
|
|
957
|
+
# google.rpc.Code, but it may accept additional error codes if needed. The
|
|
958
|
+
# error message should be a developer-facing English message that helps
|
|
959
|
+
# developers *understand* and *resolve* the error. If a localized user-facing
|
|
960
|
+
# error message is needed, put the localized message in the error details or
|
|
961
|
+
# localize it in the client. The optional error details may contain arbitrary
|
|
962
|
+
# information about the error. There is a predefined set of error detail types
|
|
963
|
+
# in the package `google.rpc` that can be used for common error conditions.
|
|
964
|
+
# # Language mapping
|
|
965
|
+
# The `Status` message is the logical representation of the error model, but it
|
|
966
|
+
# is not necessarily the actual wire format. When the `Status` message is
|
|
967
|
+
# exposed in different client libraries and different wire protocols, it can be
|
|
968
|
+
# mapped differently. For example, it will likely be mapped to some exceptions
|
|
969
|
+
# in Java, but more likely mapped to some error codes in C.
|
|
970
|
+
# # Other uses
|
|
971
|
+
# The error model and the `Status` message can be used in a variety of
|
|
972
|
+
# environments, either with or without APIs, to provide a
|
|
973
|
+
# consistent developer experience across different environments.
|
|
974
|
+
# Example uses of this error model include:
|
|
975
|
+
# - Partial errors. If a service needs to return partial errors to the client,
|
|
976
|
+
# it may embed the `Status` in the normal response to indicate the partial
|
|
977
|
+
# errors.
|
|
978
|
+
# - Workflow errors. A typical workflow has multiple steps. Each step may
|
|
979
|
+
# have a `Status` message for error reporting.
|
|
980
|
+
# - Batch operations. If a client uses batch request and batch response, the
|
|
981
|
+
# `Status` message should be used directly inside batch response, one for
|
|
982
|
+
# each error sub-response.
|
|
983
|
+
# - Asynchronous operations. If an API call embeds asynchronous operation
|
|
984
|
+
# results in its response, the status of those operations should be
|
|
985
|
+
# represented directly using the `Status` message.
|
|
986
|
+
# - Logging. If some API errors are stored in logs, the message `Status` could
|
|
987
|
+
# be used directly after any stripping needed for security/privacy reasons.
|
|
988
|
+
class Status
|
|
989
|
+
include Google::Apis::Core::Hashable
|
|
990
|
+
|
|
991
|
+
# The status code, which should be an enum value of google.rpc.Code.
|
|
992
|
+
# Corresponds to the JSON property `code`
|
|
993
|
+
# @return [Fixnum]
|
|
994
|
+
attr_accessor :code
|
|
995
|
+
|
|
996
|
+
# A list of messages that carry the error details. There is a common set of
|
|
997
|
+
# message types for APIs to use.
|
|
998
|
+
# Corresponds to the JSON property `details`
|
|
999
|
+
# @return [Array<Hash<String,Object>>]
|
|
1000
|
+
attr_accessor :details
|
|
1001
|
+
|
|
1002
|
+
# A developer-facing error message, which should be in English. Any
|
|
1003
|
+
# user-facing error message should be localized and sent in the
|
|
1004
|
+
# google.rpc.Status.details field, or localized by the client.
|
|
1005
|
+
# Corresponds to the JSON property `message`
|
|
1006
|
+
# @return [String]
|
|
1007
|
+
attr_accessor :message
|
|
1008
|
+
|
|
1009
|
+
def initialize(**args)
|
|
1010
|
+
update!(**args)
|
|
1011
|
+
end
|
|
1012
|
+
|
|
1013
|
+
# Update properties of this object
|
|
1014
|
+
def update!(**args)
|
|
1015
|
+
@code = args[:code] if args.key?(:code)
|
|
1016
|
+
@details = args[:details] if args.key?(:details)
|
|
1017
|
+
@message = args[:message] if args.key?(:message)
|
|
1018
|
+
end
|
|
1019
|
+
end
|
|
1020
|
+
|
|
1021
|
+
# Request message for `TestIamPermissions` method.
|
|
1022
|
+
class TestIamPermissionsRequest
|
|
1023
|
+
include Google::Apis::Core::Hashable
|
|
1024
|
+
|
|
1025
|
+
# The set of permissions to check for the `resource`. Permissions with
|
|
1026
|
+
# wildcards (such as '*' or 'storage.*') are not allowed. For more
|
|
1027
|
+
# information see
|
|
1028
|
+
# [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
|
|
1029
|
+
# Corresponds to the JSON property `permissions`
|
|
1030
|
+
# @return [Array<String>]
|
|
1031
|
+
attr_accessor :permissions
|
|
1032
|
+
|
|
1033
|
+
def initialize(**args)
|
|
1034
|
+
update!(**args)
|
|
1035
|
+
end
|
|
1036
|
+
|
|
1037
|
+
# Update properties of this object
|
|
1038
|
+
def update!(**args)
|
|
1039
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
|
1040
|
+
end
|
|
1041
|
+
end
|
|
1042
|
+
|
|
1043
|
+
# Response message for `TestIamPermissions` method.
|
|
1044
|
+
class TestIamPermissionsResponse
|
|
1045
|
+
include Google::Apis::Core::Hashable
|
|
1046
|
+
|
|
1047
|
+
# A subset of `TestPermissionsRequest.permissions` that the caller is
|
|
1048
|
+
# allowed.
|
|
1049
|
+
# Corresponds to the JSON property `permissions`
|
|
1050
|
+
# @return [Array<String>]
|
|
1051
|
+
attr_accessor :permissions
|
|
1052
|
+
|
|
1053
|
+
def initialize(**args)
|
|
1054
|
+
update!(**args)
|
|
1055
|
+
end
|
|
1056
|
+
|
|
1057
|
+
# Update properties of this object
|
|
1058
|
+
def update!(**args)
|
|
1059
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
|
1060
|
+
end
|
|
1061
|
+
end
|
|
1062
|
+
end
|
|
1063
|
+
end
|
|
1064
|
+
end
|