全部產品
Search
文件中心

IoT Platform:CreateProduct

更新時間:Feb 11, 2025

調用該介面建立產品。

使用說明

若產品需要使用物模型功能,必選傳入請求參數AliyunCommodityCodeDataFormat,且AliyunCommodityCode值為iothub_senior。詳細說明,請參見下文請求參數表。

QPS限制

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

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

調試

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

請求參數

名稱 類型 是否必選 樣本值 描述
Action String CreateProduct

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

NodeType Integer 0

產品的節點類型,取值:

  • 0:裝置。裝置不能掛載子裝置。可以直連物聯網平台,也可以作為網關的子裝置串連物聯網平台。作為網關子裝置時,必須同時傳入ProtocolType
  • 1:網關。網關可以掛載子裝置,具有子裝置管理模組,維持子裝置的拓撲關係,和將拓撲關係同步到物聯網平台。
ProductName String Light

為建立產品命名。

產品名稱長度為4~30個字元,可以包含中文、英文字母、數字和底線(_)。一個中文算2個字元。

重要 產品名稱在當前執行個體下需保持唯一。
IotInstanceId String iot-***-v64***

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

重要
  • 若有ID值,必須傳入該ID值,否則調用會失敗。
  • 若無執行個體概覽頁面或ID值,則無需傳入。

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

DataFormat Integer 1

資料格式。可選值:

  • 0:透傳/自訂格式(CUSTOM_FORMAT)。
  • 1:Alink協議(ALINK_FORMAT)。
Description String Product test

為建立產品添加描述資訊。長度不超過100個字元。

AliyunCommodityCode String iothub_senior

產品版本類型。

  • 不傳入此參數:表示預設建立基礎版產品,不支援使用物模型。
  • 傳入此參數:僅支援輸入iothub_senior,表示建立使用物模型的產品。此時需要同時傳入參數DataFormat
重要 對於基礎版產品,不支援在物聯網平台控制台使用線上調試功能。
Id2 Boolean false

無需傳入。

ProtocolType String modbus

裝置接入網關的協議類型。

使用物模型的產品(AliyunCommodityCode=iothub_senior),且產品下的裝置需通過網關接入物聯網平台,需傳入此參數。

可選值:

  • modbus:Modbus協議。
  • opc-ua:OPC UA協議。
  • customize:自訂協議。
  • ble:BLE協議。
  • zigbee:ZigBee協議。
NetType String WIFI

連網方式。

產品下的裝置為網關裝置或直連裝置時,需傳入此參數。

可選值:

  • WIFI: Wi-Fi。
  • CELLULAR:蜂窩網。
  • ETHERNET:乙太網路。
  • OTHER:其他。

若不傳入此參數,則預設為Wi-Fi。

JoinPermissionId String 8***

無需傳入。

ResourceGroupId String rg-acfmxazb4ph***

資源群組ID。

重要
  • 目前,物聯網平台僅支援執行個體維度資源群組管理。請求參數ResourceGroupId配置已無效,無需再傳入。
  • 歷史調用本API設定的資源群組仍有效。
AuthType String secret

產品下的裝置接入物聯網平台的認證方式。

無需傳入此參數。預設值為secret,表示使用裝置密鑰進行裝置身份認證。更多資訊,請參見MQTT-TCP串連通訊

CategoryKey String Lighting

產品品類的標識符。如果傳入此參數,建立的產品將使用指定品類的物模型;不傳入,則不使用任何品類的標準物模型。

調用ListThingTemplates,從返回結果中查看物聯網平台預定義的品類資訊,擷取CategoryKey的取值。

PublishAuto Boolean false

是否在產品建立後自動發布物模型。

  • true:發布。
  • false:不發布。

不傳入此參數,取預設值為true

ValidateType Integer 1

資料校正層級。不傳入此參數時,預設為弱校正。可取值:

  • 1:弱校正。只校正裝置資料的idetifier和dataType欄位,不校正其他欄位,可流轉全量資料。

    校正通過的資料展示在物聯網平台控制台對應裝置的裝置詳情物模型資料頁簽。校正不通過的資料則不展示。

    通過流轉資料中的參數checkFailedData,可查看校正不通過的資料。更多資訊,請參見資料格式

  • 2:免校正。對上報的資料不進行校正,流轉全量資料。

    資料不展示在物聯網平台控制台對應裝置的裝置詳情物模型資料頁簽。

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

