联犀-things
  1. info
联犀-things
  • things
    • device
      • auth
        • 设备操作认证
        • 设备登录认证
        • 设备自动注册
        • 鉴定是否是root账号
      • auth5
        • 设备操作认证
        • 设备登录认证
      • gateway
        • 获取子设备列表
        • 添加网关子设备
        • 解绑子设备
      • info
        • 绑定
        • 创建绑定token
        • 绑定token状态查询
        • 是否可以绑定设备
        • 设备统计详情
        • 新增设备
        • 删除设备
        • 获取设备列表
        • 转移设备到新设备上
        • 批量绑定
        • 批量导入设备
        • 批量更新设备
        • 导入批量更新设备
        • 获取设备详情
        • 转让设备
        • 解绑设备
        • 更新设备
      • interact
        • 获取调用设备行为的结果
        • 调用设备行为
        • 请求网关上报拓扑关系
        • 通知网关绑定子设备
        • 批量调用设备属性--废弃
        • 批量调用设备属性
        • 获取调用设备属性的结果
        • 调用设备属性
        • 批量请求设备获取设备最新属性
        • 请求设备获取设备最新属性
        • 发送消息给设备
        • 获取调用设备属性的结果--废弃
        • 调用设备行为--废弃
        • 调用设备属性--废弃
      • msg
        • 获取设备异常日志
        • 获取事件历史记录
        • 获取网关可以绑定的子设备列表
        • 获取云端诊断日志
        • 获取最新属性记录
        • 获取单个id属性历史记录
        • 批量获取单个id属性历史记录
        • 获取设备sdk日志
        • 获取设备命令日志
        • 获取设备影子列表
        • 获取设备状态日志
      • profile
        • 删除设备配置
        • 获取设备配置列表
        • 获取设备配置详情
        • 更新设备配置
      • module
        • version
          • 获取设备模块版本详情
          • 获取设备模块版本列表
      • schema
        • 创建设备物模型
        • 获取设备物模型列表
        • 批量创建设备物模型
        • 批量删除设备物模型
        • 获取设备物模型tsl
        • 更新设备物模型
      • edge
        • 设备使用http协议用云端交互,需要在http头中带上mqtt的账号密码(basic auth)
      • group
        • 将设备加到多个分组中
        • 删除设备所在分组
        • 更新设备所在分组
    • group
      • device
        • 添加分组设备
        • 删除分组设备
        • 更新分组设备
      • info
        • 创建分组
        • 删除分组
        • 获取分组列表
        • 获取分组详情信息
        • 更新分组信息
    • ota
      • firmware
        • device
          • 取消指定任务下的升级
          • 确认升级设备
          • 查询升级设备列表
          • 重试设备升级
        • info
          • 添加升级包
          • 删除升级包
          • 升级包列表
          • 查询升级包
          • 修改升级包
        • job
          • 创建升级任务
          • 获取升级包下的升级任务批次列表
          • 查询指定升级批次的详情
          • 更新升级批次
      • module
        • info
          • 创建模块
          • 删除模块
          • 获取模块列表
          • 查询模块详情
          • 更新模块
    • product
      • category
        • 新增产品品类
        • 删除产品品类
        • 获取产品品类列表
        • 批量导出产品品类
        • 批量导入产品品类
        • 获取产品品类详情
        • 获取产品品类物模型列表
        • 批量新增产品品类物模型
        • 批量删除产品品类物模型
        • 批量更新产品品类物模型
        • 更新产品品类
      • custom
        • 获取产品自定义信息详情
        • 更新产品自定义信息
      • info
        • 新增产品
          POST
        • 删除产品
          POST
        • 获取产品信息列表
          POST
        • 初始化产品
          POST
        • 批量导出产品
          POST
        • 批量导入产品
          POST
        • 获取产品详情
          POST
        • 更新产品
          POST
      • remoteConfig
        • 创建配置
        • 获取配置列表
        • 获取最新配置
        • 推送配置
      • schema
        • 创建产品物模型
        • 删除产品物模型
        • 获取产品物模型
        • 批量创建产品物模型
        • 导入产品物模型tsl
        • 获取产品物模型tsl
        • 更新产品物模型
      • config
        • 更新配置
    • protocol
      • info
        • 新增自定义协议
        • 删除自定义协议
        • 获取自定义协议信息列表
        • 获取自定义协议详情
        • 更新自定义协议
      • service
        • 删除自定义协议服务器
        • 获取自定义协议服务器信息列表
      • script
        • device
          • 新增协议脚本设备
          • 删除协议脚本设备
          • 获取协议脚本设备列表
          • 获取协议脚本设备详情
          • 更新协议脚本设备
        • 新增协议脚本
        • 协议脚本调试
        • 删除协议脚本
        • 获取协议脚本列表
        • 批量导出协议脚本
        • 批量导入协议脚本
        • 获取协议脚本详情
        • 更新协议脚本
      • sync
        • 设备同步(如果该协议不支持会返回不支持)
        • 产品同步(如果该协议不支持会返回不支持)
    • rule
      • alarm
        • info
          • 新增告警
          • 删除告警
          • 获取告警信息列表
          • 获取告警信息
          • 更新告警
        • record
          • 处理告警
          • 获取告警记录列表
        • scene
          • 删除告警和场景的关联
          • 获取告警和场景的关联列表
          • 更新告警和场景的关联
      • scene
        • info
          • 新增场景
          • 删除场景
          • 获取场景信息列表
          • 手动触发场景
          • 获取场景信息详情
          • 更新场景
        • log
          • 获取场景日志列表
      • chain(企业版)
        • detail
          • 获取规则链详情
          • 更新规则链详情
        • group
          • 添加规则链分组
          • 删除规则链分组
          • 获取规则链分组列表
          • 获取规则链分组信息
          • 更新规则链分组
        • info
          • 添加规则链
          • 删除规则链
          • 获取规则链列表
          • 获取规则链信息
          • 更新规则链
        • operate
          • 执行规则链
    • schema
      • common
        • 新增通用物模型
        • 删除通用物模型
        • 获取通用物模型列表
        • 初始化通用物模型
        • 批量导出通用物模型
        • 批量导入通用物模型
        • 更新通用物模型
    • slot
      • area
        • 插槽区域创建
        • 插槽区域更新
      • user
        • 插槽用户订阅
    • user
      • device
        • collect
          • 获取收藏设备列表
          • 批量收藏设备
          • 批量取消收藏设备
        • share
          • 分享设备
          • 取消分享设备
          • 获取分享设备列表
          • 接受批量分享设备
          • 生成批量分享设备二维码
          • 批量取消分享设备
          • 获取批量分享的设备列表
          • 获取分享设备详情
          • 更新分享设备信息
  1. info

