blob: 454fdf58a4e4bbeb78a890995193d3fc0bdfce41 [file] [log] [blame]
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<h1><a href="cloudiot_v1.html">Cloud IoT API</a> . <a href="cloudiot_v1.projects.html">projects</a> . <a href="cloudiot_v1.projects.locations.html">locations</a> . <a href="cloudiot_v1.projects.locations.registries.html">registries</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78 <code><a href="cloudiot_v1.projects.locations.registries.devices.html">devices()</a></code>
79</p>
80<p class="firstline">Returns the devices Resource.</p>
81
82<p class="toc_element">
83 <code><a href="cloudiot_v1.projects.locations.registries.groups.html">groups()</a></code>
84</p>
85<p class="firstline">Returns the groups Resource.</p>
86
87<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070088 <code><a href="#bindDeviceToGateway">bindDeviceToGateway(parent, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070089<p class="firstline">Associates the device with the gateway.</p>
90<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070091 <code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070092<p class="firstline">Creates a device registry that contains devices.</p>
93<p class="toc_element">
94 <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
95<p class="firstline">Deletes a device registry configuration.</p>
96<p class="toc_element">
97 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
98<p class="firstline">Gets a device registry configuration.</p>
99<p class="toc_element">
100 <code><a href="#getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</a></code></p>
101<p class="firstline">Gets the access control policy for a resource.</p>
102<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700103 <code><a href="#list">list(parent, pageToken=None, x__xgafv=None, pageSize=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700104<p class="firstline">Lists device registries.</p>
105<p class="toc_element">
106 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
107<p class="firstline">Retrieves the next page of results.</p>
108<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700109 <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700110<p class="firstline">Updates a device registry configuration.</p>
111<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700112 <code><a href="#setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700113<p class="firstline">Sets the access control policy on the specified resource. Replaces any</p>
114<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700115 <code><a href="#testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700116<p class="firstline">Returns permissions that a caller has on the specified resource.</p>
117<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700118 <code><a href="#unbindDeviceFromGateway">unbindDeviceFromGateway(parent, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700119<p class="firstline">Deletes the association between the device and the gateway.</p>
120<h3>Method Details</h3>
121<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700122 <code class="details" id="bindDeviceToGateway">bindDeviceToGateway(parent, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700123 <pre>Associates the device with the gateway.
124
125Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700126 parent: string, Required. The name of the registry. For example,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700127`projects/example-project/locations/us-central1/registries/my-registry`. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700128 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700129 The object takes the form of:
130
131{ # Request for `BindDeviceToGateway`.
Dan O'Mearadd494642020-05-01 07:42:23 -0700132 "gatewayId": "A String", # Required. The value of `gateway_id` can be either the device numeric ID or the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700133 # user-defined device identifier.
Dan O'Mearadd494642020-05-01 07:42:23 -0700134 "deviceId": "A String", # Required. The device to associate with the specified gateway. The value of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700135 # `device_id` can be either the device numeric ID or the user-defined device
136 # identifier.
137 }
138
139 x__xgafv: string, V1 error format.
140 Allowed values
141 1 - v1 error format
142 2 - v2 error format
143
144Returns:
145 An object of the form:
146
147 { # Response for `BindDeviceToGateway`.
148 }</pre>
149</div>
150
151<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700152 <code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700153 <pre>Creates a device registry that contains devices.
154
155Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700156 parent: string, Required. The project and cloud region where this device registry must be created.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700157For example, `projects/example-project/locations/us-central1`. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700158 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700159 The object takes the form of:
160
161{ # A container for a group of devices.
162 "name": "A String", # The resource path name. For example,
163 # `projects/example-project/locations/us-central1/registries/my-registry`.
164 "stateNotificationConfig": { # The configuration for notification of new states received from the device. # The configuration for notification of new states received from the device.
165 # State updates are guaranteed to be stored in the state history, but
166 # notifications to Cloud Pub/Sub are not guaranteed. For example, if
167 # permissions are misconfigured or the specified topic doesn't exist, no
168 # notification will be published but the state will still be stored in Cloud
169 # IoT Core.
170 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
171 # `projects/myProject/topics/deviceEvents`.
172 },
173 "logLevel": "A String", # **Beta Feature**
174 #
175 # The default logging verbosity for activity from devices in this registry.
176 # The verbosity level can be overridden by Device.log_level.
177 "eventNotificationConfigs": [ # The configuration for notification of telemetry events received from the
178 # device. All telemetry events that were successfully published by the
179 # device and acknowledged by Cloud IoT Core are guaranteed to be
180 # delivered to Cloud Pub/Sub. If multiple configurations match a message,
181 # only the first matching configuration is used. If you try to publish a
182 # device telemetry event using MQTT without specifying a Cloud Pub/Sub topic
183 # for the device's registry, the connection closes automatically. If you try
184 # to do so using an HTTP connection, an error is returned. Up to 10
185 # configurations may be provided.
186 { # The configuration for forwarding telemetry events.
187 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
188 # `projects/myProject/topics/deviceEvents`.
189 "subfolderMatches": "A String", # If the subfolder name matches this string exactly, this configuration will
190 # be used. The string must not include the leading '/' character. If empty,
191 # all strings are matched. This field is used only for telemetry events;
192 # subfolders are not supported for state changes.
193 },
194 ],
195 "httpConfig": { # The configuration of the HTTP bridge for a device registry. # The DeviceService (HTTP) configuration for this device registry.
196 "httpEnabledState": "A String", # If enabled, allows devices to use DeviceService via the HTTP protocol.
197 # Otherwise, any requests to DeviceService will fail for this registry.
198 },
199 "mqttConfig": { # The configuration of MQTT for a device registry. # The MQTT configuration for this device registry.
200 "mqttEnabledState": "A String", # If enabled, allows connections using the MQTT protocol. Otherwise, MQTT
201 # connections to this registry will fail.
202 },
203 "credentials": [ # The credentials used to verify the device credentials. No more than 10
204 # credentials can be bound to a single registry at a time. The verification
205 # process occurs at the time of device creation or update. If this field is
206 # empty, no verification is performed. Otherwise, the credentials of a newly
207 # created device or added credentials of an updated device should be signed
208 # with one of these registry credentials.
209 #
210 # Note, however, that existing devices will never be affected by
211 # modifications to this list of credentials: after a device has been
212 # successfully created in a registry, it should be able to connect even if
213 # its registry credentials are revoked, deleted, or modified.
214 { # A server-stored registry credential used to validate device credentials.
215 "publicKeyCertificate": { # A public key certificate format and data. # A public key certificate used to verify the device credentials.
216 "x509Details": { # Details of an X.509 certificate. For informational purposes only. # [Output only] The certificate details. Used only for X.509 certificates.
217 "signatureAlgorithm": "A String", # The algorithm used to sign the certificate.
218 "expiryTime": "A String", # The time the certificate becomes invalid.
219 "publicKeyType": "A String", # The type of public key in the certificate.
220 "startTime": "A String", # The time the certificate becomes valid.
221 "subject": "A String", # The entity the certificate and public key belong to.
222 "issuer": "A String", # The entity that signed the certificate.
223 },
224 "certificate": "A String", # The certificate data.
225 "format": "A String", # The certificate format.
226 },
227 },
228 ],
229 "id": "A String", # The identifier of this device registry. For example, `myRegistry`.
230}
231
232 x__xgafv: string, V1 error format.
233 Allowed values
234 1 - v1 error format
235 2 - v2 error format
236
237Returns:
238 An object of the form:
239
240 { # A container for a group of devices.
241 "name": "A String", # The resource path name. For example,
242 # `projects/example-project/locations/us-central1/registries/my-registry`.
243 "stateNotificationConfig": { # The configuration for notification of new states received from the device. # The configuration for notification of new states received from the device.
244 # State updates are guaranteed to be stored in the state history, but
245 # notifications to Cloud Pub/Sub are not guaranteed. For example, if
246 # permissions are misconfigured or the specified topic doesn't exist, no
247 # notification will be published but the state will still be stored in Cloud
248 # IoT Core.
249 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
250 # `projects/myProject/topics/deviceEvents`.
251 },
252 "logLevel": "A String", # **Beta Feature**
253 #
254 # The default logging verbosity for activity from devices in this registry.
255 # The verbosity level can be overridden by Device.log_level.
256 "eventNotificationConfigs": [ # The configuration for notification of telemetry events received from the
257 # device. All telemetry events that were successfully published by the
258 # device and acknowledged by Cloud IoT Core are guaranteed to be
259 # delivered to Cloud Pub/Sub. If multiple configurations match a message,
260 # only the first matching configuration is used. If you try to publish a
261 # device telemetry event using MQTT without specifying a Cloud Pub/Sub topic
262 # for the device's registry, the connection closes automatically. If you try
263 # to do so using an HTTP connection, an error is returned. Up to 10
264 # configurations may be provided.
265 { # The configuration for forwarding telemetry events.
266 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
267 # `projects/myProject/topics/deviceEvents`.
268 "subfolderMatches": "A String", # If the subfolder name matches this string exactly, this configuration will
269 # be used. The string must not include the leading '/' character. If empty,
270 # all strings are matched. This field is used only for telemetry events;
271 # subfolders are not supported for state changes.
272 },
273 ],
274 "httpConfig": { # The configuration of the HTTP bridge for a device registry. # The DeviceService (HTTP) configuration for this device registry.
275 "httpEnabledState": "A String", # If enabled, allows devices to use DeviceService via the HTTP protocol.
276 # Otherwise, any requests to DeviceService will fail for this registry.
277 },
278 "mqttConfig": { # The configuration of MQTT for a device registry. # The MQTT configuration for this device registry.
279 "mqttEnabledState": "A String", # If enabled, allows connections using the MQTT protocol. Otherwise, MQTT
280 # connections to this registry will fail.
281 },
282 "credentials": [ # The credentials used to verify the device credentials. No more than 10
283 # credentials can be bound to a single registry at a time. The verification
284 # process occurs at the time of device creation or update. If this field is
285 # empty, no verification is performed. Otherwise, the credentials of a newly
286 # created device or added credentials of an updated device should be signed
287 # with one of these registry credentials.
288 #
289 # Note, however, that existing devices will never be affected by
290 # modifications to this list of credentials: after a device has been
291 # successfully created in a registry, it should be able to connect even if
292 # its registry credentials are revoked, deleted, or modified.
293 { # A server-stored registry credential used to validate device credentials.
294 "publicKeyCertificate": { # A public key certificate format and data. # A public key certificate used to verify the device credentials.
295 "x509Details": { # Details of an X.509 certificate. For informational purposes only. # [Output only] The certificate details. Used only for X.509 certificates.
296 "signatureAlgorithm": "A String", # The algorithm used to sign the certificate.
297 "expiryTime": "A String", # The time the certificate becomes invalid.
298 "publicKeyType": "A String", # The type of public key in the certificate.
299 "startTime": "A String", # The time the certificate becomes valid.
300 "subject": "A String", # The entity the certificate and public key belong to.
301 "issuer": "A String", # The entity that signed the certificate.
302 },
303 "certificate": "A String", # The certificate data.
304 "format": "A String", # The certificate format.
305 },
306 },
307 ],
308 "id": "A String", # The identifier of this device registry. For example, `myRegistry`.
309 }</pre>
310</div>
311
312<div class="method">
313 <code class="details" id="delete">delete(name, x__xgafv=None)</code>
314 <pre>Deletes a device registry configuration.
315
316Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700317 name: string, Required. The name of the device registry. For example,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700318`projects/example-project/locations/us-central1/registries/my-registry`. (required)
319 x__xgafv: string, V1 error format.
320 Allowed values
321 1 - v1 error format
322 2 - v2 error format
323
324Returns:
325 An object of the form:
326
327 { # A generic empty message that you can re-use to avoid defining duplicated
328 # empty messages in your APIs. A typical example is to use it as the request
329 # or the response type of an API method. For instance:
330 #
331 # service Foo {
332 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
333 # }
334 #
335 # The JSON representation for `Empty` is empty JSON object `{}`.
336 }</pre>
337</div>
338
339<div class="method">
340 <code class="details" id="get">get(name, x__xgafv=None)</code>
341 <pre>Gets a device registry configuration.
342
343Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700344 name: string, Required. The name of the device registry. For example,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700345`projects/example-project/locations/us-central1/registries/my-registry`. (required)
346 x__xgafv: string, V1 error format.
347 Allowed values
348 1 - v1 error format
349 2 - v2 error format
350
351Returns:
352 An object of the form:
353
354 { # A container for a group of devices.
355 "name": "A String", # The resource path name. For example,
356 # `projects/example-project/locations/us-central1/registries/my-registry`.
357 "stateNotificationConfig": { # The configuration for notification of new states received from the device. # The configuration for notification of new states received from the device.
358 # State updates are guaranteed to be stored in the state history, but
359 # notifications to Cloud Pub/Sub are not guaranteed. For example, if
360 # permissions are misconfigured or the specified topic doesn't exist, no
361 # notification will be published but the state will still be stored in Cloud
362 # IoT Core.
363 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
364 # `projects/myProject/topics/deviceEvents`.
365 },
366 "logLevel": "A String", # **Beta Feature**
367 #
368 # The default logging verbosity for activity from devices in this registry.
369 # The verbosity level can be overridden by Device.log_level.
370 "eventNotificationConfigs": [ # The configuration for notification of telemetry events received from the
371 # device. All telemetry events that were successfully published by the
372 # device and acknowledged by Cloud IoT Core are guaranteed to be
373 # delivered to Cloud Pub/Sub. If multiple configurations match a message,
374 # only the first matching configuration is used. If you try to publish a
375 # device telemetry event using MQTT without specifying a Cloud Pub/Sub topic
376 # for the device's registry, the connection closes automatically. If you try
377 # to do so using an HTTP connection, an error is returned. Up to 10
378 # configurations may be provided.
379 { # The configuration for forwarding telemetry events.
380 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
381 # `projects/myProject/topics/deviceEvents`.
382 "subfolderMatches": "A String", # If the subfolder name matches this string exactly, this configuration will
383 # be used. The string must not include the leading '/' character. If empty,
384 # all strings are matched. This field is used only for telemetry events;
385 # subfolders are not supported for state changes.
386 },
387 ],
388 "httpConfig": { # The configuration of the HTTP bridge for a device registry. # The DeviceService (HTTP) configuration for this device registry.
389 "httpEnabledState": "A String", # If enabled, allows devices to use DeviceService via the HTTP protocol.
390 # Otherwise, any requests to DeviceService will fail for this registry.
391 },
392 "mqttConfig": { # The configuration of MQTT for a device registry. # The MQTT configuration for this device registry.
393 "mqttEnabledState": "A String", # If enabled, allows connections using the MQTT protocol. Otherwise, MQTT
394 # connections to this registry will fail.
395 },
396 "credentials": [ # The credentials used to verify the device credentials. No more than 10
397 # credentials can be bound to a single registry at a time. The verification
398 # process occurs at the time of device creation or update. If this field is
399 # empty, no verification is performed. Otherwise, the credentials of a newly
400 # created device or added credentials of an updated device should be signed
401 # with one of these registry credentials.
402 #
403 # Note, however, that existing devices will never be affected by
404 # modifications to this list of credentials: after a device has been
405 # successfully created in a registry, it should be able to connect even if
406 # its registry credentials are revoked, deleted, or modified.
407 { # A server-stored registry credential used to validate device credentials.
408 "publicKeyCertificate": { # A public key certificate format and data. # A public key certificate used to verify the device credentials.
409 "x509Details": { # Details of an X.509 certificate. For informational purposes only. # [Output only] The certificate details. Used only for X.509 certificates.
410 "signatureAlgorithm": "A String", # The algorithm used to sign the certificate.
411 "expiryTime": "A String", # The time the certificate becomes invalid.
412 "publicKeyType": "A String", # The type of public key in the certificate.
413 "startTime": "A String", # The time the certificate becomes valid.
414 "subject": "A String", # The entity the certificate and public key belong to.
415 "issuer": "A String", # The entity that signed the certificate.
416 },
417 "certificate": "A String", # The certificate data.
418 "format": "A String", # The certificate format.
419 },
420 },
421 ],
422 "id": "A String", # The identifier of this device registry. For example, `myRegistry`.
423 }</pre>
424</div>
425
426<div class="method">
427 <code class="details" id="getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</code>
428 <pre>Gets the access control policy for a resource.
429Returns an empty policy if the resource exists and does not have a policy
430set.
431
432Args:
433 resource: string, REQUIRED: The resource for which the policy is being requested.
434See the operation documentation for the appropriate value for this field. (required)
435 body: object, The request body.
436 The object takes the form of:
437
438{ # Request message for `GetIamPolicy` method.
Dan O'Mearadd494642020-05-01 07:42:23 -0700439 "options": { # Encapsulates settings provided to GetIamPolicy. # OPTIONAL: A `GetPolicyOptions` object for specifying options to
440 # `GetIamPolicy`.
441 "requestedPolicyVersion": 42, # Optional. The policy format version to be returned.
442 #
443 # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
444 # rejected.
445 #
446 # Requests for policies with any conditional bindings must specify version 3.
447 # Policies without any conditional bindings may specify any valid value or
448 # leave the field unset.
449 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700450 }
451
452 x__xgafv: string, V1 error format.
453 Allowed values
454 1 - v1 error format
455 2 - v2 error format
456
457Returns:
458 An object of the form:
459
Dan O'Mearadd494642020-05-01 07:42:23 -0700460 { # An Identity and Access Management (IAM) policy, which specifies access
461 # controls for Google Cloud resources.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700462 #
463 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700464 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
465 # `members` to a single `role`. Members can be user accounts, service accounts,
466 # Google groups, and domains (such as G Suite). A `role` is a named list of
467 # permissions; each `role` can be an IAM predefined role or a user-created
468 # custom role.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700469 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700470 # Optionally, a `binding` can specify a `condition`, which is a logical
471 # expression that allows access to a resource only if the expression evaluates
472 # to `true`. A condition can add constraints based on attributes of the
473 # request, the resource, or both.
474 #
475 # **JSON example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700476 #
477 # {
478 # "bindings": [
479 # {
Dan O'Mearadd494642020-05-01 07:42:23 -0700480 # "role": "roles/resourcemanager.organizationAdmin",
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700481 # "members": [
482 # "user:mike@example.com",
483 # "group:admins@example.com",
484 # "domain:google.com",
Dan O'Mearadd494642020-05-01 07:42:23 -0700485 # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700486 # ]
487 # },
488 # {
Dan O'Mearadd494642020-05-01 07:42:23 -0700489 # "role": "roles/resourcemanager.organizationViewer",
490 # "members": ["user:eve@example.com"],
491 # "condition": {
492 # "title": "expirable access",
493 # "description": "Does not grant access after Sep 2020",
494 # "expression": "request.time &lt; timestamp('2020-10-01T00:00:00.000Z')",
495 # }
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700496 # }
Dan O'Mearadd494642020-05-01 07:42:23 -0700497 # ],
498 # "etag": "BwWWja0YfJA=",
499 # "version": 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700500 # }
501 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700502 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700503 #
504 # bindings:
505 # - members:
506 # - user:mike@example.com
507 # - group:admins@example.com
508 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -0700509 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
510 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700511 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -0700512 # - user:eve@example.com
513 # role: roles/resourcemanager.organizationViewer
514 # condition:
515 # title: expirable access
516 # description: Does not grant access after Sep 2020
517 # expression: request.time &lt; timestamp('2020-10-01T00:00:00.000Z')
518 # - etag: BwWWja0YfJA=
519 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700520 #
521 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -0700522 # [IAM documentation](https://cloud.google.com/iam/docs/).
523 "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a
524 # `condition` that determines how and when the `bindings` are applied. Each
525 # of the `bindings` must contain at least one member.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700526 { # Associates `members` with a `role`.
527 "role": "A String", # Role that is assigned to `members`.
528 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
529 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
530 # `members` can have the following values:
531 #
532 # * `allUsers`: A special identifier that represents anyone who is
533 # on the internet; with or without a Google account.
534 #
535 # * `allAuthenticatedUsers`: A special identifier that represents anyone
536 # who is authenticated with a Google account or a service account.
537 #
538 # * `user:{emailid}`: An email address that represents a specific Google
Dan O'Mearadd494642020-05-01 07:42:23 -0700539 # account. For example, `alice@example.com` .
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700540 #
541 #
542 # * `serviceAccount:{emailid}`: An email address that represents a service
543 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
544 #
545 # * `group:{emailid}`: An email address that represents a Google group.
546 # For example, `admins@example.com`.
547 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700548 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
549 # identifier) representing a user that has been recently deleted. For
550 # example, `alice@example.com?uid=123456789012345678901`. If the user is
551 # recovered, this value reverts to `user:{emailid}` and the recovered user
552 # retains the role in the binding.
553 #
554 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
555 # unique identifier) representing a service account that has been recently
556 # deleted. For example,
557 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
558 # If the service account is undeleted, this value reverts to
559 # `serviceAccount:{emailid}` and the undeleted service account retains the
560 # role in the binding.
561 #
562 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
563 # identifier) representing a Google group that has been recently
564 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
565 # the group is recovered, this value reverts to `group:{emailid}` and the
566 # recovered group retains the role in the binding.
567 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700568 #
569 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
570 # users of that domain. For example, `google.com` or `example.com`.
571 #
572 "A String",
573 ],
Dan O'Mearadd494642020-05-01 07:42:23 -0700574 "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700575 # NOTE: An unsatisfied condition will not allow user access via current
576 # binding. Different bindings, including their conditions, are examined
577 # independently.
Dan O'Mearadd494642020-05-01 07:42:23 -0700578 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
579 # are documented at https://github.com/google/cel-spec.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700580 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700581 # Example (Comparison):
582 #
583 # title: "Summary size limit"
584 # description: "Determines if a summary is less than 100 chars"
585 # expression: "document.summary.size() &lt; 100"
586 #
587 # Example (Equality):
588 #
589 # title: "Requestor is owner"
590 # description: "Determines if requestor is the document owner"
591 # expression: "document.owner == request.auth.claims.email"
592 #
593 # Example (Logic):
594 #
595 # title: "Public documents"
596 # description: "Determine whether the document should be publicly visible"
597 # expression: "document.type != 'private' &amp;&amp; document.type != 'internal'"
598 #
599 # Example (Data Manipulation):
600 #
601 # title: "Notification string"
602 # description: "Create a notification string with a timestamp."
603 # expression: "'New message received at ' + string(document.create_time)"
604 #
605 # The exact variables and functions that may be referenced within an expression
606 # are determined by the service that evaluates it. See the service
607 # documentation for additional information.
608 "location": "A String", # Optional. String indicating the location of the expression for error
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700609 # reporting, e.g. a file name and a position in the file.
Dan O'Mearadd494642020-05-01 07:42:23 -0700610 "expression": "A String", # Textual representation of an expression in Common Expression Language
611 # syntax.
612 "description": "A String", # Optional. Description of the expression. This is a longer text which
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700613 # describes the expression, e.g. when hovered over it in a UI.
Dan O'Mearadd494642020-05-01 07:42:23 -0700614 "title": "A String", # Optional. Title for the expression, i.e. a short string describing
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700615 # its purpose. This can be used e.g. in UIs which allow to enter the
616 # expression.
617 },
618 },
619 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700620 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
621 # prevent simultaneous updates of a policy from overwriting each other.
622 # It is strongly suggested that systems make use of the `etag` in the
623 # read-modify-write cycle to perform policy updates in order to avoid race
624 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
625 # systems are expected to put that etag in the request to `setIamPolicy` to
626 # ensure that their change will be applied to the same version of the policy.
627 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700628 # **Important:** If you use IAM Conditions, you must include the `etag` field
629 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
630 # you to overwrite a version `3` policy with a version `1` policy, and all of
631 # the conditions in the version `3` policy are lost.
632 "version": 42, # Specifies the format of the policy.
633 #
634 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
635 # are rejected.
636 #
637 # Any operation that affects conditional role bindings must specify version
638 # `3`. This requirement applies to the following operations:
639 #
640 # * Getting a policy that includes a conditional role binding
641 # * Adding a conditional role binding to a policy
642 # * Changing a conditional role binding in a policy
643 # * Removing any role binding, with or without a condition, from a policy
644 # that includes conditions
645 #
646 # **Important:** If you use IAM Conditions, you must include the `etag` field
647 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
648 # you to overwrite a version `3` policy with a version `1` policy, and all of
649 # the conditions in the version `3` policy are lost.
650 #
651 # If a policy does not include any conditions, operations on that policy may
652 # specify any valid version or leave the field unset.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700653 }</pre>
654</div>
655
656<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700657 <code class="details" id="list">list(parent, pageToken=None, x__xgafv=None, pageSize=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700658 <pre>Lists device registries.
659
660Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700661 parent: string, Required. The project and cloud region path. For example,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700662`projects/example-project/locations/us-central1`. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700663 pageToken: string, The value returned by the last `ListDeviceRegistriesResponse`; indicates
664that this is a continuation of a prior `ListDeviceRegistries` call and
665the system should return the next page of data.
666 x__xgafv: string, V1 error format.
667 Allowed values
668 1 - v1 error format
669 2 - v2 error format
Dan O'Mearadd494642020-05-01 07:42:23 -0700670 pageSize: integer, The maximum number of registries to return in the response. If this value
671is zero, the service will select a default size. A call may return fewer
672objects than requested. A non-empty `next_page_token` in the response
673indicates that more data is available.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700674
675Returns:
676 An object of the form:
677
678 { # Response for `ListDeviceRegistries`.
679 "nextPageToken": "A String", # If not empty, indicates that there may be more registries that match the
680 # request; this value should be passed in a new
681 # `ListDeviceRegistriesRequest`.
682 "deviceRegistries": [ # The registries that matched the query.
683 { # A container for a group of devices.
684 "name": "A String", # The resource path name. For example,
685 # `projects/example-project/locations/us-central1/registries/my-registry`.
686 "stateNotificationConfig": { # The configuration for notification of new states received from the device. # The configuration for notification of new states received from the device.
687 # State updates are guaranteed to be stored in the state history, but
688 # notifications to Cloud Pub/Sub are not guaranteed. For example, if
689 # permissions are misconfigured or the specified topic doesn't exist, no
690 # notification will be published but the state will still be stored in Cloud
691 # IoT Core.
692 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
693 # `projects/myProject/topics/deviceEvents`.
694 },
695 "logLevel": "A String", # **Beta Feature**
696 #
697 # The default logging verbosity for activity from devices in this registry.
698 # The verbosity level can be overridden by Device.log_level.
699 "eventNotificationConfigs": [ # The configuration for notification of telemetry events received from the
700 # device. All telemetry events that were successfully published by the
701 # device and acknowledged by Cloud IoT Core are guaranteed to be
702 # delivered to Cloud Pub/Sub. If multiple configurations match a message,
703 # only the first matching configuration is used. If you try to publish a
704 # device telemetry event using MQTT without specifying a Cloud Pub/Sub topic
705 # for the device's registry, the connection closes automatically. If you try
706 # to do so using an HTTP connection, an error is returned. Up to 10
707 # configurations may be provided.
708 { # The configuration for forwarding telemetry events.
709 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
710 # `projects/myProject/topics/deviceEvents`.
711 "subfolderMatches": "A String", # If the subfolder name matches this string exactly, this configuration will
712 # be used. The string must not include the leading '/' character. If empty,
713 # all strings are matched. This field is used only for telemetry events;
714 # subfolders are not supported for state changes.
715 },
716 ],
717 "httpConfig": { # The configuration of the HTTP bridge for a device registry. # The DeviceService (HTTP) configuration for this device registry.
718 "httpEnabledState": "A String", # If enabled, allows devices to use DeviceService via the HTTP protocol.
719 # Otherwise, any requests to DeviceService will fail for this registry.
720 },
721 "mqttConfig": { # The configuration of MQTT for a device registry. # The MQTT configuration for this device registry.
722 "mqttEnabledState": "A String", # If enabled, allows connections using the MQTT protocol. Otherwise, MQTT
723 # connections to this registry will fail.
724 },
725 "credentials": [ # The credentials used to verify the device credentials. No more than 10
726 # credentials can be bound to a single registry at a time. The verification
727 # process occurs at the time of device creation or update. If this field is
728 # empty, no verification is performed. Otherwise, the credentials of a newly
729 # created device or added credentials of an updated device should be signed
730 # with one of these registry credentials.
731 #
732 # Note, however, that existing devices will never be affected by
733 # modifications to this list of credentials: after a device has been
734 # successfully created in a registry, it should be able to connect even if
735 # its registry credentials are revoked, deleted, or modified.
736 { # A server-stored registry credential used to validate device credentials.
737 "publicKeyCertificate": { # A public key certificate format and data. # A public key certificate used to verify the device credentials.
738 "x509Details": { # Details of an X.509 certificate. For informational purposes only. # [Output only] The certificate details. Used only for X.509 certificates.
739 "signatureAlgorithm": "A String", # The algorithm used to sign the certificate.
740 "expiryTime": "A String", # The time the certificate becomes invalid.
741 "publicKeyType": "A String", # The type of public key in the certificate.
742 "startTime": "A String", # The time the certificate becomes valid.
743 "subject": "A String", # The entity the certificate and public key belong to.
744 "issuer": "A String", # The entity that signed the certificate.
745 },
746 "certificate": "A String", # The certificate data.
747 "format": "A String", # The certificate format.
748 },
749 },
750 ],
751 "id": "A String", # The identifier of this device registry. For example, `myRegistry`.
752 },
753 ],
754 }</pre>
755</div>
756
757<div class="method">
758 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
759 <pre>Retrieves the next page of results.
760
761Args:
762 previous_request: The request for the previous page. (required)
763 previous_response: The response from the request for the previous page. (required)
764
765Returns:
766 A request object that you can call 'execute()' on to request the next
767 page. Returns None if there are no more items in the collection.
768 </pre>
769</div>
770
771<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700772 <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700773 <pre>Updates a device registry configuration.
774
775Args:
776 name: string, The resource path name. For example,
777`projects/example-project/locations/us-central1/registries/my-registry`. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700778 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700779 The object takes the form of:
780
781{ # A container for a group of devices.
782 "name": "A String", # The resource path name. For example,
783 # `projects/example-project/locations/us-central1/registries/my-registry`.
784 "stateNotificationConfig": { # The configuration for notification of new states received from the device. # The configuration for notification of new states received from the device.
785 # State updates are guaranteed to be stored in the state history, but
786 # notifications to Cloud Pub/Sub are not guaranteed. For example, if
787 # permissions are misconfigured or the specified topic doesn't exist, no
788 # notification will be published but the state will still be stored in Cloud
789 # IoT Core.
790 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
791 # `projects/myProject/topics/deviceEvents`.
792 },
793 "logLevel": "A String", # **Beta Feature**
794 #
795 # The default logging verbosity for activity from devices in this registry.
796 # The verbosity level can be overridden by Device.log_level.
797 "eventNotificationConfigs": [ # The configuration for notification of telemetry events received from the
798 # device. All telemetry events that were successfully published by the
799 # device and acknowledged by Cloud IoT Core are guaranteed to be
800 # delivered to Cloud Pub/Sub. If multiple configurations match a message,
801 # only the first matching configuration is used. If you try to publish a
802 # device telemetry event using MQTT without specifying a Cloud Pub/Sub topic
803 # for the device's registry, the connection closes automatically. If you try
804 # to do so using an HTTP connection, an error is returned. Up to 10
805 # configurations may be provided.
806 { # The configuration for forwarding telemetry events.
807 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
808 # `projects/myProject/topics/deviceEvents`.
809 "subfolderMatches": "A String", # If the subfolder name matches this string exactly, this configuration will
810 # be used. The string must not include the leading '/' character. If empty,
811 # all strings are matched. This field is used only for telemetry events;
812 # subfolders are not supported for state changes.
813 },
814 ],
815 "httpConfig": { # The configuration of the HTTP bridge for a device registry. # The DeviceService (HTTP) configuration for this device registry.
816 "httpEnabledState": "A String", # If enabled, allows devices to use DeviceService via the HTTP protocol.
817 # Otherwise, any requests to DeviceService will fail for this registry.
818 },
819 "mqttConfig": { # The configuration of MQTT for a device registry. # The MQTT configuration for this device registry.
820 "mqttEnabledState": "A String", # If enabled, allows connections using the MQTT protocol. Otherwise, MQTT
821 # connections to this registry will fail.
822 },
823 "credentials": [ # The credentials used to verify the device credentials. No more than 10
824 # credentials can be bound to a single registry at a time. The verification
825 # process occurs at the time of device creation or update. If this field is
826 # empty, no verification is performed. Otherwise, the credentials of a newly
827 # created device or added credentials of an updated device should be signed
828 # with one of these registry credentials.
829 #
830 # Note, however, that existing devices will never be affected by
831 # modifications to this list of credentials: after a device has been
832 # successfully created in a registry, it should be able to connect even if
833 # its registry credentials are revoked, deleted, or modified.
834 { # A server-stored registry credential used to validate device credentials.
835 "publicKeyCertificate": { # A public key certificate format and data. # A public key certificate used to verify the device credentials.
836 "x509Details": { # Details of an X.509 certificate. For informational purposes only. # [Output only] The certificate details. Used only for X.509 certificates.
837 "signatureAlgorithm": "A String", # The algorithm used to sign the certificate.
838 "expiryTime": "A String", # The time the certificate becomes invalid.
839 "publicKeyType": "A String", # The type of public key in the certificate.
840 "startTime": "A String", # The time the certificate becomes valid.
841 "subject": "A String", # The entity the certificate and public key belong to.
842 "issuer": "A String", # The entity that signed the certificate.
843 },
844 "certificate": "A String", # The certificate data.
845 "format": "A String", # The certificate format.
846 },
847 },
848 ],
849 "id": "A String", # The identifier of this device registry. For example, `myRegistry`.
850}
851
Dan O'Mearadd494642020-05-01 07:42:23 -0700852 updateMask: string, Required. Only updates the `device_registry` fields indicated by this mask.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700853The field mask must not be empty, and it must not contain fields that
854are immutable or only set by the server.
855Mutable top-level fields: `event_notification_config`, `http_config`,
856`mqtt_config`, and `state_notification_config`.
857 x__xgafv: string, V1 error format.
858 Allowed values
859 1 - v1 error format
860 2 - v2 error format
861
862Returns:
863 An object of the form:
864
865 { # A container for a group of devices.
866 "name": "A String", # The resource path name. For example,
867 # `projects/example-project/locations/us-central1/registries/my-registry`.
868 "stateNotificationConfig": { # The configuration for notification of new states received from the device. # The configuration for notification of new states received from the device.
869 # State updates are guaranteed to be stored in the state history, but
870 # notifications to Cloud Pub/Sub are not guaranteed. For example, if
871 # permissions are misconfigured or the specified topic doesn't exist, no
872 # notification will be published but the state will still be stored in Cloud
873 # IoT Core.
874 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
875 # `projects/myProject/topics/deviceEvents`.
876 },
877 "logLevel": "A String", # **Beta Feature**
878 #
879 # The default logging verbosity for activity from devices in this registry.
880 # The verbosity level can be overridden by Device.log_level.
881 "eventNotificationConfigs": [ # The configuration for notification of telemetry events received from the
882 # device. All telemetry events that were successfully published by the
883 # device and acknowledged by Cloud IoT Core are guaranteed to be
884 # delivered to Cloud Pub/Sub. If multiple configurations match a message,
885 # only the first matching configuration is used. If you try to publish a
886 # device telemetry event using MQTT without specifying a Cloud Pub/Sub topic
887 # for the device's registry, the connection closes automatically. If you try
888 # to do so using an HTTP connection, an error is returned. Up to 10
889 # configurations may be provided.
890 { # The configuration for forwarding telemetry events.
891 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example,
892 # `projects/myProject/topics/deviceEvents`.
893 "subfolderMatches": "A String", # If the subfolder name matches this string exactly, this configuration will
894 # be used. The string must not include the leading '/' character. If empty,
895 # all strings are matched. This field is used only for telemetry events;
896 # subfolders are not supported for state changes.
897 },
898 ],
899 "httpConfig": { # The configuration of the HTTP bridge for a device registry. # The DeviceService (HTTP) configuration for this device registry.
900 "httpEnabledState": "A String", # If enabled, allows devices to use DeviceService via the HTTP protocol.
901 # Otherwise, any requests to DeviceService will fail for this registry.
902 },
903 "mqttConfig": { # The configuration of MQTT for a device registry. # The MQTT configuration for this device registry.
904 "mqttEnabledState": "A String", # If enabled, allows connections using the MQTT protocol. Otherwise, MQTT
905 # connections to this registry will fail.
906 },
907 "credentials": [ # The credentials used to verify the device credentials. No more than 10
908 # credentials can be bound to a single registry at a time. The verification
909 # process occurs at the time of device creation or update. If this field is
910 # empty, no verification is performed. Otherwise, the credentials of a newly
911 # created device or added credentials of an updated device should be signed
912 # with one of these registry credentials.
913 #
914 # Note, however, that existing devices will never be affected by
915 # modifications to this list of credentials: after a device has been
916 # successfully created in a registry, it should be able to connect even if
917 # its registry credentials are revoked, deleted, or modified.
918 { # A server-stored registry credential used to validate device credentials.
919 "publicKeyCertificate": { # A public key certificate format and data. # A public key certificate used to verify the device credentials.
920 "x509Details": { # Details of an X.509 certificate. For informational purposes only. # [Output only] The certificate details. Used only for X.509 certificates.
921 "signatureAlgorithm": "A String", # The algorithm used to sign the certificate.
922 "expiryTime": "A String", # The time the certificate becomes invalid.
923 "publicKeyType": "A String", # The type of public key in the certificate.
924 "startTime": "A String", # The time the certificate becomes valid.
925 "subject": "A String", # The entity the certificate and public key belong to.
926 "issuer": "A String", # The entity that signed the certificate.
927 },
928 "certificate": "A String", # The certificate data.
929 "format": "A String", # The certificate format.
930 },
931 },
932 ],
933 "id": "A String", # The identifier of this device registry. For example, `myRegistry`.
934 }</pre>
935</div>
936
937<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700938 <code class="details" id="setIamPolicy">setIamPolicy(resource, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700939 <pre>Sets the access control policy on the specified resource. Replaces any
940existing policy.
941
942Args:
943 resource: string, REQUIRED: The resource for which the policy is being specified.
944See the operation documentation for the appropriate value for this field. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700945 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700946 The object takes the form of:
947
948{ # Request message for `SetIamPolicy` method.
Dan O'Mearadd494642020-05-01 07:42:23 -0700949 "policy": { # An Identity and Access Management (IAM) policy, which specifies access # REQUIRED: The complete policy to be applied to the `resource`. The size of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700950 # the policy is limited to a few 10s of KB. An empty policy is a
951 # valid policy but certain Cloud Platform services (such as Projects)
952 # might reject them.
Dan O'Mearadd494642020-05-01 07:42:23 -0700953 # controls for Google Cloud resources.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700954 #
955 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700956 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
957 # `members` to a single `role`. Members can be user accounts, service accounts,
958 # Google groups, and domains (such as G Suite). A `role` is a named list of
959 # permissions; each `role` can be an IAM predefined role or a user-created
960 # custom role.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700961 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700962 # Optionally, a `binding` can specify a `condition`, which is a logical
963 # expression that allows access to a resource only if the expression evaluates
964 # to `true`. A condition can add constraints based on attributes of the
965 # request, the resource, or both.
966 #
967 # **JSON example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700968 #
969 # {
970 # "bindings": [
971 # {
Dan O'Mearadd494642020-05-01 07:42:23 -0700972 # "role": "roles/resourcemanager.organizationAdmin",
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700973 # "members": [
974 # "user:mike@example.com",
975 # "group:admins@example.com",
976 # "domain:google.com",
Dan O'Mearadd494642020-05-01 07:42:23 -0700977 # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700978 # ]
979 # },
980 # {
Dan O'Mearadd494642020-05-01 07:42:23 -0700981 # "role": "roles/resourcemanager.organizationViewer",
982 # "members": ["user:eve@example.com"],
983 # "condition": {
984 # "title": "expirable access",
985 # "description": "Does not grant access after Sep 2020",
986 # "expression": "request.time &lt; timestamp('2020-10-01T00:00:00.000Z')",
987 # }
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700988 # }
Dan O'Mearadd494642020-05-01 07:42:23 -0700989 # ],
990 # "etag": "BwWWja0YfJA=",
991 # "version": 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700992 # }
993 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700994 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700995 #
996 # bindings:
997 # - members:
998 # - user:mike@example.com
999 # - group:admins@example.com
1000 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -07001001 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1002 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001003 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -07001004 # - user:eve@example.com
1005 # role: roles/resourcemanager.organizationViewer
1006 # condition:
1007 # title: expirable access
1008 # description: Does not grant access after Sep 2020
1009 # expression: request.time &lt; timestamp('2020-10-01T00:00:00.000Z')
1010 # - etag: BwWWja0YfJA=
1011 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001012 #
1013 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -07001014 # [IAM documentation](https://cloud.google.com/iam/docs/).
1015 "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a
1016 # `condition` that determines how and when the `bindings` are applied. Each
1017 # of the `bindings` must contain at least one member.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001018 { # Associates `members` with a `role`.
1019 "role": "A String", # Role that is assigned to `members`.
1020 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
1021 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
1022 # `members` can have the following values:
1023 #
1024 # * `allUsers`: A special identifier that represents anyone who is
1025 # on the internet; with or without a Google account.
1026 #
1027 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1028 # who is authenticated with a Google account or a service account.
1029 #
1030 # * `user:{emailid}`: An email address that represents a specific Google
Dan O'Mearadd494642020-05-01 07:42:23 -07001031 # account. For example, `alice@example.com` .
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001032 #
1033 #
1034 # * `serviceAccount:{emailid}`: An email address that represents a service
1035 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1036 #
1037 # * `group:{emailid}`: An email address that represents a Google group.
1038 # For example, `admins@example.com`.
1039 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001040 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
1041 # identifier) representing a user that has been recently deleted. For
1042 # example, `alice@example.com?uid=123456789012345678901`. If the user is
1043 # recovered, this value reverts to `user:{emailid}` and the recovered user
1044 # retains the role in the binding.
1045 #
1046 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
1047 # unique identifier) representing a service account that has been recently
1048 # deleted. For example,
1049 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
1050 # If the service account is undeleted, this value reverts to
1051 # `serviceAccount:{emailid}` and the undeleted service account retains the
1052 # role in the binding.
1053 #
1054 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
1055 # identifier) representing a Google group that has been recently
1056 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
1057 # the group is recovered, this value reverts to `group:{emailid}` and the
1058 # recovered group retains the role in the binding.
1059 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001060 #
1061 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
1062 # users of that domain. For example, `google.com` or `example.com`.
1063 #
1064 "A String",
1065 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07001066 "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001067 # NOTE: An unsatisfied condition will not allow user access via current
1068 # binding. Different bindings, including their conditions, are examined
1069 # independently.
Dan O'Mearadd494642020-05-01 07:42:23 -07001070 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
1071 # are documented at https://github.com/google/cel-spec.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001072 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001073 # Example (Comparison):
1074 #
1075 # title: "Summary size limit"
1076 # description: "Determines if a summary is less than 100 chars"
1077 # expression: "document.summary.size() &lt; 100"
1078 #
1079 # Example (Equality):
1080 #
1081 # title: "Requestor is owner"
1082 # description: "Determines if requestor is the document owner"
1083 # expression: "document.owner == request.auth.claims.email"
1084 #
1085 # Example (Logic):
1086 #
1087 # title: "Public documents"
1088 # description: "Determine whether the document should be publicly visible"
1089 # expression: "document.type != 'private' &amp;&amp; document.type != 'internal'"
1090 #
1091 # Example (Data Manipulation):
1092 #
1093 # title: "Notification string"
1094 # description: "Create a notification string with a timestamp."
1095 # expression: "'New message received at ' + string(document.create_time)"
1096 #
1097 # The exact variables and functions that may be referenced within an expression
1098 # are determined by the service that evaluates it. See the service
1099 # documentation for additional information.
1100 "location": "A String", # Optional. String indicating the location of the expression for error
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001101 # reporting, e.g. a file name and a position in the file.
Dan O'Mearadd494642020-05-01 07:42:23 -07001102 "expression": "A String", # Textual representation of an expression in Common Expression Language
1103 # syntax.
1104 "description": "A String", # Optional. Description of the expression. This is a longer text which
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001105 # describes the expression, e.g. when hovered over it in a UI.
Dan O'Mearadd494642020-05-01 07:42:23 -07001106 "title": "A String", # Optional. Title for the expression, i.e. a short string describing
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001107 # its purpose. This can be used e.g. in UIs which allow to enter the
1108 # expression.
1109 },
1110 },
1111 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001112 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
1113 # prevent simultaneous updates of a policy from overwriting each other.
1114 # It is strongly suggested that systems make use of the `etag` in the
1115 # read-modify-write cycle to perform policy updates in order to avoid race
1116 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1117 # systems are expected to put that etag in the request to `setIamPolicy` to
1118 # ensure that their change will be applied to the same version of the policy.
1119 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001120 # **Important:** If you use IAM Conditions, you must include the `etag` field
1121 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1122 # you to overwrite a version `3` policy with a version `1` policy, and all of
1123 # the conditions in the version `3` policy are lost.
1124 "version": 42, # Specifies the format of the policy.
1125 #
1126 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1127 # are rejected.
1128 #
1129 # Any operation that affects conditional role bindings must specify version
1130 # `3`. This requirement applies to the following operations:
1131 #
1132 # * Getting a policy that includes a conditional role binding
1133 # * Adding a conditional role binding to a policy
1134 # * Changing a conditional role binding in a policy
1135 # * Removing any role binding, with or without a condition, from a policy
1136 # that includes conditions
1137 #
1138 # **Important:** If you use IAM Conditions, you must include the `etag` field
1139 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1140 # you to overwrite a version `3` policy with a version `1` policy, and all of
1141 # the conditions in the version `3` policy are lost.
1142 #
1143 # If a policy does not include any conditions, operations on that policy may
1144 # specify any valid version or leave the field unset.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001145 },
1146 }
1147
1148 x__xgafv: string, V1 error format.
1149 Allowed values
1150 1 - v1 error format
1151 2 - v2 error format
1152
1153Returns:
1154 An object of the form:
1155
Dan O'Mearadd494642020-05-01 07:42:23 -07001156 { # An Identity and Access Management (IAM) policy, which specifies access
1157 # controls for Google Cloud resources.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001158 #
1159 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001160 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1161 # `members` to a single `role`. Members can be user accounts, service accounts,
1162 # Google groups, and domains (such as G Suite). A `role` is a named list of
1163 # permissions; each `role` can be an IAM predefined role or a user-created
1164 # custom role.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001165 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001166 # Optionally, a `binding` can specify a `condition`, which is a logical
1167 # expression that allows access to a resource only if the expression evaluates
1168 # to `true`. A condition can add constraints based on attributes of the
1169 # request, the resource, or both.
1170 #
1171 # **JSON example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001172 #
1173 # {
1174 # "bindings": [
1175 # {
Dan O'Mearadd494642020-05-01 07:42:23 -07001176 # "role": "roles/resourcemanager.organizationAdmin",
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001177 # "members": [
1178 # "user:mike@example.com",
1179 # "group:admins@example.com",
1180 # "domain:google.com",
Dan O'Mearadd494642020-05-01 07:42:23 -07001181 # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001182 # ]
1183 # },
1184 # {
Dan O'Mearadd494642020-05-01 07:42:23 -07001185 # "role": "roles/resourcemanager.organizationViewer",
1186 # "members": ["user:eve@example.com"],
1187 # "condition": {
1188 # "title": "expirable access",
1189 # "description": "Does not grant access after Sep 2020",
1190 # "expression": "request.time &lt; timestamp('2020-10-01T00:00:00.000Z')",
1191 # }
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001192 # }
Dan O'Mearadd494642020-05-01 07:42:23 -07001193 # ],
1194 # "etag": "BwWWja0YfJA=",
1195 # "version": 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001196 # }
1197 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001198 # **YAML example:**
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001199 #
1200 # bindings:
1201 # - members:
1202 # - user:mike@example.com
1203 # - group:admins@example.com
1204 # - domain:google.com
Dan O'Mearadd494642020-05-01 07:42:23 -07001205 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1206 # role: roles/resourcemanager.organizationAdmin
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001207 # - members:
Dan O'Mearadd494642020-05-01 07:42:23 -07001208 # - user:eve@example.com
1209 # role: roles/resourcemanager.organizationViewer
1210 # condition:
1211 # title: expirable access
1212 # description: Does not grant access after Sep 2020
1213 # expression: request.time &lt; timestamp('2020-10-01T00:00:00.000Z')
1214 # - etag: BwWWja0YfJA=
1215 # - version: 3
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001216 #
1217 # For a description of IAM and its features, see the
Dan O'Mearadd494642020-05-01 07:42:23 -07001218 # [IAM documentation](https://cloud.google.com/iam/docs/).
1219 "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a
1220 # `condition` that determines how and when the `bindings` are applied. Each
1221 # of the `bindings` must contain at least one member.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001222 { # Associates `members` with a `role`.
1223 "role": "A String", # Role that is assigned to `members`.
1224 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
1225 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
1226 # `members` can have the following values:
1227 #
1228 # * `allUsers`: A special identifier that represents anyone who is
1229 # on the internet; with or without a Google account.
1230 #
1231 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1232 # who is authenticated with a Google account or a service account.
1233 #
1234 # * `user:{emailid}`: An email address that represents a specific Google
Dan O'Mearadd494642020-05-01 07:42:23 -07001235 # account. For example, `alice@example.com` .
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001236 #
1237 #
1238 # * `serviceAccount:{emailid}`: An email address that represents a service
1239 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1240 #
1241 # * `group:{emailid}`: An email address that represents a Google group.
1242 # For example, `admins@example.com`.
1243 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001244 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
1245 # identifier) representing a user that has been recently deleted. For
1246 # example, `alice@example.com?uid=123456789012345678901`. If the user is
1247 # recovered, this value reverts to `user:{emailid}` and the recovered user
1248 # retains the role in the binding.
1249 #
1250 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
1251 # unique identifier) representing a service account that has been recently
1252 # deleted. For example,
1253 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
1254 # If the service account is undeleted, this value reverts to
1255 # `serviceAccount:{emailid}` and the undeleted service account retains the
1256 # role in the binding.
1257 #
1258 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
1259 # identifier) representing a Google group that has been recently
1260 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
1261 # the group is recovered, this value reverts to `group:{emailid}` and the
1262 # recovered group retains the role in the binding.
1263 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001264 #
1265 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
1266 # users of that domain. For example, `google.com` or `example.com`.
1267 #
1268 "A String",
1269 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07001270 "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001271 # NOTE: An unsatisfied condition will not allow user access via current
1272 # binding. Different bindings, including their conditions, are examined
1273 # independently.
Dan O'Mearadd494642020-05-01 07:42:23 -07001274 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
1275 # are documented at https://github.com/google/cel-spec.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001276 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001277 # Example (Comparison):
1278 #
1279 # title: "Summary size limit"
1280 # description: "Determines if a summary is less than 100 chars"
1281 # expression: "document.summary.size() &lt; 100"
1282 #
1283 # Example (Equality):
1284 #
1285 # title: "Requestor is owner"
1286 # description: "Determines if requestor is the document owner"
1287 # expression: "document.owner == request.auth.claims.email"
1288 #
1289 # Example (Logic):
1290 #
1291 # title: "Public documents"
1292 # description: "Determine whether the document should be publicly visible"
1293 # expression: "document.type != 'private' &amp;&amp; document.type != 'internal'"
1294 #
1295 # Example (Data Manipulation):
1296 #
1297 # title: "Notification string"
1298 # description: "Create a notification string with a timestamp."
1299 # expression: "'New message received at ' + string(document.create_time)"
1300 #
1301 # The exact variables and functions that may be referenced within an expression
1302 # are determined by the service that evaluates it. See the service
1303 # documentation for additional information.
1304 "location": "A String", # Optional. String indicating the location of the expression for error
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001305 # reporting, e.g. a file name and a position in the file.
Dan O'Mearadd494642020-05-01 07:42:23 -07001306 "expression": "A String", # Textual representation of an expression in Common Expression Language
1307 # syntax.
1308 "description": "A String", # Optional. Description of the expression. This is a longer text which
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001309 # describes the expression, e.g. when hovered over it in a UI.
Dan O'Mearadd494642020-05-01 07:42:23 -07001310 "title": "A String", # Optional. Title for the expression, i.e. a short string describing
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001311 # its purpose. This can be used e.g. in UIs which allow to enter the
1312 # expression.
1313 },
1314 },
1315 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001316 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
1317 # prevent simultaneous updates of a policy from overwriting each other.
1318 # It is strongly suggested that systems make use of the `etag` in the
1319 # read-modify-write cycle to perform policy updates in order to avoid race
1320 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1321 # systems are expected to put that etag in the request to `setIamPolicy` to
1322 # ensure that their change will be applied to the same version of the policy.
1323 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001324 # **Important:** If you use IAM Conditions, you must include the `etag` field
1325 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1326 # you to overwrite a version `3` policy with a version `1` policy, and all of
1327 # the conditions in the version `3` policy are lost.
1328 "version": 42, # Specifies the format of the policy.
1329 #
1330 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1331 # are rejected.
1332 #
1333 # Any operation that affects conditional role bindings must specify version
1334 # `3`. This requirement applies to the following operations:
1335 #
1336 # * Getting a policy that includes a conditional role binding
1337 # * Adding a conditional role binding to a policy
1338 # * Changing a conditional role binding in a policy
1339 # * Removing any role binding, with or without a condition, from a policy
1340 # that includes conditions
1341 #
1342 # **Important:** If you use IAM Conditions, you must include the `etag` field
1343 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1344 # you to overwrite a version `3` policy with a version `1` policy, and all of
1345 # the conditions in the version `3` policy are lost.
1346 #
1347 # If a policy does not include any conditions, operations on that policy may
1348 # specify any valid version or leave the field unset.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001349 }</pre>
1350</div>
1351
1352<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07001353 <code class="details" id="testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001354 <pre>Returns permissions that a caller has on the specified resource.
1355If the resource does not exist, this will return an empty set of
1356permissions, not a NOT_FOUND error.
1357
1358Args:
1359 resource: string, REQUIRED: The resource for which the policy detail is being requested.
1360See the operation documentation for the appropriate value for this field. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07001361 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001362 The object takes the form of:
1363
1364{ # Request message for `TestIamPermissions` method.
1365 "permissions": [ # The set of permissions to check for the `resource`. Permissions with
1366 # wildcards (such as '*' or 'storage.*') are not allowed. For more
1367 # information see
1368 # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
1369 "A String",
1370 ],
1371 }
1372
1373 x__xgafv: string, V1 error format.
1374 Allowed values
1375 1 - v1 error format
1376 2 - v2 error format
1377
1378Returns:
1379 An object of the form:
1380
1381 { # Response message for `TestIamPermissions` method.
1382 "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is
1383 # allowed.
1384 "A String",
1385 ],
1386 }</pre>
1387</div>
1388
1389<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07001390 <code class="details" id="unbindDeviceFromGateway">unbindDeviceFromGateway(parent, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001391 <pre>Deletes the association between the device and the gateway.
1392
1393Args:
Dan O'Mearadd494642020-05-01 07:42:23 -07001394 parent: string, Required. The name of the registry. For example,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001395`projects/example-project/locations/us-central1/registries/my-registry`. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07001396 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001397 The object takes the form of:
1398
1399{ # Request for `UnbindDeviceFromGateway`.
Dan O'Mearadd494642020-05-01 07:42:23 -07001400 "gatewayId": "A String", # Required. The value of `gateway_id` can be either the device numeric ID or the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001401 # user-defined device identifier.
Dan O'Mearadd494642020-05-01 07:42:23 -07001402 "deviceId": "A String", # Required. The device to disassociate from the specified gateway. The value of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001403 # `device_id` can be either the device numeric ID or the user-defined device
1404 # identifier.
1405 }
1406
1407 x__xgafv: string, V1 error format.
1408 Allowed values
1409 1 - v1 error format
1410 2 - v2 error format
1411
1412Returns:
1413 An object of the form:
1414
1415 { # Response for `UnbindDeviceFromGateway`.
1416 }</pre>
1417</div>
1418
1419</body></html>