1<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"> 88 <code><a href="#bindDeviceToGateway">bindDeviceToGateway(parent, body, x__xgafv=None)</a></code></p> 89<p class="firstline">Associates the device with the gateway.</p> 90<p class="toc_element"> 91 <code><a href="#create">create(parent, body, x__xgafv=None)</a></code></p> 92<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"> 103 <code><a href="#list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p> 104<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"> 109 <code><a href="#patch">patch(name, body, updateMask=None, x__xgafv=None)</a></code></p> 110<p class="firstline">Updates a device registry configuration.</p> 111<p class="toc_element"> 112 <code><a href="#setIamPolicy">setIamPolicy(resource, body, x__xgafv=None)</a></code></p> 113<p class="firstline">Sets the access control policy on the specified resource. Replaces any</p> 114<p class="toc_element"> 115 <code><a href="#testIamPermissions">testIamPermissions(resource, body, x__xgafv=None)</a></code></p> 116<p class="firstline">Returns permissions that a caller has on the specified resource.</p> 117<p class="toc_element"> 118 <code><a href="#unbindDeviceFromGateway">unbindDeviceFromGateway(parent, body, x__xgafv=None)</a></code></p> 119<p class="firstline">Deletes the association between the device and the gateway.</p> 120<h3>Method Details</h3> 121<div class="method"> 122 <code class="details" id="bindDeviceToGateway">bindDeviceToGateway(parent, body, x__xgafv=None)</code> 123 <pre>Associates the device with the gateway. 124 125Args: 126 parent: string, The name of the registry. For example, 127`projects/example-project/locations/us-central1/registries/my-registry`. (required) 128 body: object, The request body. (required) 129 The object takes the form of: 130 131{ # Request for `BindDeviceToGateway`. 132 "gatewayId": "A String", # The value of `gateway_id` can be either the device numeric ID or the 133 # user-defined device identifier. 134 "deviceId": "A String", # The device to associate with the specified gateway. The value of 135 # `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"> 152 <code class="details" id="create">create(parent, body, x__xgafv=None)</code> 153 <pre>Creates a device registry that contains devices. 154 155Args: 156 parent: string, The project and cloud region where this device registry must be created. 157For example, `projects/example-project/locations/us-central1`. (required) 158 body: object, The request body. (required) 159 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: 317 name: string, The name of the device registry. For example, 318`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: 344 name: string, The name of the device registry. For example, 345`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. 439 } 440 441 x__xgafv: string, V1 error format. 442 Allowed values 443 1 - v1 error format 444 2 - v2 error format 445 446Returns: 447 An object of the form: 448 449 { # Defines an Identity and Access Management (IAM) policy. It is used to 450 # specify access control policies for Cloud Platform resources. 451 # 452 # 453 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of 454 # `members` to a `role`, where the members can be user accounts, Google groups, 455 # Google domains, and service accounts. A `role` is a named list of permissions 456 # defined by IAM. 457 # 458 # **JSON Example** 459 # 460 # { 461 # "bindings": [ 462 # { 463 # "role": "roles/owner", 464 # "members": [ 465 # "user:mike@example.com", 466 # "group:admins@example.com", 467 # "domain:google.com", 468 # "serviceAccount:my-other-app@appspot.gserviceaccount.com" 469 # ] 470 # }, 471 # { 472 # "role": "roles/viewer", 473 # "members": ["user:sean@example.com"] 474 # } 475 # ] 476 # } 477 # 478 # **YAML Example** 479 # 480 # bindings: 481 # - members: 482 # - user:mike@example.com 483 # - group:admins@example.com 484 # - domain:google.com 485 # - serviceAccount:my-other-app@appspot.gserviceaccount.com 486 # role: roles/owner 487 # - members: 488 # - user:sean@example.com 489 # role: roles/viewer 490 # 491 # 492 # For a description of IAM and its features, see the 493 # [IAM developer's guide](https://cloud.google.com/iam/docs). 494 "bindings": [ # Associates a list of `members` to a `role`. 495 # `bindings` with no members will result in an error. 496 { # Associates `members` with a `role`. 497 "role": "A String", # Role that is assigned to `members`. 498 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. 499 "members": [ # Specifies the identities requesting access for a Cloud Platform resource. 500 # `members` can have the following values: 501 # 502 # * `allUsers`: A special identifier that represents anyone who is 503 # on the internet; with or without a Google account. 504 # 505 # * `allAuthenticatedUsers`: A special identifier that represents anyone 506 # who is authenticated with a Google account or a service account. 507 # 508 # * `user:{emailid}`: An email address that represents a specific Google 509 # account. For example, `alice@gmail.com` . 510 # 511 # 512 # * `serviceAccount:{emailid}`: An email address that represents a service 513 # account. For example, `my-other-app@appspot.gserviceaccount.com`. 514 # 515 # * `group:{emailid}`: An email address that represents a Google group. 516 # For example, `admins@example.com`. 517 # 518 # 519 # * `domain:{domain}`: The G Suite domain (primary) that represents all the 520 # users of that domain. For example, `google.com` or `example.com`. 521 # 522 "A String", 523 ], 524 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding. 525 # NOTE: An unsatisfied condition will not allow user access via current 526 # binding. Different bindings, including their conditions, are examined 527 # independently. 528 # 529 # title: "User account presence" 530 # description: "Determines whether the request has a user account" 531 # expression: "size(request.user) > 0" 532 "location": "A String", # An optional string indicating the location of the expression for error 533 # reporting, e.g. a file name and a position in the file. 534 "expression": "A String", # Textual representation of an expression in 535 # Common Expression Language syntax. 536 # 537 # The application context of the containing message determines which 538 # well-known feature set of CEL is supported. 539 "description": "A String", # An optional description of the expression. This is a longer text which 540 # describes the expression, e.g. when hovered over it in a UI. 541 "title": "A String", # An optional title for the expression, i.e. a short string describing 542 # its purpose. This can be used e.g. in UIs which allow to enter the 543 # expression. 544 }, 545 }, 546 ], 547 "version": 42, # Deprecated. 548 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help 549 # prevent simultaneous updates of a policy from overwriting each other. 550 # It is strongly suggested that systems make use of the `etag` in the 551 # read-modify-write cycle to perform policy updates in order to avoid race 552 # conditions: An `etag` is returned in the response to `getIamPolicy`, and 553 # systems are expected to put that etag in the request to `setIamPolicy` to 554 # ensure that their change will be applied to the same version of the policy. 555 # 556 # If no `etag` is provided in the call to `setIamPolicy`, then the existing 557 # policy is overwritten blindly. 558 }</pre> 559</div> 560 561<div class="method"> 562 <code class="details" id="list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</code> 563 <pre>Lists device registries. 564 565Args: 566 parent: string, The project and cloud region path. For example, 567`projects/example-project/locations/us-central1`. (required) 568 pageSize: integer, The maximum number of registries to return in the response. If this value 569is zero, the service will select a default size. A call may return fewer 570objects than requested. A non-empty `next_page_token` in the response 571indicates that more data is available. 572 pageToken: string, The value returned by the last `ListDeviceRegistriesResponse`; indicates 573that this is a continuation of a prior `ListDeviceRegistries` call and 574the system should return the next page of data. 575 x__xgafv: string, V1 error format. 576 Allowed values 577 1 - v1 error format 578 2 - v2 error format 579 580Returns: 581 An object of the form: 582 583 { # Response for `ListDeviceRegistries`. 584 "nextPageToken": "A String", # If not empty, indicates that there may be more registries that match the 585 # request; this value should be passed in a new 586 # `ListDeviceRegistriesRequest`. 587 "deviceRegistries": [ # The registries that matched the query. 588 { # A container for a group of devices. 589 "name": "A String", # The resource path name. For example, 590 # `projects/example-project/locations/us-central1/registries/my-registry`. 591 "stateNotificationConfig": { # The configuration for notification of new states received from the device. # The configuration for notification of new states received from the device. 592 # State updates are guaranteed to be stored in the state history, but 593 # notifications to Cloud Pub/Sub are not guaranteed. For example, if 594 # permissions are misconfigured or the specified topic doesn't exist, no 595 # notification will be published but the state will still be stored in Cloud 596 # IoT Core. 597 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example, 598 # `projects/myProject/topics/deviceEvents`. 599 }, 600 "logLevel": "A String", # **Beta Feature** 601 # 602 # The default logging verbosity for activity from devices in this registry. 603 # The verbosity level can be overridden by Device.log_level. 604 "eventNotificationConfigs": [ # The configuration for notification of telemetry events received from the 605 # device. All telemetry events that were successfully published by the 606 # device and acknowledged by Cloud IoT Core are guaranteed to be 607 # delivered to Cloud Pub/Sub. If multiple configurations match a message, 608 # only the first matching configuration is used. If you try to publish a 609 # device telemetry event using MQTT without specifying a Cloud Pub/Sub topic 610 # for the device's registry, the connection closes automatically. If you try 611 # to do so using an HTTP connection, an error is returned. Up to 10 612 # configurations may be provided. 613 { # The configuration for forwarding telemetry events. 614 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example, 615 # `projects/myProject/topics/deviceEvents`. 616 "subfolderMatches": "A String", # If the subfolder name matches this string exactly, this configuration will 617 # be used. The string must not include the leading '/' character. If empty, 618 # all strings are matched. This field is used only for telemetry events; 619 # subfolders are not supported for state changes. 620 }, 621 ], 622 "httpConfig": { # The configuration of the HTTP bridge for a device registry. # The DeviceService (HTTP) configuration for this device registry. 623 "httpEnabledState": "A String", # If enabled, allows devices to use DeviceService via the HTTP protocol. 624 # Otherwise, any requests to DeviceService will fail for this registry. 625 }, 626 "mqttConfig": { # The configuration of MQTT for a device registry. # The MQTT configuration for this device registry. 627 "mqttEnabledState": "A String", # If enabled, allows connections using the MQTT protocol. Otherwise, MQTT 628 # connections to this registry will fail. 629 }, 630 "credentials": [ # The credentials used to verify the device credentials. No more than 10 631 # credentials can be bound to a single registry at a time. The verification 632 # process occurs at the time of device creation or update. If this field is 633 # empty, no verification is performed. Otherwise, the credentials of a newly 634 # created device or added credentials of an updated device should be signed 635 # with one of these registry credentials. 636 # 637 # Note, however, that existing devices will never be affected by 638 # modifications to this list of credentials: after a device has been 639 # successfully created in a registry, it should be able to connect even if 640 # its registry credentials are revoked, deleted, or modified. 641 { # A server-stored registry credential used to validate device credentials. 642 "publicKeyCertificate": { # A public key certificate format and data. # A public key certificate used to verify the device credentials. 643 "x509Details": { # Details of an X.509 certificate. For informational purposes only. # [Output only] The certificate details. Used only for X.509 certificates. 644 "signatureAlgorithm": "A String", # The algorithm used to sign the certificate. 645 "expiryTime": "A String", # The time the certificate becomes invalid. 646 "publicKeyType": "A String", # The type of public key in the certificate. 647 "startTime": "A String", # The time the certificate becomes valid. 648 "subject": "A String", # The entity the certificate and public key belong to. 649 "issuer": "A String", # The entity that signed the certificate. 650 }, 651 "certificate": "A String", # The certificate data. 652 "format": "A String", # The certificate format. 653 }, 654 }, 655 ], 656 "id": "A String", # The identifier of this device registry. For example, `myRegistry`. 657 }, 658 ], 659 }</pre> 660</div> 661 662<div class="method"> 663 <code class="details" id="list_next">list_next(previous_request, previous_response)</code> 664 <pre>Retrieves the next page of results. 665 666Args: 667 previous_request: The request for the previous page. (required) 668 previous_response: The response from the request for the previous page. (required) 669 670Returns: 671 A request object that you can call 'execute()' on to request the next 672 page. Returns None if there are no more items in the collection. 673 </pre> 674</div> 675 676<div class="method"> 677 <code class="details" id="patch">patch(name, body, updateMask=None, x__xgafv=None)</code> 678 <pre>Updates a device registry configuration. 679 680Args: 681 name: string, The resource path name. For example, 682`projects/example-project/locations/us-central1/registries/my-registry`. (required) 683 body: object, The request body. (required) 684 The object takes the form of: 685 686{ # A container for a group of devices. 687 "name": "A String", # The resource path name. For example, 688 # `projects/example-project/locations/us-central1/registries/my-registry`. 689 "stateNotificationConfig": { # The configuration for notification of new states received from the device. # The configuration for notification of new states received from the device. 690 # State updates are guaranteed to be stored in the state history, but 691 # notifications to Cloud Pub/Sub are not guaranteed. For example, if 692 # permissions are misconfigured or the specified topic doesn't exist, no 693 # notification will be published but the state will still be stored in Cloud 694 # IoT Core. 695 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example, 696 # `projects/myProject/topics/deviceEvents`. 697 }, 698 "logLevel": "A String", # **Beta Feature** 699 # 700 # The default logging verbosity for activity from devices in this registry. 701 # The verbosity level can be overridden by Device.log_level. 702 "eventNotificationConfigs": [ # The configuration for notification of telemetry events received from the 703 # device. All telemetry events that were successfully published by the 704 # device and acknowledged by Cloud IoT Core are guaranteed to be 705 # delivered to Cloud Pub/Sub. If multiple configurations match a message, 706 # only the first matching configuration is used. If you try to publish a 707 # device telemetry event using MQTT without specifying a Cloud Pub/Sub topic 708 # for the device's registry, the connection closes automatically. If you try 709 # to do so using an HTTP connection, an error is returned. Up to 10 710 # configurations may be provided. 711 { # The configuration for forwarding telemetry events. 712 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example, 713 # `projects/myProject/topics/deviceEvents`. 714 "subfolderMatches": "A String", # If the subfolder name matches this string exactly, this configuration will 715 # be used. The string must not include the leading '/' character. If empty, 716 # all strings are matched. This field is used only for telemetry events; 717 # subfolders are not supported for state changes. 718 }, 719 ], 720 "httpConfig": { # The configuration of the HTTP bridge for a device registry. # The DeviceService (HTTP) configuration for this device registry. 721 "httpEnabledState": "A String", # If enabled, allows devices to use DeviceService via the HTTP protocol. 722 # Otherwise, any requests to DeviceService will fail for this registry. 723 }, 724 "mqttConfig": { # The configuration of MQTT for a device registry. # The MQTT configuration for this device registry. 725 "mqttEnabledState": "A String", # If enabled, allows connections using the MQTT protocol. Otherwise, MQTT 726 # connections to this registry will fail. 727 }, 728 "credentials": [ # The credentials used to verify the device credentials. No more than 10 729 # credentials can be bound to a single registry at a time. The verification 730 # process occurs at the time of device creation or update. If this field is 731 # empty, no verification is performed. Otherwise, the credentials of a newly 732 # created device or added credentials of an updated device should be signed 733 # with one of these registry credentials. 734 # 735 # Note, however, that existing devices will never be affected by 736 # modifications to this list of credentials: after a device has been 737 # successfully created in a registry, it should be able to connect even if 738 # its registry credentials are revoked, deleted, or modified. 739 { # A server-stored registry credential used to validate device credentials. 740 "publicKeyCertificate": { # A public key certificate format and data. # A public key certificate used to verify the device credentials. 741 "x509Details": { # Details of an X.509 certificate. For informational purposes only. # [Output only] The certificate details. Used only for X.509 certificates. 742 "signatureAlgorithm": "A String", # The algorithm used to sign the certificate. 743 "expiryTime": "A String", # The time the certificate becomes invalid. 744 "publicKeyType": "A String", # The type of public key in the certificate. 745 "startTime": "A String", # The time the certificate becomes valid. 746 "subject": "A String", # The entity the certificate and public key belong to. 747 "issuer": "A String", # The entity that signed the certificate. 748 }, 749 "certificate": "A String", # The certificate data. 750 "format": "A String", # The certificate format. 751 }, 752 }, 753 ], 754 "id": "A String", # The identifier of this device registry. For example, `myRegistry`. 755} 756 757 updateMask: string, Only updates the `device_registry` fields indicated by this mask. 758The field mask must not be empty, and it must not contain fields that 759are immutable or only set by the server. 760Mutable top-level fields: `event_notification_config`, `http_config`, 761`mqtt_config`, and `state_notification_config`. 762 x__xgafv: string, V1 error format. 763 Allowed values 764 1 - v1 error format 765 2 - v2 error format 766 767Returns: 768 An object of the form: 769 770 { # A container for a group of devices. 771 "name": "A String", # The resource path name. For example, 772 # `projects/example-project/locations/us-central1/registries/my-registry`. 773 "stateNotificationConfig": { # The configuration for notification of new states received from the device. # The configuration for notification of new states received from the device. 774 # State updates are guaranteed to be stored in the state history, but 775 # notifications to Cloud Pub/Sub are not guaranteed. For example, if 776 # permissions are misconfigured or the specified topic doesn't exist, no 777 # notification will be published but the state will still be stored in Cloud 778 # IoT Core. 779 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example, 780 # `projects/myProject/topics/deviceEvents`. 781 }, 782 "logLevel": "A String", # **Beta Feature** 783 # 784 # The default logging verbosity for activity from devices in this registry. 785 # The verbosity level can be overridden by Device.log_level. 786 "eventNotificationConfigs": [ # The configuration for notification of telemetry events received from the 787 # device. All telemetry events that were successfully published by the 788 # device and acknowledged by Cloud IoT Core are guaranteed to be 789 # delivered to Cloud Pub/Sub. If multiple configurations match a message, 790 # only the first matching configuration is used. If you try to publish a 791 # device telemetry event using MQTT without specifying a Cloud Pub/Sub topic 792 # for the device's registry, the connection closes automatically. If you try 793 # to do so using an HTTP connection, an error is returned. Up to 10 794 # configurations may be provided. 795 { # The configuration for forwarding telemetry events. 796 "pubsubTopicName": "A String", # A Cloud Pub/Sub topic name. For example, 797 # `projects/myProject/topics/deviceEvents`. 798 "subfolderMatches": "A String", # If the subfolder name matches this string exactly, this configuration will 799 # be used. The string must not include the leading '/' character. If empty, 800 # all strings are matched. This field is used only for telemetry events; 801 # subfolders are not supported for state changes. 802 }, 803 ], 804 "httpConfig": { # The configuration of the HTTP bridge for a device registry. # The DeviceService (HTTP) configuration for this device registry. 805 "httpEnabledState": "A String", # If enabled, allows devices to use DeviceService via the HTTP protocol. 806 # Otherwise, any requests to DeviceService will fail for this registry. 807 }, 808 "mqttConfig": { # The configuration of MQTT for a device registry. # The MQTT configuration for this device registry. 809 "mqttEnabledState": "A String", # If enabled, allows connections using the MQTT protocol. Otherwise, MQTT 810 # connections to this registry will fail. 811 }, 812 "credentials": [ # The credentials used to verify the device credentials. No more than 10 813 # credentials can be bound to a single registry at a time. The verification 814 # process occurs at the time of device creation or update. If this field is 815 # empty, no verification is performed. Otherwise, the credentials of a newly 816 # created device or added credentials of an updated device should be signed 817 # with one of these registry credentials. 818 # 819 # Note, however, that existing devices will never be affected by 820 # modifications to this list of credentials: after a device has been 821 # successfully created in a registry, it should be able to connect even if 822 # its registry credentials are revoked, deleted, or modified. 823 { # A server-stored registry credential used to validate device credentials. 824 "publicKeyCertificate": { # A public key certificate format and data. # A public key certificate used to verify the device credentials. 825 "x509Details": { # Details of an X.509 certificate. For informational purposes only. # [Output only] The certificate details. Used only for X.509 certificates. 826 "signatureAlgorithm": "A String", # The algorithm used to sign the certificate. 827 "expiryTime": "A String", # The time the certificate becomes invalid. 828 "publicKeyType": "A String", # The type of public key in the certificate. 829 "startTime": "A String", # The time the certificate becomes valid. 830 "subject": "A String", # The entity the certificate and public key belong to. 831 "issuer": "A String", # The entity that signed the certificate. 832 }, 833 "certificate": "A String", # The certificate data. 834 "format": "A String", # The certificate format. 835 }, 836 }, 837 ], 838 "id": "A String", # The identifier of this device registry. For example, `myRegistry`. 839 }</pre> 840</div> 841 842<div class="method"> 843 <code class="details" id="setIamPolicy">setIamPolicy(resource, body, x__xgafv=None)</code> 844 <pre>Sets the access control policy on the specified resource. Replaces any 845existing policy. 846 847Args: 848 resource: string, REQUIRED: The resource for which the policy is being specified. 849See the operation documentation for the appropriate value for this field. (required) 850 body: object, The request body. (required) 851 The object takes the form of: 852 853{ # Request message for `SetIamPolicy` method. 854 "policy": { # Defines an Identity and Access Management (IAM) policy. It is used to # REQUIRED: The complete policy to be applied to the `resource`. The size of 855 # the policy is limited to a few 10s of KB. An empty policy is a 856 # valid policy but certain Cloud Platform services (such as Projects) 857 # might reject them. 858 # specify access control policies for Cloud Platform resources. 859 # 860 # 861 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of 862 # `members` to a `role`, where the members can be user accounts, Google groups, 863 # Google domains, and service accounts. A `role` is a named list of permissions 864 # defined by IAM. 865 # 866 # **JSON Example** 867 # 868 # { 869 # "bindings": [ 870 # { 871 # "role": "roles/owner", 872 # "members": [ 873 # "user:mike@example.com", 874 # "group:admins@example.com", 875 # "domain:google.com", 876 # "serviceAccount:my-other-app@appspot.gserviceaccount.com" 877 # ] 878 # }, 879 # { 880 # "role": "roles/viewer", 881 # "members": ["user:sean@example.com"] 882 # } 883 # ] 884 # } 885 # 886 # **YAML Example** 887 # 888 # bindings: 889 # - members: 890 # - user:mike@example.com 891 # - group:admins@example.com 892 # - domain:google.com 893 # - serviceAccount:my-other-app@appspot.gserviceaccount.com 894 # role: roles/owner 895 # - members: 896 # - user:sean@example.com 897 # role: roles/viewer 898 # 899 # 900 # For a description of IAM and its features, see the 901 # [IAM developer's guide](https://cloud.google.com/iam/docs). 902 "bindings": [ # Associates a list of `members` to a `role`. 903 # `bindings` with no members will result in an error. 904 { # Associates `members` with a `role`. 905 "role": "A String", # Role that is assigned to `members`. 906 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. 907 "members": [ # Specifies the identities requesting access for a Cloud Platform resource. 908 # `members` can have the following values: 909 # 910 # * `allUsers`: A special identifier that represents anyone who is 911 # on the internet; with or without a Google account. 912 # 913 # * `allAuthenticatedUsers`: A special identifier that represents anyone 914 # who is authenticated with a Google account or a service account. 915 # 916 # * `user:{emailid}`: An email address that represents a specific Google 917 # account. For example, `alice@gmail.com` . 918 # 919 # 920 # * `serviceAccount:{emailid}`: An email address that represents a service 921 # account. For example, `my-other-app@appspot.gserviceaccount.com`. 922 # 923 # * `group:{emailid}`: An email address that represents a Google group. 924 # For example, `admins@example.com`. 925 # 926 # 927 # * `domain:{domain}`: The G Suite domain (primary) that represents all the 928 # users of that domain. For example, `google.com` or `example.com`. 929 # 930 "A String", 931 ], 932 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding. 933 # NOTE: An unsatisfied condition will not allow user access via current 934 # binding. Different bindings, including their conditions, are examined 935 # independently. 936 # 937 # title: "User account presence" 938 # description: "Determines whether the request has a user account" 939 # expression: "size(request.user) > 0" 940 "location": "A String", # An optional string indicating the location of the expression for error 941 # reporting, e.g. a file name and a position in the file. 942 "expression": "A String", # Textual representation of an expression in 943 # Common Expression Language syntax. 944 # 945 # The application context of the containing message determines which 946 # well-known feature set of CEL is supported. 947 "description": "A String", # An optional description of the expression. This is a longer text which 948 # describes the expression, e.g. when hovered over it in a UI. 949 "title": "A String", # An optional title for the expression, i.e. a short string describing 950 # its purpose. This can be used e.g. in UIs which allow to enter the 951 # expression. 952 }, 953 }, 954 ], 955 "version": 42, # Deprecated. 956 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help 957 # prevent simultaneous updates of a policy from overwriting each other. 958 # It is strongly suggested that systems make use of the `etag` in the 959 # read-modify-write cycle to perform policy updates in order to avoid race 960 # conditions: An `etag` is returned in the response to `getIamPolicy`, and 961 # systems are expected to put that etag in the request to `setIamPolicy` to 962 # ensure that their change will be applied to the same version of the policy. 963 # 964 # If no `etag` is provided in the call to `setIamPolicy`, then the existing 965 # policy is overwritten blindly. 966 }, 967 } 968 969 x__xgafv: string, V1 error format. 970 Allowed values 971 1 - v1 error format 972 2 - v2 error format 973 974Returns: 975 An object of the form: 976 977 { # Defines an Identity and Access Management (IAM) policy. It is used to 978 # specify access control policies for Cloud Platform resources. 979 # 980 # 981 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of 982 # `members` to a `role`, where the members can be user accounts, Google groups, 983 # Google domains, and service accounts. A `role` is a named list of permissions 984 # defined by IAM. 985 # 986 # **JSON Example** 987 # 988 # { 989 # "bindings": [ 990 # { 991 # "role": "roles/owner", 992 # "members": [ 993 # "user:mike@example.com", 994 # "group:admins@example.com", 995 # "domain:google.com", 996 # "serviceAccount:my-other-app@appspot.gserviceaccount.com" 997 # ] 998 # }, 999 # { 1000 # "role": "roles/viewer", 1001 # "members": ["user:sean@example.com"] 1002 # } 1003 # ] 1004 # } 1005 # 1006 # **YAML Example** 1007 # 1008 # bindings: 1009 # - members: 1010 # - user:mike@example.com 1011 # - group:admins@example.com 1012 # - domain:google.com 1013 # - serviceAccount:my-other-app@appspot.gserviceaccount.com 1014 # role: roles/owner 1015 # - members: 1016 # - user:sean@example.com 1017 # role: roles/viewer 1018 # 1019 # 1020 # For a description of IAM and its features, see the 1021 # [IAM developer's guide](https://cloud.google.com/iam/docs). 1022 "bindings": [ # Associates a list of `members` to a `role`. 1023 # `bindings` with no members will result in an error. 1024 { # Associates `members` with a `role`. 1025 "role": "A String", # Role that is assigned to `members`. 1026 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. 1027 "members": [ # Specifies the identities requesting access for a Cloud Platform resource. 1028 # `members` can have the following values: 1029 # 1030 # * `allUsers`: A special identifier that represents anyone who is 1031 # on the internet; with or without a Google account. 1032 # 1033 # * `allAuthenticatedUsers`: A special identifier that represents anyone 1034 # who is authenticated with a Google account or a service account. 1035 # 1036 # * `user:{emailid}`: An email address that represents a specific Google 1037 # account. For example, `alice@gmail.com` . 1038 # 1039 # 1040 # * `serviceAccount:{emailid}`: An email address that represents a service 1041 # account. For example, `my-other-app@appspot.gserviceaccount.com`. 1042 # 1043 # * `group:{emailid}`: An email address that represents a Google group. 1044 # For example, `admins@example.com`. 1045 # 1046 # 1047 # * `domain:{domain}`: The G Suite domain (primary) that represents all the 1048 # users of that domain. For example, `google.com` or `example.com`. 1049 # 1050 "A String", 1051 ], 1052 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding. 1053 # NOTE: An unsatisfied condition will not allow user access via current 1054 # binding. Different bindings, including their conditions, are examined 1055 # independently. 1056 # 1057 # title: "User account presence" 1058 # description: "Determines whether the request has a user account" 1059 # expression: "size(request.user) > 0" 1060 "location": "A String", # An optional string indicating the location of the expression for error 1061 # reporting, e.g. a file name and a position in the file. 1062 "expression": "A String", # Textual representation of an expression in 1063 # Common Expression Language syntax. 1064 # 1065 # The application context of the containing message determines which 1066 # well-known feature set of CEL is supported. 1067 "description": "A String", # An optional description of the expression. This is a longer text which 1068 # describes the expression, e.g. when hovered over it in a UI. 1069 "title": "A String", # An optional title for the expression, i.e. a short string describing 1070 # its purpose. This can be used e.g. in UIs which allow to enter the 1071 # expression. 1072 }, 1073 }, 1074 ], 1075 "version": 42, # Deprecated. 1076 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help 1077 # prevent simultaneous updates of a policy from overwriting each other. 1078 # It is strongly suggested that systems make use of the `etag` in the 1079 # read-modify-write cycle to perform policy updates in order to avoid race 1080 # conditions: An `etag` is returned in the response to `getIamPolicy`, and 1081 # systems are expected to put that etag in the request to `setIamPolicy` to 1082 # ensure that their change will be applied to the same version of the policy. 1083 # 1084 # If no `etag` is provided in the call to `setIamPolicy`, then the existing 1085 # policy is overwritten blindly. 1086 }</pre> 1087</div> 1088 1089<div class="method"> 1090 <code class="details" id="testIamPermissions">testIamPermissions(resource, body, x__xgafv=None)</code> 1091 <pre>Returns permissions that a caller has on the specified resource. 1092If the resource does not exist, this will return an empty set of 1093permissions, not a NOT_FOUND error. 1094 1095Args: 1096 resource: string, REQUIRED: The resource for which the policy detail is being requested. 1097See the operation documentation for the appropriate value for this field. (required) 1098 body: object, The request body. (required) 1099 The object takes the form of: 1100 1101{ # Request message for `TestIamPermissions` method. 1102 "permissions": [ # The set of permissions to check for the `resource`. Permissions with 1103 # wildcards (such as '*' or 'storage.*') are not allowed. For more 1104 # information see 1105 # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). 1106 "A String", 1107 ], 1108 } 1109 1110 x__xgafv: string, V1 error format. 1111 Allowed values 1112 1 - v1 error format 1113 2 - v2 error format 1114 1115Returns: 1116 An object of the form: 1117 1118 { # Response message for `TestIamPermissions` method. 1119 "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is 1120 # allowed. 1121 "A String", 1122 ], 1123 }</pre> 1124</div> 1125 1126<div class="method"> 1127 <code class="details" id="unbindDeviceFromGateway">unbindDeviceFromGateway(parent, body, x__xgafv=None)</code> 1128 <pre>Deletes the association between the device and the gateway. 1129 1130Args: 1131 parent: string, The name of the registry. For example, 1132`projects/example-project/locations/us-central1/registries/my-registry`. (required) 1133 body: object, The request body. (required) 1134 The object takes the form of: 1135 1136{ # Request for `UnbindDeviceFromGateway`. 1137 "gatewayId": "A String", # The value of `gateway_id` can be either the device numeric ID or the 1138 # user-defined device identifier. 1139 "deviceId": "A String", # The device to disassociate from the specified gateway. The value of 1140 # `device_id` can be either the device numeric ID or the user-defined device 1141 # identifier. 1142 } 1143 1144 x__xgafv: string, V1 error format. 1145 Allowed values 1146 1 - v1 error format 1147 2 - v2 error format 1148 1149Returns: 1150 An object of the form: 1151 1152 { # Response for `UnbindDeviceFromGateway`. 1153 }</pre> 1154</div> 1155 1156</body></html>