新增产品

POST
/api/v1/things/product/info/create
things/product/infothingsProductInfo

请求参数

Header 参数
Ithings-Project-Id
string 
可选
默认值:
{{Ithings-Project-Id}}
Ithings-Token
string 
可选
默认值:
{{iThings-token}}
app-code
string 
可选
默认值:
{{appCode}}
device-id
string 
可选
用户正在使用的设备ID(小程序,ios,安卓的设备ID)
Body 参数application/json
createdTime
string 
创建时间 只读
可选
productID
string 
产品id 只读
可选
productName
string 
产品名称
可选
productImg
string 
产品图片
可选
isUpdateProductImg
boolean 
可选
只有这个参数为true的时候才会更新产品图片,传参为产品图片的file path
authMode
integer <int64>
可选
认证方式:1:账密认证,2:秘钥认证
<= 2
deviceType
integer <int64>
可选
设备类型:1:直连设备,2:网关,3:子设备,4:监控设备
<= 4
deviceSchemaMode
integer <int64>
可选
设备物模型模式:1:手动创建,2:设备自动创建 3: 设备自动创建及上报无定义自动创建 4: 设备自动创建及上报无定义自动创建(数字类型只使用浮点)
<= 4
categoryID
integer <int64>
产品品类
可选
netType
integer <int64>
可选
通讯方式:1:其他,2:wi-fi,3:2G/3G/4G,4:5G,5:BLE,6:LoRaWAN,7:wifi+ble,8:有线网,9:4G+BLE
<= 10
protocolCode
string 
可选
协议code,默认urMqtt,设备下发只会发送给主协议 urMqtt,urHttp,wumei,aliyun,huaweiyun,tuya
subProtocolCode
string 
可选
子协议,主协议和子协议传输类型必须不相同, 设备控制下发只会发送给主协议, 当设备是音视频设备但是控制协议需要单独走的时候就可以把主协议定义为普通协议,子协议定义为音视频协议,这样就能实现音视频走音视频协议,控制走子协议
autoRegister
integer <int64>
可选
动态注册:1:关闭,2:打开,3:打开并自动创建设备
<= 3
secret
string 
可选
动态注册产品秘钥 只读
trialTime
string 
可选
试用时间(单位为天,为0不限制)
desc
string 
描述
可选
tags
array[object (Tag) {2}] 
产品tag
可选
key
string 
必需
value
string 
必需
sceneMode
string 
可选
场景模式 读写类型: r(只读) rw(可读可写) none(不参与场景)
status
integer <int64>
可选
产品状态 1:启用 2:禁用 3:开发中
bindLevel
integer <int64>
可选
绑定级别: 1:强绑定(默认,只有用户解绑之后才能绑定) 2:中绑定(可以通过token强制解绑设备) 3:弱绑定(app可以内部解绑被绑定的设备)
protocolConf
array[object (Tag) {2}] 
协议配置
可选
key
string 
必需
value
string 
必需
subProtocolConf
array[object (Tag) {2}] 
子协议协议配置
可选
key
string 
必需
value
string 
必需
protocol
object (ProtocolInfo) 
可选
id
integer <int64>
可选
name
string 
可选
code
string 
可选
iThings,iThings-thingsboard,wumei,aliyun,huaweiyun,tuya
type
string 
可选
协议类型: 普通设备(默认):normal 音视频:media
transProtocol
string 
可选
传输协议: mqtt,tcp,udp
desc
string 
可选
endpoints
array[string]
可选
etcdKey
string 
可选
isEnableSyncProduct
integer <int64>
必需
是否支持主动同步产品信息
isEnableSyncDevice
integer <int64>
必需
是否支持主动同步设备信息
configFields
array[object (ProtocolConfigField) {6}] 
可选
配置字段列表,没有可以不传
configInfos
array[object (ProtocolConfigInfo) {3}] 
配置列表
可选
productFields
array[object (ProtocolConfigField) {6}] 
可选
产品级的配置字段列表,没有可以不传
deviceFields
array[object (ProtocolConfigField) {6}] 
可选
设备级的配置字段列表,没有可以不传
category
object (ProductCategory) 
可选
id
integer <int64>
可选
parentID
integer <int64>
可选
idPath
array[integer <int64>]
只读
可选
name
string 
可选
desc
string 
描述
可选
headImg
string 
用户头像
可选
isUpdateHeadImg
boolean 
用户头像
可选
isLeaf
integer <int64>
可选
deviceCount
integer <int64>
设备数量
可选
children
array[object (ProductCategory) {10}] 
可选
config
object (ProductConfig) 
可选
productID
string 
必需
devInit
object (DevInit) 
可选
customUi
object 
可选
自定义ui,key是端的类型(web-client mini-client) value是以下类型的对象{version:123(版本号,只读),isUpdateUi:bool(是否更新ui),path:string(前端路径,如果需要修改,需要将isUpdateUi置为true并在这个参数中传入压缩包的filePath)}
示例
{
    "createdTime": "string",
    "productID": "string",
    "productName": "string",
    "productImg": "string",
    "isUpdateProductImg": true,
    "authMode": 2,
    "deviceType": 4,
    "deviceSchemaMode": 4,
    "categoryID": 0,
    "netType": 10,
    "protocolCode": "string",
    "subProtocolCode": "string",
    "autoRegister": 3,
    "secret": "string",
    "trialTime": "string",
    "desc": "string",
    "tags": [
        {
            "key": "string",
            "value": "string"
        }
    ],
    "sceneMode": "string",
    "status": 0,
    "bindLevel": 0,
    "protocolConf": [
        {
            "key": "string",
            "value": "string"
        }
    ],
    "subProtocolConf": [
        {
            "key": "string",
            "value": "string"
        }
    ],
    "protocol": {
        "id": 0,
        "name": "string",
        "code": "string",
        "type": "string",
        "transProtocol": "string",
        "desc": "string",
        "endpoints": [
            "string"
        ],
        "etcdKey": "string",
        "isEnableSyncProduct": 0,
        "isEnableSyncDevice": 0,
        "configFields": [
            {
                "id": 0,
                "group": "string",
                "key": "string",
                "label": "string",
                "isRequired": true,
                "sort": 0
            }
        ],
        "configInfos": [
            {
                "id": 0,
                "config": {},
                "desc": "string"
            }
        ],
        "productFields": [
            {
                "id": 0,
                "group": "string",
                "key": "string",
                "label": "string",
                "isRequired": true,
                "sort": 0
            }
        ],
        "deviceFields": [
            {
                "id": 0,
                "group": "string",
                "key": "string",
                "label": "string",
                "isRequired": true,
                "sort": 0
            }
        ]
    },
    "category": {
        "id": 0,
        "parentID": 0,
        "idPath": [
            0
        ],
        "name": "string",
        "desc": "string",
        "headImg": "string",
        "isUpdateHeadImg": true,
        "isLeaf": 0,
        "deviceCount": 0,
        "children": [
            {}
        ]
    },
    "config": {
        "productID": "string",
        "devInit": {
            "tenantCode": "string",
            "projectID": "string",
            "areaID": "string",
            "deptID": "string"
        }
    },
    "customUi": {}
}