返回資料

名稱 類型 樣本值 描述
Code String 200

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

Data Struct

調用成功時,返回的建立產品資訊。

AliyunCommodityCode String iothub_senior

產品類型。

  • iothub_senior:使用物模型。
  • iothub:不使用物模型。
AuthType String secret

產品下的裝置接入物聯網平台的認證方式。

DataFormat Integer 1

產品類型資料格式。

  • 0:透傳/自訂格式(CUSTOM_FORMAT)。
  • 1:Alink協議(ALINK_FORMAT)。
說明 此參數為使用物模型的產品(AliyunCommodityCode=iothub_senior)特有參數。
Description String Product test

產品描述資訊。

Id2 Boolean false

是否使用ID²認證。

  • true:開通ID²認證。
  • false:不開通ID²認證。
NodeType Integer 0

產品的節點類型,取值:

  • 0:裝置。裝置不能掛載子裝置。可以直連物聯網平台,也可以作為網關的子裝置串連物聯網平台。
  • 1:網關。網關可以掛載子裝置,具有子裝置管理模組,維持子裝置的拓撲關係,和將拓撲關係同步到物聯網平台。
說明 此參數為使用物模型的產品(AliyunCommodityCode=iothub_senior)特有參數。
ProductKey String a1FlqIQ****

物聯網平台為建立產品頒發的全域唯一標識。

說明 請妥善保管建立產品的ProductKey。在其他動作中會用到該資訊。
ProductName String Test

產品的名稱。

ProductSecret String U5tW7i44uilc****

產品金鑰。

ProtocolType String modbus

裝置接入網關協議類型。

說明 此參數為使用物模型的產品(AliyunCommodityCode=iothub_senior)特有參數。
ErrorMessage String 系統異常

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

ProductKey String a1FlqIQ****

產品的ProductKey,物聯網平台為產品頒發的唯一識別碼。

RequestId String E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565

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

Success Boolean true

是否調用成功。

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

樣本

請求樣本

https://iot.cn-shanghai.aliyuncs.com/?Action=CreateProduct
&AliyunCommodityCode=iothub_senior
&AuthType=secret
&DataFormat=1
&Description=Product test
&NodeType=0
&ResourceGroupId=rg-acfmxazb4ph****
&ProductName=Test
&ProtocolType=modbus
&CategoryKey=Lighting
&PublishAuto=false
&<公用請求參數>

正常返回樣本

XML格式

<CreateProductResponse>
      <Data>
            <Description>Product test</Description>
            <DataFormat>1</DataFormat>
            <ProtocolType>modbus</ProtocolType>
            <ProductKey>a1FlqIQ****</ProductKey>
            <ProductSecret>U5tW7i44uilc****</ProductSecret>
            <NodeType>0</NodeType>
            <ProductName>Test</ProductName>
            <AliyunCommodityCode>iothub_senior</AliyunCommodityCode>
            <AuthType>secret</AuthType>
            <ResourceGroupId>rg-acfmxazb4ph****</ResourceGroupId>
      </Data>
      <ProductKey>a1FlqIQ****</ProductKey>
      <RequestId>E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565</RequestId>
      <Success>true</Success>
</CreateProductResponse>

JSON格式

{
  "Data": {
    "Description": "Product test",
    "DataFormat": 1,
    "ProtocolType": "modbus",
    "ProductKey": "a1FlqIQ****",
    "ProductSecret": "U5tW7i44uilc****",
    "NodeType": 0,
    "ProductName": "Test",
    "AliyunCommodityCode": "iothub_senior",
    "AuthType": "secret",
    "ResourceGroupId": "rg-acfmxazb4ph****"
  },
  "ProductKey": "a1FlqIQ****",
  "RequestId": "E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565",
  "Success": true
}

錯誤碼

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