Class DeviceManagerAsyncClient (2.9.2)
 
 
 
 
 
 
 Stay organized with collections
 
 
 
 Save and categorize content based on your preferences.
 
  
 
 DeviceManagerAsyncClient(*, credentials: typing.Optional[google.auth.credentials.Credentials] = None, transport: typing.Union[str, google.cloud.iot_v1.services.device_manager.transports.base.DeviceManagerTransport] = 'grpc_asyncio', client_options: typing.Optional[google.api_core.client_options.ClientOptions] = None, client_info: google.api_core.gapic_v1.client_info.ClientInfo = <google.api_core.gapic_v1.client_info.ClientInfo object>)Internet of Things (IoT) service. Securely connect and manage IoT devices.
Properties
transport
Returns the transport used by the client instance.
| Returns | |
|---|---|
| Type | Description | 
| DeviceManagerTransport | The transport used by the client instance. | 
Methods
DeviceManagerAsyncClient
DeviceManagerAsyncClient(*, credentials: typing.Optional[google.auth.credentials.Credentials] = None, transport: typing.Union[str, google.cloud.iot_v1.services.device_manager.transports.base.DeviceManagerTransport] = 'grpc_asyncio', client_options: typing.Optional[google.api_core.client_options.ClientOptions] = None, client_info: google.api_core.gapic_v1.client_info.ClientInfo = <google.api_core.gapic_v1.client_info.ClientInfo object>)Instantiates the device manager client.
| Parameters | |
|---|---|
| Name | Description | 
| credentials | Optional[google.auth.credentials.Credentials]The authorization credentials to attach to requests. These credentials identify the application to the service; if none are specified, the client will attempt to ascertain the credentials from the environment. | 
| transport | Union[str, The transport to use. If set to None, a transport is chosen automatically. | 
| client_options | ClientOptionsCustom options for the client. It won't take effect if a  | 
| Exceptions | |
|---|---|
| Type | Description | 
| google.auth.exceptions.MutualTlsChannelError | If mutual TLS transport creation failed for any reason. | 
bind_device_to_gateway
bind_device_to_gateway(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.BindDeviceToGatewayRequest, dict
 ]
 ] = None,
 *,
 parent: typing.Optional[str] = None,
 gateway_id: typing.Optional[str] = None,
 device_id: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.device_manager.BindDeviceToGatewayResponseAssociates the device with the gateway.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_bind_device_to_gateway():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.BindDeviceToGatewayRequest(
 parent="parent_value",
 gateway_id="gateway_id_value",
 device_id="device_id_value",
 )
 # Make the request
 response = await client.bind_device_to_gateway(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.BindDeviceToGatewayRequest, dict]]The request object. Request for  | 
| parent | Required. The name of the registry. For example,  | 
| gateway_id | Required. The value of  | 
| device_id | Required. The device to associate with the specified gateway. The value of  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.BindDeviceToGatewayResponse  | Response for BindDeviceToGateway. | 
common_billing_account_path
common_billing_account_path(billing_account: str) -> strReturns a fully-qualified billing_account string.
common_folder_path
common_folder_path(folder: str) -> strReturns a fully-qualified folder string.
common_location_path
common_location_path(project: str, location: str) -> strReturns a fully-qualified location string.
common_organization_path
common_organization_path(organization: str) -> strReturns a fully-qualified organization string.
common_project_path
common_project_path(project: str) -> strReturns a fully-qualified project string.
create_device
create_device(
 request: typing.Optional[
 typing.Union[google.cloud.iot_v1.types.device_manager.CreateDeviceRequest, dict]
 ] = None,
 *,
 parent: typing.Optional[str] = None,
 device: typing.Optional[google.cloud.iot_v1.types.resources.Device] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.resources.DeviceCreates a device in a device registry.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_create_device():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.CreateDeviceRequest(
 parent="parent_value",
 )
 # Make the request
 response = await client.create_device(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.CreateDeviceRequest, dict]]The request object. Request for  | 
