---
title: "Get device"
method: GET
path: "/api/{projectId}/device/{deviceId}"
tags: ["Devices"]
---

# Get device

`GET /api/{projectId}/device/{deviceId}`

## Request

- Base URL: `https://studio.edgeimpulse.com/v1`
- URL: `https://studio.edgeimpulse.com/v1/api/{projectId}/device/{deviceId}`
- Auth: one of:
  - API key in header `x-api-key`
  - API key in cookie `jwt`
  - API key in header `x-jwt-token`
  - OAuth 2
    - Authorization code: `/v1/oauth/authorize`
    - Client credentials
    - Implicit: `/v1/oauth/authorize`
    - Password
    - Token URL: `/v1/oauth/token`
- TypeScript: <https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/docs/api/:projectId/device/:deviceId/get.ts> (a function with typed inputs; its response is checked against the schema)

Retrieves a single device

## Path parameters

- `projectId` integer, required
- `deviceId` string, required

## Response `200`

OK

- GetDeviceResponse
  - `success` boolean, required: Whether the operation succeeded
  - `error` string: Optional error description (set if 'success' was false)
  - `device` Device
    - `id` integer, required
    - `deviceId` string, required: Unique identifier (such as MAC address) for a device
    - `created` string, date-time, required
    - `lastSeen` string, date-time, required: Last message that was received from the device (ignoring keep-alive)
    - `name` string, required
    - `deviceType` string, required
    - `sensors` object[], required
      - `name` string, required
      - `maxSampleLengthS` integer, required: Maximum supported sample length in seconds
      - `frequencies` number[], required: Supported frequencies for this sensor in Hz.
    - `remote_mgmt_connected` boolean, required: Whether the device is connected to the remote management interface. This property is deprecated, use `remoteMgmtMode` instead.
    - `remote_mgmt_host` string: The remote management host that the device is connected to
    - `supportsSnapshotStreaming` boolean, required
    - `remoteMgmtMode` 'disconnected' | 'ingestion' | 'inference', required: Replaces `remote_mgmt_connected`. Shows whether the device is connected to the remote management interface, and in which mode.
    - `inferenceInfo` object: If `remoteMgmtMode` is set to `inference` this object shows information about the model that's ran on device.
      - `projectId` integer, required
      - `projectOwner` string, required
      - `projectName` string, required
      - `deployedVersion` integer, required
      - `modelType` 'classification' | 'objectDetection' | 'constrainedObjectDetection'

---

[API](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api.md) - [All operations](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/llms.txt) - [OpenAPI document](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/revisions/e2a976d38427?raw)
