全部產品
Search
文件中心

IoT Platform:BatchImportDevice

更新時間:Feb 17, 2025

調用該介面在MQTT型執行個體或MQTT雲網關產品下大量匯入裝置。

使用說明

若添加MQTT雲網關裝置,調用該介面前,請先添加MQTT雲網關並成功建立雲網關產品,擷取產品的ProductKey。具體操作,請參見建立雲網關產品(MQTT)

QPS限制

單個阿里雲帳號調用該介面的每秒請求數(QPS)最大限制為10。

說明 單個阿里雲帳號下的所有RAM使用者共用該阿里雲帳號的配額。

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

請求參數

名稱

類型

是否必選

樣本值

描述

Action String BatchImportDevice

系統規定參數。取值:BatchImportDevice。

ProductKey String a1BwAGV****

裝置所屬產品的ProductKeyProductKey是物聯網平台為產品頒發的通用唯一識別碼。您可以在物聯網平台控制台或調用QueryProductList,查看當前帳號下所有產品的資訊。

DeviceList.N.DeviceName String device1

裝置的名稱。

裝置名稱支援英文字母、數字、短劃線(-)、底線(_)、at(@)、英文句號(.)和英文冒號(:),長度限制為4~32個字元。

裝置名稱在產品維度下不可重複。

說明 單次調用該介面,最多能傳入10,000個裝置名稱。超過該限制的資料會被丟棄。
DeviceList.N.DeviceSecret String b4d43f7******10ba5e5

裝置的密鑰。

裝置密鑰支援英文字母、數字、短劃線(-)、底線(_)、at(@)、英文句號(.)和英文冒號(:),長度限制為1~32個字元。

說明 單次調用該介面,最多能傳入10,000個裝置密鑰。超過該限制的資料會被丟棄。
DeviceList.N.Sn String QC4******001

裝置的序號。

序號支援英文字母、數字和底線(_),長度限制為1~64個字元。

說明 單次調用該介面,最多能傳入10,000個裝置序號。超過該限制的資料會被丟棄。
IotInstanceId String iot-1n8t****

執行個體ID。您可在物聯網平台控制台的執行個體概覽頁面,查看當前執行個體的ID

重要
  • 若有ID值,必須傳入該ID值,否則調用會失敗。
  • 若無ID值,則無需傳入。

執行個體的更多資訊,請參見執行個體概述

調用API時,除了本文介紹的該API的特有請求參數,還需傳入公用請求參數。公用請求參數說明,請參見公用參數文檔

返回資料

名稱

類型

樣本值

描述

Code String iot.system.SystemException

調用失敗時,返回的錯誤碼。更多資訊,請參見錯誤碼

Data Struct

返回的資料。

ApplyId Long 1295006

匯入裝置成功時,系統返回的申請批次ID。

InvalidDetailList Array of InvalidDetailList

匯入裝置失敗時,不合法裝置列表的詳細資料。

InvalidDetailList
DeviceName String light%

裝置名稱。

DeviceSecret String ^67$

裝置密鑰。

ErrorMsg String The device name is illegal.

匯入裝置失敗時,返回的出錯資訊。

Sn String QC4001#

裝置SN碼。

InvalidDeviceNameList List { "InvalidDeviceNameList": [ "APT$", "aw" ] }

匯入裝置失敗時,返回的不合法裝置名稱的列表。

InvalidDeviceSecretList List { "InvalidDeviceSecretList": [ "^67$", "1" ] }

匯入裝置失敗時,返回的不合法裝置密鑰的列表。

InvalidSnList List { "InvalidSnList": [ "" ] }

匯入裝置失敗時,返回的不合法裝置SN碼的列表。

RepeatedDeviceNameList List { "RepeatedDeviceNameList": [ "abcd", "asdf" ] }

匯入裝置失敗時,返回的重複裝置名稱的列表。

ErrorMessage String 系統異常

調用失敗時,返回的出錯資訊。

RequestId String E4C0FF92-2A86-41DB-92D3-73B60310D25E

阿里雲為該請求產生的唯一識別碼。

Success Boolean true

表示是否調用成功。

  • true:調用成功。
  • false:調用失敗。

樣本

請求樣本

http(s)://iot.cn-shanghai.aliyuncs.com/?Action=BatchImportDevice
&DeviceList.1.DeviceName=device1
&DeviceList.2.DeviceName=device2
&DeviceList.1.DeviceSecret=b4d43f7******10ba5e5
&DeviceList.2.DeviceSecret=912179******700210b4
&ProductKey=a1BwAGV****
&IotInstanceId=iot-1n8t****
&<公用請求參數>

正常返回樣本

XML格式

<BatchImportDeviceResponse>
  <RequestId>E4C0FF92-2A86-41DB-92D3-73B60310D25E</RequestId>
  <Data>
        <ApplyId>1295006</ApplyId>
  </Data>
  <Success>true</Success>
</BatchImportDeviceResponse>

JSON格式

{
    "RequestId": "E4C0FF92-2A86-41DB-92D3-73B60310D25E",
    "Data": {
        "ApplyId": 1295006
    },
    "Success": true
}

錯誤碼

HttpCode

錯誤碼

錯誤資訊

描述

400 iot.device.TooManyDeviceNamesPerRequest The devices you query exceed the maximum number. 請求查詢的裝置名稱數量超過最大限制。
400 iot.device.ApplyManyDevicesFailed An error occurred while creating multiple devices. 申請大量建立裝置失敗。
400 iot.device.DeviceNumerExceedTenant The device total number beyond limit. 裝置數量超限。

訪問錯誤中心查看更多錯誤碼。