| parent | Required. The name of the device registry where this device should be created. For example,  | 
| device | Device Required. The device registration details. The field  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.Device  | The device resource. | 
create_device_registry
create_device_registry(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.CreateDeviceRegistryRequest, dict
 ]
 ] = None,
 *,
 parent: typing.Optional[str] = None,
 device_registry: typing.Optional[
 google.cloud.iot_v1.types.resources.DeviceRegistry
 ] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.resources.DeviceRegistryCreates a device registry that contains devices.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_create_device_registry():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.CreateDeviceRegistryRequest(
 parent="parent_value",
 )
 # Make the request
 response = await client.create_device_registry(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.CreateDeviceRegistryRequest, dict]]The request object. Request for  | 
| parent | Required. The project and cloud region where this device registry must be created. For example,  | 
| device_registry | DeviceRegistry Required. The device registry. The field  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.DeviceRegistry  | A container for a group of devices. | 
delete_device
delete_device(
 request: typing.Optional[
 typing.Union[google.cloud.iot_v1.types.device_manager.DeleteDeviceRequest, dict]
 ] = None,
 *,
 name: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> NoneDeletes a device.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_delete_device():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.DeleteDeviceRequest(
 name="name_value",
 )
 # Make the request
 await client.delete_device(request=request)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.DeleteDeviceRequest, dict]]The request object. Request for  | 
| name | Required. The name of the device. For example,  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
delete_device_registry
delete_device_registry(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.DeleteDeviceRegistryRequest, dict
 ]
 ] = None,
 *,
 name: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> NoneDeletes a device registry configuration.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_delete_device_registry():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.DeleteDeviceRegistryRequest(
 name="name_value",
 )
 # Make the request
 await client.delete_device_registry(request=request)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.DeleteDeviceRegistryRequest, dict]]The request object. Request for  | 
| name | Required. The name of the device registry. For example,  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
device_path
device_path(project: str, location: str, registry: str, device: str) -> strReturns a fully-qualified device string.
from_service_account_file
from_service_account_file(filename: str, *args, **kwargs)Creates an instance of this client using the provided credentials file.
| Parameter | |
|---|---|
| Name | Description | 
| filename | strThe path to the service account private key json file. | 
| Returns | |
|---|---|
| Type | Description | 
| DeviceManagerAsyncClient | The constructed client. | 
from_service_account_info
from_service_account_info(info: dict, *args, **kwargs)Creates an instance of this client using the provided credentials info.
| Parameter | |
|---|---|
| Name | Description | 
| info | dictThe service account private key info. | 
| Returns | |
|---|---|
| Type | Description | 
| DeviceManagerAsyncClient | The constructed client. | 
from_service_account_json
from_service_account_json(filename: str, *args, **kwargs)Creates an instance of this client using the provided credentials file.
| Parameter | |
|---|---|
| Name | Description | 
| filename | strThe path to the service account private key json file. | 
| Returns | |
|---|---|
| Type | Description | 
| DeviceManagerAsyncClient | The constructed client. | 
get_device
get_device(
 request: typing.Optional[
 typing.Union[google.cloud.iot_v1.types.device_manager.GetDeviceRequest, dict]
 ] = None,
 *,
 name: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.resources.DeviceGets details about a device.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_get_device():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.GetDeviceRequest(
 name="name_value",
 )
 # Make the request
 response = await client.get_device(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.GetDeviceRequest, dict]]The request object. Request for  | 
| name | Required. The name of the device. For example,  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.Device  | The device resource. | 
get_device_registry
get_device_registry(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.GetDeviceRegistryRequest, dict
 ]
 ] = None,
 *,
 name: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.resources.DeviceRegistryGets a device registry configuration.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_get_device_registry():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.GetDeviceRegistryRequest(
 name="name_value",
 )
 # Make the request
 response = await client.get_device_registry(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.GetDeviceRegistryRequest, dict]]The request object. Request for  | 
