跳转到主要内容
POST
/
route
/
upsert
创建或更新路由规则
curl --request POST \
  --url 'https://api.flashcat.cloud/route/upsert?app_key=' \
  --header 'Content-Type: application/json' \
  --data '
{
  "integration_id": 6113996590131,
  "cases": [
    {
      "if": [
        {
          "key": "severity",
          "oper": "IN",
          "vals": [
            "Critical"
          ]
        }
      ],
      "channel_ids": [
        3521074710131
      ],
      "fallthrough": false,
      "routing_mode": "standard"
    }
  ],
  "default": {
    "channel_ids": [
      3521074710131
    ]
  }
}
'
{
  "request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
  "data": {}
}

限制说明

项目说明
速率限制每个账户 1,000 次/分钟50 次/秒
权限要求无 —— 持有有效的 app_key 即可调用

授权

app_key
string
query
必填

在 Flashduty 控制台 账户 → APP Key 中签发的 app_key。调用任何公开 API 时都必须携带。它等同于所属账户的身份凭证,请妥善保管。

请求体

application/json

创建或更新集成路由规则的参数。当指定集成尚无规则时执行创建,否则覆盖原有规则。casesdefault 至少需要提供其一。

integration_id
integer<int64>
必填

所属集成 ID。

cases
object[]

有序的 case 分支列表,自上而下依次匹配。

sections
object[]

可选的分区,用于将连续的 case 进行视觉分组。

default
object

默认分支。当所有 case 均未命中(或命中的 case 没有有效协作空间)时使用。

version
integer<int64>

用于乐观并发控制的当前版本号,传入最近一次读取时返回的值。

响应

成功

成功响应结构。2xx 响应中 request_id 标识本次调用(同时出现在 Flashcat-Request-Id 响应头中),data 为接口业务 payload。失败响应使用不同结构,参见 ErrorResponse

request_id
string
必填

本次请求的唯一 ID,也会在 Flashcat-Request-Id 响应头中返回。反馈问题时请一并附上。

示例:

"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"

data
object
必填

空响应体。成功时服务端返回 data: null