---
title: "Create or update a device"
method: PUT
path: "/devices/{deviceId}"
---

# Create or update a device

`PUT /devices/{deviceId}`

Create a new device.

## Path parameters

- `deviceId` string, required

## Query parameters

- `api-version` string, required

## Request body

- Device — The device definition.
  - `id` string — Unique ID of the device.
  - `etag` string — ETag used to prevent conflict in device updates.
  - `displayName` string — Display name of the device.
  - `template` string — The device template definition for the device.
  - `enabled` boolean — Whether the device connection to IoT Central has been enabled.
  - `provisioned` boolean — Whether resources have been allocated for the device.
  - `simulated` boolean — Whether the device is simulated.

## Response `200`

Success

- Device — The device definition.
  - `id` string — Unique ID of the device.
  - `etag` string — ETag used to prevent conflict in device updates.
  - `displayName` string — Display name of the device.
  - `template` string — The device template definition for the device.
  - `enabled` boolean — Whether the device connection to IoT Central has been enabled.
  - `provisioned` boolean — Whether resources have been allocated for the device.
  - `simulated` boolean — Whether the device is simulated.

---

[API](https://skmtc.dev/azure/apis/iotcentral-iotcentral.md) · [All operations](https://skmtc.dev/azure/apis/iotcentral-iotcentral/llms.txt) · [OpenAPI document](https://skmtc.dev/azure/apis/iotcentral-iotcentral/revisions/91b0e78f975b?raw)