| name | Required. The name of the device registry. For example,  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.DeviceRegistry  | A container for a group of devices. | 
get_iam_policy
get_iam_policy(
 request: typing.Optional[
 typing.Union[google.iam.v1.iam_policy_pb2.GetIamPolicyRequest, dict]
 ] = None,
 *,
 resource: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.iam.v1.policy_pb2.PolicyGets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
from google.iam.v1 import iam_policy_pb2 # type: ignore
async def sample_get_iam_policy():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iam_policy_pb2.GetIamPolicyRequest(
 resource="resource_value",
 )
 # Make the request
 response = await client.get_iam_policy(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.iam.v1.iam_policy_pb2.GetIamPolicyRequest, dict]]The request object. Request message for  | 
| resource | REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. This corresponds to the  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.iam.v1.policy_pb2.Policy | An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A Policy is a collection of bindings. A binding binds one or more members, or principals, to a single role. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A role is a named list of permissions; each role can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a binding can also specify a condition, which is a logical expression that allows access to a resource only if the expression evaluates to true. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](\ https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020年10月01日t00:00:00.000z')",="" }="" }="" ],="" "etag":="" "bwwwja0yfja=", " version":="" 3="" }="" **yaml="" example:**="" bindings:="" -="" members:="" -="" user:\="" mike@example.com="" -="" group:\="" admins@example.com="" -="" domain:google.com="" -="" serviceaccount:\="" my-project-id@appspot.gserviceaccount.com="" role:="" roles/resourcemanager.organizationadmin="" -="" members:="" -="" user:\="" eve@example.com="" role:="" roles/resourcemanager.organizationviewer="" condition:="" title:="" expirable="" access="" description:="" does="" not="" grant="" access="" after="" sep="" 2020="" expression:="" request.time="">< timestamp('2020年10月01日t00:00:00.000z')="" etag:="" bwwwja0yfja="version:" 3="" for="" a="" description="" of="" iam="" and="" its="" features,="" see="" the="" [iam="" documentation](\=""> | 
get_mtls_endpoint_and_cert_source
get_mtls_endpoint_and_cert_source(
 client_options: typing.Optional[
 google.api_core.client_options.ClientOptions
 ] = None,
)Return the API endpoint and client cert source for mutual TLS.
The client cert source is determined in the following order:
(1) if GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is not "true", the
client cert source is None.
(2) if client_options.client_cert_source is provided, use the provided one; if the
default client cert source exists, use the default one; otherwise the client cert
source is None.
The API endpoint is determined in the following order:
(1) if client_options.api_endpoint if provided, use the provided one.
(2) if GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is "always", use the
default mTLS endpoint; if the environment variable is "never", use the default API
endpoint; otherwise if client cert source exists, use the default mTLS endpoint, otherwise
use the default API endpoint.
More details can be found at https://google.aip.dev/auth/4114.
| Parameter | |
|---|---|
| Name | Description | 
| client_options | google.api_core.client_options.ClientOptionsCustom options for the client. Only the  | 
| Exceptions | |
|---|---|
| Type | Description | 
| google.auth.exceptions.MutualTLSChannelError | If any errors happen. | 
| Returns | |
|---|---|
| Type | Description | 
| Tuple[str, Callable[[], Tuple[bytes, bytes]]] | returns the API endpoint and the client cert source to use. | 
get_transport_class
get_transport_class() -> (
 typing.Type[
 google.cloud.iot_v1.services.device_manager.transports.base.DeviceManagerTransport
 ]
)Returns an appropriate transport class.
list_device_config_versions
list_device_config_versions(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.ListDeviceConfigVersionsRequest,
 dict,
 ]
 ] = None,
 *,
 name: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.device_manager.ListDeviceConfigVersionsResponseLists the last few versions of the device configuration in descending order (i.e.: newest first).
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_list_device_config_versions():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.ListDeviceConfigVersionsRequest(
 name="name_value",
 )
 # Make the request
 response = await client.list_device_config_versions(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.ListDeviceConfigVersionsRequest, dict]]The request object. Request for  | 
