Skip to main content

创建 Hooks 规则接口

为一个 Agent 事件创建 Hook 配置,提交名称、事件、JSON 配置数组和启用状态。同一组织内名称不能重复,每个事件只能有一组配置;保存成功不代表数组中的命令已执行验证。

  • Scope:admin.v1.hooks.manage
  • 权限项:Hooks 规则管理(hooks)
  • 权限类型:管理
  • 接口:POST/api/openapi/v1/hook-policies

认证与请求头

使用应用 API Key 调用。当前接口只校验上方独立 Scope;读取、管理与执行权限互不隐含。
名称位置类型必填说明示例
Authorizationheaderstring是应用 API Key,使用 Bearer 方式传递。Bearer qwk_***
X-Request-Idheaderstring否可选的调用追踪标识;未传入时由服务端生成。req-20260831-001

请求参数

名称位置类型必填说明示例
Idempotency-Keyheaderstring必填幂等键,用于避免重复提交"<string>"
configbodyany必填规则配置-
descriptionbodystring必填策略说明"<string>"
enabledbodyboolean | null必填启用状态false
event_namebodystring必填触发时机"SessionStart"
namebodystring必填策略组名称"<string>"
event_name 支持以下 12 种稳定事件名:SessionStart、PreUserPromptSubmit、UserPromptSubmit、PreToolUse、PostToolUse、Stop、PreCompact、PostCompact、ConnectorAdded、ExpertSuiteAdded、SkillAdded、Notification。事件名区分大小写,每个组织内同一事件最多配置一个策略组;未知事件会被拒绝。

config[] 字段

以下必填性针对对象存在时的子字段;父对象可否省略或为 null,以上层字段表为准。
字段类型必填说明
[]any否元素可为任意 JSON 值;服务端只校验顶层为数组,不定义固定子字段

请求示例

curl --request POST \
  --url 'https://example.invalid/api/openapi/v1/hook-policies' \
  --header 'Authorization: Bearer <API_KEY>' \
  --header 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  --header 'Content-Type: application/json' \
  --data '{
  "config": [],
  "description": "<string>",
  "enabled": false,
  "event_name": "SessionStart",
  "name": "<string>"
}'

响应

201 Created

名称类型必填说明示例
configany是规则配置-
created_atstring · date-time是创建时间"2026-08-27T10:00:00Z"
descriptionstring是策略说明"<string>"
enabledboolean是启用状态false
event_namestring是触发时机"<string>"
idstring是策略组 ID"<string>"
namestring是策略组名称"<string>"
updated_atstring · date-time是更新时间"2026-08-27T10:00:00Z"

config[] 字段

以下必填性针对对象存在时的子字段;父对象可否省略或为 null,以上层字段表为准。
字段类型必填说明
[]any否元素可为任意 JSON 值;服务端只校验顶层为数组,不定义固定子字段
{
  "config": [],
  "created_at": "2026-08-27T10:00:00Z",
  "description": "<string>",
  "enabled": false,
  "event_name": "<string>",
  "id": "<string>",
  "name": "<string>",
  "updated_at": "2026-08-27T10:00:00Z"
}

default Flat business error

名称类型必填说明示例
codestring否Stable business error code"<string>"
detailstring是Human-readable error description"<string>"
detailsOpenapiErrorDetails否错误详情-
errorstring是Stable HTTP error type"<string>"

details 字段

以下必填性针对对象存在时的子字段;父对象可否省略或为 null,以上层字段表为准。
字段类型必填说明
fieldstring否校验失败的请求字段
reasonstring否校验失败的原因代码
suggestionstring否建议使用的规范化值
{
  "code": "<string>",
  "detail": "<string>",
  "details": {
    "field": "<string>",
    "reason": "<string>",
    "suggestion": "<string>"
  },
  "error": "<string>"
}