更新时间:2024-07-03 GMT+08:00

添加产品主题

功能介绍

添加产品主题。

URI

POST /v2/{project_id}/link/instances/{instance_id}/products/{product_id}/topics

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方式请参见API参考的“附录 > 获取项目ID”章节。

最小长度:0

最大长度:32

instance_id

String

实例ID。

最小长度:0

最大长度:36

product_id

Integer

产品ID。

最小值:0

最大值:99999999999999999

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

最小长度:1

最大长度:100000

表3 请求Body参数

参数

是否必选

参数类型

描述

permission

Integer

主题权限 0-发布 1-订阅。

最小值:0

最大值:1

name

String

产品级主题名称。 Topic类格式必须以“/”进行分层,区分每个类目。其中第一个为用户自定义的版本号;第二个已经规定好,为${deviceId}通配设备ID;第三个为用户自定义的Topic类名(即本字段)。Topic类组成即为:/${version}/${deviceId}/${customizePart}。简单来说,Topic类:/v1/${deviceId}/customizePart是具体Topic:/v1/deviceid1/customizePart1和/v1/deviceid2/customizePart2等的集合。

最小长度:0

最大长度:64

version

String

版本号,输入2-50个字符。值以字母或数字开头和结尾。仅允许使用字母、数字、中划线和点号。

最小长度:0

最大长度:64

description

String

描述。

最小长度:0

最大长度:200

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

product_id

Integer

归属产品ID。

最小值:1

最大值:99999999999999999

topic_id

String

产品主题ID。

最小长度:1

最大长度:99999999999999999

permission

Integer

主题权限,0-发布,1-订阅。

最小值:0

最大值:10

topic_name

String

主题名称。

最小长度:0

最大长度:64

version

String

版本号。

最小长度:0

最大长度:10

description

String

描述。

最小长度:0

最大长度:200

状态码: 400

表5 响应Body参数

参数

参数类型

描述

error_code

String

系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。

最小长度:0

最大长度:64

error_msg

String

错误描述。

最小长度:0

最大长度:200

request_id

String

消息ID。

最小长度:0

最大长度:64

状态码: 404

表6 响应Body参数

参数

参数类型

描述

error_code

String

系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。

最小长度:0

最大长度:64

error_msg

String

错误描述。

最小长度:0

最大长度:200

request_id

String

消息ID。

最小长度:0

最大长度:64

状态码: 500

表7 响应Body参数

参数

参数类型

描述

error_code

String

系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。

最小长度:0

最大长度:64

error_msg

String

错误描述。

最小长度:0

最大长度:200

request_id

String

消息ID。

最小长度:0

最大长度:64

请求示例

为指定产品添加Topic,权限为发布权限。

{
  "permission" : 0,
  "name" : "datas",
  "version" : "v1",
  "description" : "/v1/${deviceId}/datas"
}

响应示例

状态码: 200

Created

{
  "product_id" : 122888,
  "topic_id" : "17",
  "permission" : 1,
  "topic_name" : "/3.0/${deviceId}/t1",
  "version" : "3.0",
  "description" : "description"
}

状态码: 400

Bad Request

{
  "error_code" : "SCB.00000000",
  "error_msg" : "Parameter is not valid for operation [romalink.link-product-topic.createProductTopic]. Parameter is [productId]. Processor is [path].",
  "request_id" : "cb39e78a-afd3-4e04-901d-70468b1c23dc-1619602712496-cnnorth7a-P-romalink-service01"
}

状态码: 404

Not Found

{
  "error_code" : "ROMA.00110006",
  "error_msg" : "The resource does not exist. Check whether the resource ID ff38023c-0854-4779-847d-72528e1f5da5 is correct.",
  "request_id" : "72b07918-f6a2-4721-81bf-f3fd5486025e-1619663576836-cnnorth7a-P-romalink-service01"
}

状态码: 500

Internal Server Error

{
  "error_code" : "ROMA.00110002",
  "error_msg" : "The instance does not exist. project_id: 397cd10b30544c588b2f4a56d83856c4, instance_id: f3bb386a-23ec-47aa-9943-4c60ac658611",
  "request_id" : "c8c06d0a-be92-4fdf-9d10-bc20131ab158-1619593104919-cnnorth7a-P-romalink-service01"
}

状态码

状态码

描述

200

Created

400

Bad Request

404

Not Found

500

Internal Server Error

错误码

请参见错误码