使用 Rulesets API 创建自定义规则集。 使用 Create an account or zone ruleset 操作创建自定义规则集时,请确保:
- 将
kind字段设为custom。 - 在
phase字段中指定要创建自定义规则集的 阶段 名称。
你也可以在 rules 数组中指定要包含在自定义规则集中的规则列表。创建自定义规则集后再添加规则,请参阅 向自定义规则集添加规则。
如果您正在使用 Terraform,请参阅使用 Terraform 配置 WAF 自定义规则,了解创建和部署自定义规则集的示例。
如果您正在使用 Cloudflare 仪表板,请参阅在仪表板中使用自定义规则集。
以下请求在账户级别创建新的自定义规则集。响应将在 id 字段中包含新自定义规则集的 ID。
Required API token permissions
At least one of the following token permissions is required:Mass URL Redirects WriteMagic Firewall WriteL4 DDoS Managed Ruleset WriteTransform Rules WriteSelect Configuration WriteAccount WAF WriteAccount Rulesets WriteLogs Write
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Custom Ruleset 1",
"description": "My First Custom Ruleset (account)",
"kind": "custom",
"phase": "http_request_firewall_custom"
}'{
"result": {
"id": "f82ccda3d21f4a02825d3fe45b5e1c10",
"name": "Custom Ruleset 1",
"description": "My First Custom Ruleset (account)",
"kind": "custom",
"version": "1",
"last_updated": "2025-08-09T10:27:30.636197Z",
"phase": "http_request_firewall_custom"
},
"success": true,
"errors": [],
"messages": []
}你可以在创建自定义规则集的请求中包含规则列表。如果尚未添加任何规则,请参阅 向自定义规则集添加规则 了解更多信息。
以下请求在 zone 级别创建新的自定义规则集。响应将在 id 字段中包含新自定义规则集的 ID。
Required API token permissions
At least one of the following token permissions is required:Response Compression WriteConfig Settings WriteDynamic URL Redirects WriteCache Settings WriteCustom Errors WriteOrigin WriteManaged headers WriteZone Transform Rules WriteMass URL Redirects WriteMagic Firewall WriteL4 DDoS Managed Ruleset WriteHTTP DDoS Managed Ruleset WriteSanitize WriteTransform Rules WriteSelect Configuration WriteBot Management WriteZone WAF WriteAccount WAF WriteAccount Rulesets WriteLogs WriteLogs Write
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Custom Ruleset 1",
"description": "My First Custom Ruleset (zone)",
"kind": "custom",
"phase": "http_request_firewall_custom"
}'{
"result": {
"id": "f82ccda3d21f4a02825d3fe45b5e1c10",
"name": "Custom Ruleset 1",
"description": "My First Custom Ruleset (zone)",
"kind": "custom",
"version": "1",
"last_updated": "2025-08-09T10:27:30.636197Z",
"phase": "http_request_firewall_custom"
},
"success": true,
"errors": [],
"messages": []
}你可以在创建自定义规则集的请求中包含规则列表。如果尚未添加任何规则,请参阅 向自定义规则集添加规则 了解更多信息。