| name | Required. The name of the device. For example,  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.ListDeviceConfigVersionsResponse  | Response for ListDeviceConfigVersions. | 
list_device_registries
list_device_registries(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.ListDeviceRegistriesRequest, dict
 ]
 ] = None,
 *,
 parent: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.services.device_manager.pagers.ListDeviceRegistriesAsyncPagerLists device registries.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_list_device_registries():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.ListDeviceRegistriesRequest(
 parent="parent_value",
 )
 # Make the request
 page_result = client.list_device_registries(request=request)
 # Handle the response
 async for response in page_result:
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.ListDeviceRegistriesRequest, dict]]The request object. Request for  | 
| parent | Required. The project and cloud region path. For example,  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.services.device_manager.pagers.ListDeviceRegistriesAsyncPager  | Response for ListDeviceRegistries. Iterating over this object will yield results and resolve additional pages automatically. | 
list_device_states
list_device_states(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.ListDeviceStatesRequest, dict
 ]
 ] = None,
 *,
 name: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.device_manager.ListDeviceStatesResponseLists the last few versions of the device state in descending order (i.e.: newest first).
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_list_device_states():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.ListDeviceStatesRequest(
 name="name_value",
 )
 # Make the request
 response = await client.list_device_states(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.ListDeviceStatesRequest, dict]]The request object. Request for  | 
| name | Required. The name of the device. For example,  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.ListDeviceStatesResponse  | Response for ListDeviceStates. | 
list_devices
list_devices(
 request: typing.Optional[
 typing.Union[google.cloud.iot_v1.types.device_manager.ListDevicesRequest, dict]
 ] = None,
 *,
 parent: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.services.device_manager.pagers.ListDevicesAsyncPagerList devices in a device registry.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_list_devices():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.ListDevicesRequest(
 parent="parent_value",
 )
 # Make the request
 page_result = client.list_devices(request=request)
 # Handle the response
 async for response in page_result:
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.ListDevicesRequest, dict]]The request object. Request for  | 
| parent | Required. The device registry path. Required. For example,  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.services.device_manager.pagers.ListDevicesAsyncPager  | Response for ListDevices. Iterating over this object will yield results and resolve additional pages automatically. | 
modify_cloud_to_device_config
modify_cloud_to_device_config(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.ModifyCloudToDeviceConfigRequest,
 dict,
 ]
 ] = None,
 *,
 name: typing.Optional[str] = None,
 binary_data: typing.Optional[bytes] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.resources.DeviceConfigModifies the configuration for the device, which is eventually sent from the Cloud IoT Core servers. Returns the modified configuration version and its metadata.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_modify_cloud_to_device_config():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.ModifyCloudToDeviceConfigRequest(
 name="name_value",
 binary_data=b'binary_data_blob',
 )
 # Make the request
 response = await client.modify_cloud_to_device_config(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.ModifyCloudToDeviceConfigRequest, dict]]The request object. Request for  | 
| name | Required. The name of the device. For example,  | 
| binary_data | Required. The configuration data for the device. This corresponds to the  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.DeviceConfig  | The device configuration. Eventually delivered to devices. | 
parse_common_billing_account_path
parse_common_billing_account_path(path: str) -> typing.Dict[str, str]Parse a billing_account path into its component segments.
parse_common_folder_path
parse_common_folder_path(path: str) -> typing.Dict[str, str]Parse a folder path into its component segments.
parse_common_location_path
parse_common_location_path(path: str) -> typing.Dict[str, str]Parse a location path into its component segments.
parse_common_organization_path
parse_common_organization_path(path: str) -> typing.Dict[str, str]Parse a organization path into its component segments.
parse_common_project_path
parse_common_project_path(path: str) -> typing.Dict[str, str]Parse a project path into its component segments.
parse_device_path
parse_device_path(path: str) -> typing.Dict[str, str]Parses a device path into its component segments.
parse_registry_path
parse_registry_path(path: str) -> typing.Dict[str, str]Parses a registry path into its component segments.
registry_path
registry_path(project: str, location: str, registry: str) -> strReturns a fully-qualified registry string.
send_command_to_device
send_command_to_device(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.SendCommandToDeviceRequest, dict
 ]
 ] = None,
 *,
 name: typing.Optional[str] = None,
 binary_data: typing.Optional[bytes] = None,
 subfolder: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.device_manager.SendCommandToDeviceResponseSends a command to the specified device. In order for a device to be able to receive commands, it must:
1) be connected to Cloud IoT Core using the MQTT protocol, and 2) be subscribed to the group of MQTT topics specified by /devices/{device-id}/commands/#. This subscription will receive commands at the top-level topic /devices/{device-id}/commands as well as commands for subfolders, like /devices/{device-id}/commands/subfolder. Note that subscribing to specific subfolders is not supported. If the command could not be delivered to the device, this method will return an error; in particular, if the device is not subscribed, this method will return FAILED_PRECONDITION. Otherwise, this method will return OK. If the subscription is QoS 1, at least once delivery will be guaranteed; for QoS 0, no acknowledgment will be expected from the device.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_send_command_to_device():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.SendCommandToDeviceRequest(
 name="name_value",
 binary_data=b'binary_data_blob',
 )
 # Make the request
 response = await client.send_command_to_device(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.SendCommandToDeviceRequest, dict]]The request object. Request for  | 
| name | Required. The name of the device. For example,  | 
| binary_data | Required. The command data to send to the device. This corresponds to the  | 
| subfolder | Optional subfolder for the command. If empty, the command will be delivered to the /devices/{device-id}/commands topic, otherwise it will be delivered to the /devices/{device-id}/commands/{subfolder} topic. Multi-level subfolders are allowed. This field must not have more than 256 characters, and must not contain any MQTT wildcards ("+" or "#") or null characters. This corresponds to the  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.SendCommandToDeviceResponse  | Response for SendCommandToDevice. | 
set_iam_policy
set_iam_policy(
 request: typing.Optional[
 typing.Union[google.iam.v1.iam_policy_pb2.SetIamPolicyRequest, dict]
 ] = None,
 *,
 resource: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.iam.v1.policy_pb2.PolicySets the access control policy on the specified resource. Replaces any existing policy.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
from google.iam.v1 import iam_policy_pb2 # type: ignore
async def sample_set_iam_policy():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iam_policy_pb2.SetIamPolicyRequest(
 resource="resource_value",
 )
 # Make the request
 response = await client.set_iam_policy(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.iam.v1.iam_policy_pb2.SetIamPolicyRequest, dict]]The request object. Request message for  | 
| resource | REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. This corresponds to the  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.iam.v1.policy_pb2.Policy | An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A Policy is a collection of bindings. A binding binds one or more members, or principals, to a single role. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A role is a named list of permissions; each role can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a binding can also specify a condition, which is a logical expression that allows access to a resource only if the expression evaluates to true. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](\ https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020年10月01日t00:00:00.000z')",="" }="" }="" ],="" "etag":="" "bwwwja0yfja=", " version":="" 3="" }="" **yaml="" example:**="" bindings:="" -="" members:="" -="" user:\="" mike@example.com="" -="" group:\="" admins@example.com="" -="" domain:google.com="" -="" serviceaccount:\="" my-project-id@appspot.gserviceaccount.com="" role:="" roles/resourcemanager.organizationadmin="" -="" members:="" -="" user:\="" eve@example.com="" role:="" roles/resourcemanager.organizationviewer="" condition:="" title:="" expirable="" access="" description:="" does="" not="" grant="" access="" after="" sep="" 2020="" expression:="" request.time="">< timestamp('2020年10月01日t00:00:00.000z')="" etag:="" bwwwja0yfja="version:" 3="" for="" a="" description="" of="" iam="" and="" its="" features,="" see="" the="" [iam="" documentation](\=""> | 
test_iam_permissions
test_iam_permissions(
 request: typing.Optional[
 typing.Union[google.iam.v1.iam_policy_pb2.TestIamPermissionsRequest, dict]
 ] = None,
 *,
 resource: typing.Optional[str] = None,
 permissions: typing.Optional[typing.MutableSequence[str]] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.iam.v1.iam_policy_pb2.TestIamPermissionsResponseReturns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
from google.iam.v1 import iam_policy_pb2 # type: ignore
async def sample_test_iam_permissions():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iam_policy_pb2.TestIamPermissionsRequest(
 resource="resource_value",
 permissions=['permissions_value1', 'permissions_value2'],
 )
 # Make the request
 response = await client.test_iam_permissions(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.iam.v1.iam_policy_pb2.TestIamPermissionsRequest, dict]]The request object. Request message for  | 
| resource | REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field. This corresponds to the  | 
| permissions | :class:The set of permissions to check for the  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.iam.v1.iam_policy_pb2.TestIamPermissionsResponse  | Response message for TestIamPermissions method. | 
unbind_device_from_gateway
unbind_device_from_gateway(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.UnbindDeviceFromGatewayRequest,
 dict,
 ]
 ] = None,
 *,
 parent: typing.Optional[str] = None,
 gateway_id: typing.Optional[str] = None,
 device_id: typing.Optional[str] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.device_manager.UnbindDeviceFromGatewayResponseDeletes the association between the device and the gateway.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_unbind_device_from_gateway():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.UnbindDeviceFromGatewayRequest(
 parent="parent_value",
 gateway_id="gateway_id_value",
 device_id="device_id_value",
 )
 # Make the request
 response = await client.unbind_device_from_gateway(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.UnbindDeviceFromGatewayRequest, dict]]The request object. Request for  | 
