[Yandex Cloud documentation](../../../index.md) > [Yandex IoT Core](../../index.md) > [Step-by-step guides](../index.md) > Managing devices > Getting information about devices

# Getting information about devices

{% note warning %}

Yandex IoT Core is no longer available to new users. 

Current users can create resources until November 1, 2026. Afterwards, the service will go read-only and cease to operate on December 1, 2026. For more information on the timing and procedure, see [Service shutdown](../../sunset.md).

{% endnote %}

To find out the unique ID or name of a device, [get](#device-list) a list of devices in a registry.

## Getting a list of devices in a registry {#device-list}

If you don't know the unique ID or name of the registry where your device is located, view the [list of existing registries](../registry/registry-list.md#registry-list).

{% list tabs group=instructions %}

- Management console {#console}

	1. In the [management console](https://console.yandex.cloud), select the folder where the registry is located.
	1. Navigate to **IoT Core**.
	1. Select the registry.
	1. Navigate to the **Devices** tab.

- CLI {#cli}
  
	If you do not have the Yandex Cloud CLI yet, [install and initialize it](../../../cli/quickstart.md#install).

	The folder used by default is the one specified when [creating](../../../cli/operations/profile/profile-create.md) the CLI profile. To change the default folder, use the `yc config set folder-id <folder_ID>` command. You can also specify a different folder for any command using `--folder-name` or `--folder-id`. If you access a resource by its name, the search will be limited to the default folder. If you access a resource by its ID, the search will be global, i.e., through all folders based on access permissions.
    
	1. View the description of the CLI command to get a list of devices:
	
        ```bash
		yc iot device list --help
		```
    
	1. Get a list of devices in the registry by specifying its name or ID:

        ```bash
        yc iot device list --registry-name <registry_name>
        ```

        Result:
	
        ```
        +----------------------+-----------+
        |          ID          |   NAME    |
        +----------------------+-----------+
        | b9135goeh1uc******** | my-device |
        +----------------------+-----------+
        ```

- API {#api}

    To get a list of devices in a registry, use the [list](../../api-ref/Device/list.md) REST API method for the [Device](../../api-ref/Device/index.md) resource or the [DeviceService/List](../../api-ref/grpc/Device/list.md) gRPC API call.

{% endlist %}

## Getting information about a device {#device-get}

To access a device, use the unique ID or name of the registry from the [previous](#device-list) step.

{% list tabs group=instructions %}

- Management console {#console}

   1. In the [management console](https://console.yandex.cloud), select the folder where the device is located.
   1. Navigate to **IoT Core**.
   1. Select the registry where the device is located.
   1. Navigate to the **Devices** tab.
   1. Select the device.
   1. The **Overview** page will show the device details.

- CLI {#cli}
  
  If you do not have the Yandex Cloud CLI yet, [install and initialize it](../../../cli/quickstart.md#install).
  
  The folder used by default is the one specified when [creating](../../../cli/operations/profile/profile-create.md) the CLI profile. To change the default folder, use the `yc config set folder-id <folder_ID>` command. You can also specify a different folder for any command using `--folder-name` or `--folder-id`. If you access a resource by its name, the search will be limited to the default folder. If you access a resource by its ID, the search will be global, i.e., through all folders based on access permissions.
  1. View the description of the CLI command to get information about a device:
	
      ```bash
      yc iot device get --help
      ```

  1. Get detailed information about a device by specifying its name or ID:
  
      ```bash
      yc iot device get <device_name>
      ```

      Result:

      ```text
      id: b9135goeh1uc********
      registry_id: b91ki3851hab********
      created_at: "2019-05-28T16:08:30.938Z"
      name: my-device
      ```

- Terraform {#tf}

  With [Terraform](https://www.terraform.io/), you can quickly create a cloud infrastructure in Yandex Cloud and manage it using configuration files. These files store the infrastructure description written in HashiCorp Configuration Language (HCL). If you change the configuration files, Terraform automatically detects which part of your configuration is already deployed, and what should be added or removed.
  
  Terraform is distributed under the [Business Source License](https://github.com/hashicorp/terraform/blob/main/LICENSE). The [Yandex Cloud provider for Terraform](https://github.com/yandex-cloud/terraform-provider-yandex) is distributed under the [MPL-2.0](https://www.mozilla.org/en-US/MPL/2.0/) license.
  
  For more information about the provider resources, see the relevant documentation on the [Terraform](https://www.terraform.io/docs/providers/yandex/index.html) website or [its mirror](../../../terraform/index.md).

  If you do not have Terraform yet, [install it and configure the Yandex Cloud provider](../../../tutorials/infrastructure-management/terraform-quickstart.md#install-terraform).
  
  
  To manage infrastructure using Terraform under a service account or user accounts (a Yandex account, a federated account, or a local user), [authenticate](../../../terraform/authentication.md) using the appropriate method.

  To get detailed information about a device using Terraform:
  1. Add the `data` and `output` sections to the Terraform configuration file:

     ```hcl
     data "yandex_iot_core_device" "my_device" {
       device_id = "<device_ID>"
     }

     output "device_params" {
       value = data.yandex_iot_core_device.my_device.registry_id
     }
     ```

     Where:
     * `data "yandex_iot_core_device"`: Description of the device as a data source:
       * `device_id`: Device ID.
     * `output "device_params"`: Output variable containing information about the registry the device belongs to:
       * `value`: Return value.

     You can replace `registry_id` with another variable to get the information you need. For more information about the `yandex_iot_core_device` data source properties, see [this provider guide](../../../terraform/data-sources/iot_core_device.md).
  1. Create the resources:

     1. In the terminal, navigate to the configuration file directory.
     1. Make sure the configuration is correct using this command:
     
        ```bash
        terraform validate
        ```
     
        If the configuration is valid, you will get this message:
     
        ```bash
        Success! The configuration is valid.
        ```
     
     1. Run this command:
     
        ```bash
        terraform plan
        ```
     
        You will see a list of resources and their properties. No changes will be made at this step. Terraform will show any errors in the configuration.
     1. Apply the configuration changes:
     
        ```bash
        terraform apply
        ```
     
     1. Type `yes` and press **Enter** to confirm the changes.

     Terraform will create all required resources and display their output variables. To check the results, run this command:

     ```bash
     terraform output
     ```

     Result:

     ```text
     device_params = "are7ajlrf493********"
     ```
 
- API {#api}

  To get detailed information about a device, use the [get](../../api-ref/Device/get.md) REST API method for the [Device](../../api-ref/Device/index.md) resource or the [DeviceService/Get](../../api-ref/grpc/Device/get.md) gRPC API call.

{% endlist %}

Device monitoring data is updated when accessing the device via gRPCS and MQTT. The quality of service (QoS) level is [at most once](../../concepts/index.md#qos).