示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location --request POST '/api/v1/things/product/info/create' \
--header 'Ithings-Project-Id: {{Ithings-Project-Id}}' \
--header 'Ithings-Token: {{iThings-token}}' \
--header 'app-code: {{appCode}}' \
--header 'device-id;' \
--header 'Content-Type: application/json' \
--data-raw '{
    "createdTime": "string",
    "productID": "string",
    "productName": "string",
    "productImg": "string",
    "isUpdateProductImg": true,
    "authMode": 2,
    "deviceType": 4,
    "deviceSchemaMode": 4,
    "categoryID": 0,
    "netType": 10,
    "protocolCode": "string",
    "subProtocolCode": "string",
    "autoRegister": 3,
    "secret": "string",
    "trialTime": "string",
    "desc": "string",
    "tags": [
        {
            "key": "string",
            "value": "string"
        }
    ],
    "sceneMode": "string",
    "status": 0,
    "bindLevel": 0,
    "protocolConf": [
        {
            "key": "string",
            "value": "string"
        }
    ],
    "subProtocolConf": [
        {
            "key": "string",
            "value": "string"
        }
    ],
    "protocol": {
        "id": 0,
        "name": "string",
        "code": "string",
        "type": "string",
        "transProtocol": "string",
        "desc": "string",
        "endpoints": [
            "string"
        ],
        "etcdKey": "string",
        "isEnableSyncProduct": 0,
        "isEnableSyncDevice": 0,
        "configFields": [
            {
                "id": 0,
                "group": "string",
                "key": "string",
                "label": "string",
                "isRequired": true,
                "sort": 0
            }
        ],
        "configInfos": [
            {
                "id": 0,
                "config": {},
                "desc": "string"
            }
        ],
        "productFields": [
            {
                "id": 0,
                "group": "string",
                "key": "string",
                "label": "string",
                "isRequired": true,
                "sort": 0
            }
        ],
        "deviceFields": [
            {
                "id": 0,
                "group": "string",
                "key": "string",
                "label": "string",
                "isRequired": true,
                "sort": 0
            }
        ]
    },
    "category": {
        "id": 0,
        "parentID": 0,
        "idPath": [
            0
        ],
        "name": "string",
        "desc": "string",
        "headImg": "string",
        "isUpdateHeadImg": true,
        "isLeaf": 0,
        "deviceCount": 0,
        "children": [
            {}
        ]
    },
    "config": {
        "productID": "string",
        "devInit": {
            "tenantCode": "string",
            "projectID": "string",
            "areaID": "string",
            "deptID": "string"
        }
    },
    "customUi": {}
}'

返回响应

🟢200成功
application/json
A successful response.
Body
code
integer 
返回code
可选
默认值:
200
msg
string 
返回的消息
可选
示例
{
    "code": "200",
    "msg": "string"
}
上一页
更新产品自定义信息
下一页
删除产品
Built with