V2.1 Create Device


Create a device.


This API is available in EnOS 2.1.0 and above. Version 2.4 has been added and it is recommended to use V2.4 Create Device.

Operation Permissions


Before invoking this API, ensure that the service account has been authorized the policy that includes the following service(s) and action permission(s). For how to authorize the service account, see Managing Service Accounts.


Required Service

Required Operation Permission

Device Management Service

Full Access

Prerequisite

  • The product to create this device under exists.

  • You have learnt the Limitations about devices.

Request Format

POST https://{apigw-address}/connect-service/v2.1/devices?action=create

Request Parameters (URI)

Name

Location (Path/Query)

Mandatory/Optional

Data Type

Description

orgId

Query

Mandatory

String

The organization ID which the asset belongs to. How to get orgId>>

Request Parameters (Body)

Name

Mandatory/Optional

Data Type

Description

productKey

Mandatory

String

The product key.

timezone

Mandatory

String

Timezone of the device’s location. For details, see Timezone representation.

deviceName

Mandatory

StringI18n

The device name. For more details on the structure and locales supported, see Internationalized name struct.

deviceAttributes

Optional

Map

The device attributes.

deviceKey

Optional

String

The device key.

deviceDesc

Optional

String

The device description.

deviceTags

Optional

Map

The device tags. (The Key and Value are of String type.) For details, see How to use tags.

Response Parameters

Name

Data Type

Description

data

DeviceCreateResult Struct

The returned results of the device creation. For details, see DeviceCreateResult Struct.

Error Codes

Code

Message

Description

11702

DeviceKey existed

The deviceKey already exists in the database (when deviceKey is provided).

11714

Generate deviceKey failed

The key of the device cannot be assigned temporarily (when the deviceKey is not provided). Please try again.

11739

Exceed max device size

A product can have a max of 10,000 devices under it. This operation will exceed the limit.

99400

Invalid arguments

One or multiple parameters are invalid.

Samples

Request Sample

url: https://{apigw-address}/connect-service/v2.1/devices?action=create&orgId=yourOrgId
method: POST
requestBody:
{
    "deviceTags":{
        "test":"test for tags"
    },
    "timezone":"+08:00",
    "productKey":"yourProductKey",
    "deviceAttributes":{
        "testatt":111111
    },
    "deviceName":{
        "defaultValue":"testCreateDevice",
        "i18nValue":{

        }
    },
    "deviceDesc":"test for createdevice"
}

Return Sample

{
    "code":0,
    "msg":"OK",
    "requestId":"fd79d0f5-69c5-4fa8-add4-69f5ca1b635f",
    "data":{
        "assetId":"Uvmm5AXU",
        "productKey":"yourProductKey",
        "deviceKey":"yourDeviceKey",
        "deviceSecret":"yourDeviceSecret"
    }
}

SDK Samples


You can access the SDK samples for Connection Service on GitHub: