跳转到主要内容
POST
/
safari
/
automation
/
rule
/
create
创建自动化规则
curl --request POST \
  --url 'https://api.flashcat.cloud/safari/automation/rule/create?app_key=' \
  --header 'Content-Type: application/json' \
  --data @- <<EOF
{
  "name": "Weekly on-call review",
  "team_id": 123,
  "enabled": true,
  "cron_expr": "0 9 * * 1",
  "schedule_trigger_enabled": true,
  "prompt": "Summarize last week's alert noise and escalation load.",
  "http_post_trigger_enabled": true,
  "oncall_incident_trigger_enabled": true,
  "oncall_incident_channel_ids": [
    456
  ],
  "oncall_incident_severities": [
    "Critical",
    "Warning"
  ]
}
EOF
{
  "request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
  "data": {
    "rule_id": "auto_7NnLzY2Qp8xS4kUaV3mR6b",
    "account_id": 10023,
    "team_id": 123,
    "owner_id": 80011,
    "name": "Weekly on-call review",
    "enabled": true,
    "run_scope": "team",
    "cron_expr": "0 9 * * 1",
    "prompt": "Summarize last week's alert noise and escalation load.",
    "environment_kind": "",
    "environment_id": "",
    "schedule_trigger_id": "autotrg_6aKp3wT9mQ2xVc8bR1nY7z",
    "schedule_trigger_enabled": true,
    "http_post_trigger_id": "autotrg_2bLq4xT8mP1sWd9cN3rF6y",
    "http_post_trigger_url": "/safari/automation/triggers/autotrg_2bLq4xT8mP1sWd9cN3rF6y/fire",
    "http_post_trigger_enabled": true,
    "can_edit": true,
    "created_at": 1780367971228,
    "updated_at": 1780367971228,
    "http_post_token": "sat_yQ9p8V7n6M5k4J3h2G1f0E9d8C7b6A5z4Y3x2W1v0U",
    "schedule_next_fire_at_ms": 1780630800000,
    "oncall_incident_trigger_id": "autotrg_9cVb2mN7qKs4dEa8T1rY5p",
    "oncall_incident_trigger_enabled": true,
    "oncall_incident_channel_ids": [
      456
    ],
    "oncall_incident_severities": [
      "Critical",
      "Warning"
    ]
  }
}

调用限制

速率限制1,000 次/分钟50 次/秒 每账户
权限有效 app_key;管理操作要求调用者可管理目标规则

使用说明

  • 可以创建个人规则,也可以创建当前 account 下任意团队规则;team_id 创建后不可修改。
  • 列表可见性与 Session 列表对齐:Owner / 管理员可见全部;普通成员可见自己创建的规则和自己团队的规则。
  • http_post_token 只在创建或轮换 token 的响应中返回,请立即保存。
  • 如需由 On-call 故障触发,传入 oncall_incident_trigger_enabledoncall_incident_channel_idsoncall_incident_severities;匹配事件会以 oncall_incident 运行。

授权

app_key
string
query
必填

App key issued from the Flashduty console. Required on every public API call. Keep it secret — it grants the same access as the owning account.

请求体

application/json

创建自动化规则。

name
string
必填

规则名称。

Required string length: 1 - 255
cron_expr
string
必填

运行周期。支持 4 段 hour day month weekday,会补 minute=0;也支持 5 段 minute hour day month weekday。分钟必须是固定整数,秒级 6 段不支持。创建 API 当前要求该字段,即使只启用 HTTP POST trigger,也要提供一个有效 cron 并把 schedule_trigger_enabled 设为 false。

示例:

"15 9 * * *"

prompt
string
必填

每次运行发给 AI SRE Agent 的任务提示词。

Minimum string length: 1
team_id
integer<int64>

作用域团队 ID。0 或省略表示个人规则;>0 表示账户下某团队。创建后不可修改。

必填范围: x >= 0
enabled
boolean

规则创建后是否启用。API 省略时为 false;Chat/CLI 入口会默认发送 true,除非用户要求禁用。

schedule_trigger_enabled
boolean | null

是否启用 schedule trigger。省略时为 true;HTTP-POST-only 规则应传 false。

environment_kind
enum<string>

运行环境类型。省略或空字符串表示自动选择。

可用选项:
,
cloud,
byoc
environment_id
string

BYOC Runner ID。仅 environment_kind=byoc 时使用。

http_post_trigger_enabled
boolean

是否创建并启用 HTTP POST trigger。启用时响应里会返回一次性 token。

oncall_incident_trigger_enabled
boolean

是否启用 On-call 故障触发器。

oncall_incident_channel_ids
integer<int64>[]

监听的 On-call 集成 ID 列表;创建或启用该触发器时至少需要一个有效 ID。

必填范围: x >= 1
oncall_incident_severities
enum<string>[]

监听的故障严重程度,支持 Critical、Warning 和 Info;创建或启用该触发器时至少需要一个值。

可用选项:
Critical,
Warning,
Info

响应

Success

Standard response envelope used by every Flashduty public API. On success data contains the endpoint-specific payload and error is absent. On failure error is present and data is absent. request_id is always present and is also mirrored in the Flashcat-Request-Id response header.

request_id
string
必填

Unique ID for this request. Mirrored in the Flashcat-Request-Id header. Include it when reporting issues.

示例:

"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"

error
object

Error payload inside the response envelope. Present only on non-2xx responses.

data
object

自动化规则。