| parent | Required. The name of the registry. For example,  | 
| gateway_id | Required. The value of  | 
| device_id | Required. The device to disassociate from the specified gateway. The value of  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.UnbindDeviceFromGatewayResponse  | Response for UnbindDeviceFromGateway. | 
update_device
update_device(
 request: typing.Optional[
 typing.Union[google.cloud.iot_v1.types.device_manager.UpdateDeviceRequest, dict]
 ] = None,
 *,
 device: typing.Optional[google.cloud.iot_v1.types.resources.Device] = None,
 update_mask: typing.Optional[google.protobuf.field_mask_pb2.FieldMask] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.resources.DeviceUpdates a device.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_update_device():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.UpdateDeviceRequest(
 )
 # Make the request
 response = await client.update_device(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.UpdateDeviceRequest, dict]]The request object. Request for  | 
| device | Device Required. The new values for the device. The  | 
| update_mask | Required. Only updates the  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.Device  | The device resource. | 
update_device_registry
update_device_registry(
 request: typing.Optional[
 typing.Union[
 google.cloud.iot_v1.types.device_manager.UpdateDeviceRegistryRequest, dict
 ]
 ] = None,
 *,
 device_registry: typing.Optional[
 google.cloud.iot_v1.types.resources.DeviceRegistry
 ] = None,
 update_mask: typing.Optional[google.protobuf.field_mask_pb2.FieldMask] = None,
 retry: typing.Union[
 google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault
 ] = _MethodDefault._DEFAULT_VALUE,
 timeout: typing.Union[float, object] = _MethodDefault._DEFAULT_VALUE,
 metadata: typing.Sequence[typing.Tuple[str, str]] = ()
) -> google.cloud.iot_v1.types.resources.DeviceRegistryUpdates a device registry configuration.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import iot_v1
async def sample_update_device_registry():
 # Create a client
 client = iot_v1.DeviceManagerAsyncClient()
 # Initialize request argument(s)
 request = iot_v1.UpdateDeviceRegistryRequest(
 )
 # Make the request
 response = await client.update_device_registry(request=request)
 # Handle the response
 print(response)
| Parameters | |
|---|---|
| Name | Description | 
| request | Optional[Union[google.cloud.iot_v1.types.UpdateDeviceRegistryRequest, dict]]The request object. Request for  | 
| device_registry | DeviceRegistry Required. The new values for the device registry. The  | 
| update_mask | Required. Only updates the  | 
| retry | google.api_core.retry.RetryDesignation of what errors, if any, should be retried. | 
| timeout | floatThe timeout for this request. | 
| metadata | Sequence[Tuple[str, str]]Strings which should be sent along with the request as metadata. | 
| Returns | |
|---|---|
| Type | Description | 
| google.cloud.iot_v1.types.DeviceRegistry  | A container for a group of devices. |