更新时间:2024-10-23 GMT+08:00

新建数据流转流控策略

功能介绍

应用服务器可调用此接口在物联网平台创建数据流转流控策略。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v5/iot/{project_id}/routing-rule/flowcontrol-policy

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数说明:项目ID。获取方法请参见 获取项目ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数说明:用户Token。通过调用IAM服务获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证

Instance-Id

String

参数说明:实例ID。物理多租下各实例的唯一标识,一般华为云租户无需携带该参数,仅在物理多租场景下从管理面访问API时需要携带该参数。您可以在IoTDA管理控制台界面,选择左侧导航栏“总览”页签查看当前实例的ID。

表3 请求Body参数

参数

是否必选

参数类型

描述

policy_name

String

参数说明:数据流转流控策略名称。

取值范围:长度不超过256,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

description

String

参数说明:用户自定义的数据流转流控策略描述。

取值范围:长度不超过256,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

scope

String

参数说明:流控策略作用域.

取值范围

  • USER:租户级流控策略。

  • CHANNEL:转发通道级流控策略。

  • RULE:转发规则级流控策略。

  • ACTION:转发动作级流控策略。

scope_value

String

参数说明:流控策略作用域附加值。

scope取值为USER时,可不携带该字段,表示租户级流控。

scope取值为CHANNEL时,取值范围:HTTP_FORWARDING、DIS_FORWARDING、OBS_FORWARDING、AMQP_FORWARDING、DMS_KAFKA_FORWARDING。

scope取值为RULE时,该字段为对应的ruleId。

scope取值为ACTION时,该字段为对应的actionId。

limit

Integer

参数说明:数据转发流控大小。单位为tps,取值范围为1~1000的整数,默认为1000.

响应参数

状态码: 201

表4 响应Body参数

参数

参数类型

描述

policy_id

String

参数说明:数据流转流控策略id,用于唯一标识一个数据流转流控策略,在创建数据流转流控策略时由物联网平台分配获得。

policy_name

String

参数说明:数据流转流控策略名称。

取值范围:长度不超过256,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

description

String

参数说明:用户自定义的数据流转流控策略描述。

取值范围:长度不超过256,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。

scope

String

参数说明:流控策略作用域.

取值范围

  • USER:租户级流控策略。

  • CHANNEL:转发通道级流控策略。

  • RULE:转发规则级流控策略。

  • ACTION:转发动作级流控策略。

scope_value

String

参数说明:流控策略作用域附加值。

scope取值为USER时,可不携带该字段,表示租户级流控。

scope取值为CHANNEL时,取值范围:HTTP_FORWARDING、DIS_FORWARDING、OBS_FORWARDING、AMQP_FORWARDING、DMS_KAFKA_FORWARDING。

scope取值为RULE时,该字段为对应的ruleId。

scope取值为ACTION时,该字段为对应的actionId。

limit

Integer

参数说明:数据转发流控大小。单位为tps,取值范围为1~1000的整数,默认为1000.

请求示例

  • 创建数据流转流控策略-实例级流控。

    POST https://{endpoint}/v5/iot/{project_id}/routing-rule/flowcontrol-policy
    
    {
      "policy_name" : "policy_name",
      "description" : "description",
      "scope" : "USER",
      "limit" : 100
    }
  • 创建数据流转流控策略-转发通道级流控。

    POST https://{endpoint}/v5/iot/{project_id}/routing-rule/flowcontrol-policy
    
    {
      "policy_name" : "policy_name",
      "description" : "description",
      "scope" : "CHANNEL",
      "scope_value" : "HTTP_FORWARDING",
      "limit" : 100
    }
  • 创建数据流转流控策略-转发规则级流控。

    POST https://{endpoint}/v5/iot/{project_id}/routing-rule/flowcontrol-policy
    
    {
      "policy_name" : "policy_name",
      "description" : "description",
      "scope" : "RULE",
      "scope_value" : "b0443335-2627-4ebe-bdef-276113646520",
      "limit" : 100
    }
  • 创建数据流转流控策略-转发动作级流控。

    POST https://{endpoint}/v5/iot/{project_id}/routing-rule/flowcontrol-policy
    
    {
      "policy_name" : "policy_name",
      "description" : "description",
      "scope" : "ACTION",
      "scope_value" : "b0443335-2627-4ebe-bdef-276113646520",
      "limit" : 100
    }

响应示例

状态码: 201

Created

{
  "policy_id" : "adadd5cb-6383-4b5b-a65c-f8c92fdf3c34",
  "policy_name" : "policyName",
  "description" : "description",
  "scope" : "CHANNEL",
  "scope_value" : "HTTP_FORWARDING",
  "limit" : 10
}

状态码

状态码

描述

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Internal Server Error

错误码

请参见错误码