---
title: "Get all devices"
method: GET
path: "/api/v1/devices"
tags: ["Devices"]
---

# Get all devices

`GET /api/v1/devices`

All registered devices user is authorized to use are returned in form of a stream, chunk by chunk. Attach your reader and consume device by device. Various filters allows you to be more concrete in devices you would like to get. Error response might be returned immediately, but also anytime during the stream reading.

## Query parameters

- `deviceId` string, uuid
- `type` string[]
- `status` ConnectionStatus[]

## Response `200`

Stream of devices or errors.

- object
  - `result` Device
    - `id` string
    - `types` string[]
    - `name` string
    - `metadata` DeviceMetadata
      - `status` object — Unix timestamp in nanoseconds.
        - `value` 'OFFLINE' | 'ONLINE'
        - `validUntil` string, int64
      - `shadowSynchronization` 'UNSET' | 'ENABLED' | 'DISABLED'
    - `manufacturerName` object[]
      - `language` string
      - `value` string
    - `modelNumber` string
    - `interfaces` string[]
    - `protocolIndependentId` string
  - `error` Error
    - `code` integer
    - `message` string
    - `details` object[]

## Other responses

- `400` — Bad Request
- `401` — Not authorized

## Changes

- **2021-07-27** `4d121732b593` — 1 breaking, 1 warning, 7 info
  - the response's body type/format changed from `array`/`` to `object`/`` for status `200`
  - deleted the `query` request parameter `type`
  - added the new optional `query` request parameter `deviceId`
  - added the new optional `query` request parameter `status`
  - …5 more
- **2021-03-12** `91690cbfa230` — 2 warning, 1 info
  - deleted the `header` request parameter `Correlation-ID`
  - deleted the `query` request parameter `type`
  - added the new optional `query` request parameter `type`
- **2021-03-11** `744583590663` — 1 warning, 1 info
  - deleted the `query` request parameter `type`
  - added the new optional `query` request parameter `type`
- **2021-02-27** `59a4e9b17075` — 1 warning, 1 info
  - deleted the `query` request parameter `type`
  - added the new optional `query` request parameter `type`
- **2020-12-01** `a8947c1ad8dc` — 1 warning, 1 info
  - deleted the `query` request parameter `type`
  - added the new optional `query` request parameter `type`

[Full history](https://skmtc.dev/plgd-dev/apis/plgd-http-gateway/changes/api/v1/devices/get.md)

---

[API](https://skmtc.dev/plgd-dev/apis/plgd-http-gateway.md) · [All operations](https://skmtc.dev/plgd-dev/apis/plgd-http-gateway/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/plgd-dev/plgd-http-gateway/revisions/7ff524111ddf/schema)
