1. 接口描述
接口请求域名: teo.tencentcloudapi.com 。
本接口为旧版本创建规则引擎接口,EdgeOne 于 2025 年 1 月 21 日已对规则引擎相关接口全面升级,新版本创建七层加速规则接口详情请参考 CreateL7AccRules。
注意:自 2025 年 1 月 21 日起,旧版接口停止更新迭代,后续新增功能将仅在新版接口中提供,旧版接口支持的原有能力将不受影响。为避免在使用旧版接口时出现数据字段冲突,建议您尽早迁移到新版规则引擎接口。
默认接口请求频率限制:20次/秒。
                推荐使用 API Explorer
            
            点击调试
        
                API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
            
        2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
| 参数名称 | 必选 | 类型 | 描述 | 
|---|---|---|---|
| Action | 是 | String | 公共参数,本接口取值:CreateRule。 | 
| Version | 是 | String | 公共参数,本接口取值:2022-09-01。 | 
| Region | 否 | String | 公共参数,此参数为可选参数。 | 
| ZoneId | 是 | String | 站点 ID。 | 
| RuleName | 是 | String | 规则名称,名称字符串长度 1~255。 | 
| Status | 是 | String | 规则状态,取值有: | 
| Rules.N | 是 | Array of Rule | 规则内容。 | 
| Tags.N | 否 | Array of String | 规则标签。 | 
3. 输出参数
| 参数名称 | 类型 | 描述 | 
|---|---|---|
| RuleId | String | 规则 ID。 | 
| RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 | 
4. 示例
示例1 CreateRule
创建一个规则引擎
输入示例
POST / HTTP/1.1
Host: teo.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateRule
<公共请求参数>
{
    "Status": "disable",
    "Rules": [
        {
            "Actions": [
                {
                    "NormalAction": {
                        "Action": "RangeOriginPull",
                        "Parameters": [
                            {
                                "Name": "Switch",
                                "Values": [
                                    "on"
                                ]
                            }
                        ]
                    }
                },
                {
                    "CodeAction": {
                        "Action": "StatusCodeCache",
                        "Parameters": [
                            {
                                "Name": "CacheTime",
                                "StatusCode": 400,
                                "Values": [
                                    "20"
                                ]
                            }
                        ]
                    }
                },
                {
                    "RewriteAction": {
                        "Action": "ResponseHeader",
                        "Parameters": [
                            {
                                "Action": "set",
                                "Name": "Foo",
                                "Values": [
                                    "Bar"
                                ]
                            },
                            {
                                "Action": "add",
                                "Name": "Hello",
                                "Values": [
                                    "World"
                                ]
                            },
                            {
                                "Action": "del",
                                "Name": "Foo2",
                                "Values": []
                            }
                        ]
                    }
                }
            ],
            "Conditions": [
                {
                    "Conditions": [
                        {
                            "Operator": "equal",
                            "Target": "host",
                            "Values": [
                                "test.vernayang.com"
                            ]
                        }
                    ]
                }
            ]
        }
    ],
    "RuleName": "new_rule01",
    "ZoneId": "zone-qbjifysd"
}输出示例
{
    "Response": {
        "RequestId": "811d2583-310c-41f4-b5e7-abe4074047d4",
        "RuleId": "rule-djuqmq"
    }
}示例2 修改源站为IP域名
规则引擎修改源站为IP域名
输入示例
POST / HTTP/1.1
Host: teo.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateRule
<公共请求参数>
{
    "ZoneId": "zone-2kmrcz5heaw2",
    "RuleName": "test_origin",
    "Status": "enable",
    "Rules": [
        {
            "Conditions": [
                {
                    "Conditions": [
                        {
                            "Operator": "equal",
                            "Target": "host",
                            "IgnoreCase": false,
                            "Values": [
                                "rule.test.cloud"
                            ]
                        },
                        {
                            "Operator": "equal",
                            "Target": "client_country",
                            "IgnoreCase": false,
                            "Values": [
                                "CN"
                            ]
                        }
                    ]
                }
            ],
            "Actions": [
                {
                    "NormalAction": {
                        "Action": "Origin",
                        "Parameters": [
                            {
                                "Name": "Type",
                                "Values": [
                                    "IP_DOMAIN"
                                ]
                            },
                            {
                                "Name": "DomainName",
                                "Values": [
                                    "1.1.1.1"
                                ]
                            },
                            {
                                "Name": "OriginProtocol",
                                "Values": [
                                    "follow"
                                ]
                            },
                            {
                                "Name": "HttpOriginPort",
                                "Values": [
                                    "80"
                                ]
                            },
                            {
                                "Name": "HttpsOriginPort",
                                "Values": [
                                    "443"
                                ]
                            }
                        ]
                    }
                }
            ],
            "SubRules": []
        }
    ]
}输出示例
{
    "Response": {
        "RuleId": "rule-djuqsx",
        "RequestId": "811d2583-310c-41f4-b5e7-abe4074047d4"
    }
}示例3 修改源站为源站组
规则引擎修改源站为源站组
输入示例
POST / HTTP/1.1
Host: teo.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateRule
<公共请求参数>
{
    "ZoneId": "zone-2kmrcz5heaw2",
    "RuleName": "test_origin",
    "Status": "enable",
    "Rules": [
        {
            "Conditions": [
                {
                    "Conditions": [
                        {
                            "Operator": "equal",
                            "Target": "host",
                            "IgnoreCase": false,
                            "Values": [
                                "rule.test.cloud"
                            ]
                        },
                        {
                            "Operator": "equal",
                            "Target": "client_country",
                            "IgnoreCase": false,
                            "Values": [
                                "CN"
                            ]
                        }
                    ]
                }
            ],
            "Actions": [
                {
                    "NormalAction": {
                        "Action": "Origin",
                        "Parameters": [
                            {
                                "Name": "Type",
                                "Values": [
                                    "OriginGroup"
                                ]
                            },
                            {
                                "Name": "OriginGroupId",
                                "Values": [
                                    "origin-ff7e677b-2c4d-11ee-9687-525400521111"
                                ]
                            },
                            {
                                "Name": "OriginProtocol",
                                "Values": [
                                    "follow"
                                ]
                            },
                            {
                                "Name": "HttpOriginPort",
                                "Values": [
                                    "80"
                                ]
                            },
                            {
                                "Name": "HttpsOriginPort",
                                "Values": [
                                    "443"
                                ]
                            }
                        ]
                    }
                }
            ],
            "SubRules": []
        }
    ]
}输出示例
{
    "Response": {
        "RuleId": "rule-djuq9s",
        "RequestId": "811d2583-310c-41f4-b5e7-abe407404sdsd"
    }
}示例4 修改源站为负载均衡
规则引擎修改源站为负载均衡
输入示例
POST / HTTP/1.1
Host: teo.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateRule
<公共请求参数>
{
    "ZoneId": "zone-2kmrcz5heaw2",
    "RuleName": "test_origin",
    "Status": "enable",
    "Rules": [
        {
            "Conditions": [
                {
                    "Conditions": [
                        {
                            "Operator": "equal",
                            "Target": "host",
                            "IgnoreCase": false,
                            "Values": [
                                "rule.test.cloud"
                            ]
                        },
                        {
                            "Operator": "equal",
                            "Target": "client_country",
                            "IgnoreCase": false,
                            "Values": [
                                "CN"
                            ]
                        }
                    ]
                }
            ],
            "Actions": [
                {
                    "NormalAction": {
                        "Action": "Origin",
                        "Parameters": [
                            {
                                "Name": "Type",
                                "Values": [
                                    "LoadBalance"
                                ]
                            },
                            {
                                "Name": "OriginGroupId",
                                "Values": [
                                    "lb-ff7e677b-2c4d-11ee-9687"
                                ]
                            },
                            {
                                "Name": "OriginProtocol",
                                "Values": [
                                    "follow"
                                ]
                            },
                            {
                                "Name": "HttpOriginPort",
                                "Values": [
                                    "80"
                                ]
                            },
                            {
                                "Name": "HttpsOriginPort",
                                "Values": [
                                    "443"
                                ]
                            }
                        ]
                    }
                }
            ],
            "SubRules": []
        }
    ]
}输出示例
{
    "Response": {
        "RuleId": "rule-djuq91",
        "RequestId": "811d2583-310c-41f4-b5e7-abe407404xs"
    }
}示例5 修改源站为S3对象存储
规则引擎修改源站为S3兼容的对象存储
输入示例
POST / HTTP/1.1
Host: teo.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateRule
<公共请求参数>
{
    "ZoneId": "zone-2kmrcz5heaw2",
    "RuleName": "test_origin",
    "Status": "enable",
    "Rules": [
        {
            "Conditions": [
                {
                    "Conditions": [
                        {
                            "Operator": "equal",
                            "Target": "host",
                            "IgnoreCase": false,
                            "Values": [
                                "rule.test.cloud"
                            ]
                        },
                        {
                            "Operator": "equal",
                            "Target": "client_country",
                            "IgnoreCase": false,
                            "Values": [
                                "CN"
                            ]
                        }
                    ]
                }
            ],
            "Actions": [
                {
                    "NormalAction": {
                        "Action": "Origin",
                        "Parameters": [
                            {
                                "Name": "Type",
                                "Values": [
                                    "AWS_S3"
                                ]
                            },
                            {
                                "Name": "ServerName",
                                "Values": [
                                    "bucke_name.gcp.storage.com"
                                ]
                            },
                            {
                                "Name": "PrivateAccess",
                                "Values": [
                                    "on"
                                ]
                            },
                            {
                                "Name": "AccessKeyId",
                                "Values": [
                                    "xxxx******xxxx"
                                ]
                            },
                            {
                                "Name": "SecretAccessKey",
                                "Values": [
                                    "xxxx******xxxx"
                                ]
                            },
                            {
                                "Name": "SignatureVersion",
                                "Values": [
                                    "v4"
                                ]
                            },
                            {
                                "Name": "Region",
                                "Values": [
                                    "ap-guangzhou"
                                ]
                            }
                        ]
                    }
                }
            ],
            "SubRules": []
        }
    ]
}输出示例
{
    "Response": {
        "RuleId": "rule-djuq23",
        "RequestId": "811d2583-310c-41f4-b5e7-abe407404sxsd"
    }
}示例6 修改源站为COS对象存储
规则引擎修改源站为COS对象存储
输入示例
POST / HTTP/1.1
Host: teo.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateRule
<公共请求参数>
{
    "ZoneId": "zone-2kmrcz5heaw2",
    "RuleName": "test_origin",
    "Status": "enable",
    "Rules": [
        {
            "Conditions": [
                {
                    "Conditions": [
                        {
                            "Operator": "equal",
                            "Target": "host",
                            "IgnoreCase": false,
                            "Values": [
                                "rule.test.cloud"
                            ]
                        },
                        {
                            "Operator": "equal",
                            "Target": "client_country",
                            "IgnoreCase": false,
                            "Values": [
                                "CN"
                            ]
                        }
                    ]
                }
            ],
            "Actions": [
                {
                    "NormalAction": {
                        "Action": "Origin",
                        "Parameters": [
                            {
                                "Name": "Type",
                                "Values": [
                                    "COS"
                                ]
                            },
                            {
                                "Name": "ServerName",
                                "Values": [
                                    "bucke_name.gcp.storage.com"
                                ]
                            },
                            {
                                "Name": "CosPrivateAccess",
                                "Values": [
                                    "on"
                                ]
                            }
                        ]
                    }
                }
            ],
            "SubRules": []
        }
    ]
}输出示例
{
    "Response": {
        "RuleId": "rule-djuq21",
        "RequestId": "811d2583-310c-41f4-b5e7-abe407404hs"
    }
}5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Java: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for PHP: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Go: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Node.js: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for .NET: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for C++: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Ruby: CNB, GitHub, Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
| 错误码 | 描述 | 
|---|---|
| FailedOperation | 操作失败。 | 
| InternalError.ConfigLocked | 配置已被锁定,请解除配置锁定之后在重试。 | 
| InternalError.ProxyServer | 后端服务器发生未知错误。 | 
| InternalError.SystemError | 内部错误-系统错误。 | 
| InvalidParameter.AccessRedirectRegexError | 正则表达式非标准RE2格式。 | 
| InvalidParameter.ActionInProgress | 操作频繁,请稍后重试。 | 
| InvalidParameter.CertSystemError | 内部错误。 | 
| InvalidParameter.ErrActionUnsupportTarget | 操作不支持条件。 | 
| InvalidParameter.ErrInvalidAction | 非法操作。 | 
| InvalidParameter.ErrInvalidActionOriginPrivateAddress | 无效的规则引擎操作,源站IP不支持内网IP或回环地址。 | 
| InvalidParameter.ErrInvalidActionParam | 非法操作-非法参数。 | 
| InvalidParameter.ErrInvalidActionParamAction | 非法操作-非法参数-无效action。 | 
| InvalidParameter.ErrInvalidActionParamBadValueType | 非法操作-非法参数-无效参数值类型。 | 
| InvalidParameter.ErrInvalidActionParamDuplicateName | 非法操作-非法参数-参数名重复。 | 
| InvalidParameter.ErrInvalidActionParamName | 非法操作-非法参数-无效参数值类型。 | 
| InvalidParameter.ErrInvalidActionParamValue | 非法操作-非法参数-无效参数值。 | 
| InvalidParameter.ErrInvalidActionType | 非法操作-非法类型。 | 
| InvalidParameter.ErrInvalidCondition | 非法条件。 | 
| InvalidParameter.ErrInvalidConditionCannotOnlyContainHostWhenModifyOriginActionConfigured | 修改源站操作不能仅配置host匹配类型。 | 
| InvalidParameter.ErrInvalidConditionIgnoreCase | 非法条件-非法忽略大小写。 | 
| InvalidParameter.ErrInvalidConditionNameBadName | 非法条件-非法参数名称-无效的参数名称。 | 
| InvalidParameter.ErrInvalidConditionNameTargetNotSupportName | 非法条件-非法参数名称-匹配类型不支持参数名称。 | 
| InvalidParameter.ErrInvalidConditionValueBadRegular | 非法条件-非法参数值-无效的正则表达式。 | 
| InvalidParameter.ErrInvalidConditionValueBadUrl | 非法条件-非法参数值-无效的url。 | 
| InvalidParameter.ErrInvalidConditionValueBadValue | 非法条件-非法参数值-无效的参数值。 | 
| InvalidParameter.ErrInvalidConditionValueBadValueContainFileNameExtension | 非法条件-非法参数值-无效的参数值-文件名不应包含文件后缀。 | 
| InvalidParameter.ErrInvalidConditionValueTooLongValue | 非法条件-非法参数值-参数值长度超出限制。 | 
| InvalidParameter.ErrInvalidConditionValueTooManyRegular | 非法条件-非法参数值-正则表达式数量超出限制。 | 
| InvalidParameter.ErrInvalidConditionValueTooManyValues | 非法条件-非法参数值-参数值数量超出限制。 | 
| InvalidParameter.ErrInvalidConditionValueTooManyWildcard | 非法条件-非法参数值-通配符数量超出限制。 | 
| InvalidParameter.ErrInvalidConditionValueZeroLength | 非法条件-非法参数值-参数值数量为0。 | 
| InvalidParameter.ErrNilCondition | 条件为空。 | 
| InvalidParameter.GrpcRequireHttp2 | 开启 Grpc 协议支持需要同时开启 HTTP/2 协议支持。 | 
| InvalidParameter.HostNotFound | 域名不存在。 | 
| InvalidParameter.InvalidAuthentication | 无效的token鉴权。 | 
| InvalidParameter.InvalidAuthenticationTypeExpireTime | 无效的token鉴权过期时间。 | 
| InvalidParameter.InvalidAuthenticationTypeSignParam | 无效的token鉴权参数。 | 
| InvalidParameter.InvalidAwsRegion | 请正确填写地域作为第三方对象存储私有访问参数。 | 
| InvalidParameter.InvalidBackupServerName | 无效的备源回源Host。 | 
| InvalidParameter.InvalidCacheConfigCache | 无效的节点缓存。 | 
| InvalidParameter.InvalidCacheKey | 无效的缓存键。 | 
| InvalidParameter.InvalidCacheKeyQueryStringValue | 无效的查询字符串。 | 
| InvalidParameter.InvalidCacheTime | 无效的节点缓存时间。 | 
| InvalidParameter.InvalidClientIpHeaderName | 无效的客户端IP请求头。 | 
| InvalidParameter.InvalidDynamicRoutine | 无效的智能加速。 | 
| InvalidParameter.InvalidDynamicRoutineBilling | 套餐包不支持智能加速配置。 | 
| InvalidParameter.InvalidErrorPageRedirectUrl | 无效的自定义错误页面。 | 
| InvalidParameter.InvalidHttpsCipherSuiteAndTlsVersion | 加密套件与TLS版本不匹配。 | 
| InvalidParameter.InvalidHttpsHstsMaxAge | 无效的HTTPS HSTS。 | 
| InvalidParameter.InvalidIpv6Switch | 无效的Ipv6开关配置。 | 
| InvalidParameter.InvalidMaxAgeTime | 无效的浏览器缓存。 | 
| InvalidParameter.InvalidOrigin | 无效的源站。 | 
| InvalidParameter.InvalidParameter | 参数错误。 | 
| InvalidParameter.InvalidPostSizeValue | 无效的最大上传大小。 | 
| InvalidParameter.InvalidRangeOriginPull | 无效的分片回源。 | 
| InvalidParameter.InvalidRequestHeaderName | 无效的请求头header。 | 
| InvalidParameter.InvalidRequestHeaderNameXff | x-forwarded-for 请求头配置无效 | 
| InvalidParameter.InvalidRequestHeaderValue | 无效的请求头header。 | 
| InvalidParameter.InvalidResponseHeaderName | 无效的响应头header。 | 
| InvalidParameter.InvalidResponseHeaderValue | 无效的响应头header。 | 
| InvalidParameter.InvalidRuleEngineAction | 无效的规则引擎操作。 | 
| InvalidParameter.InvalidRuleEngineTarget | 无效的规则引擎条件。 | 
| InvalidParameter.InvalidRuleEngineTargetsExtension | 无效的规则引擎文件后缀条件。 | 
| InvalidParameter.InvalidRuleEngineTargetsUrl | 无效的规则引擎URL条件。 | 
| InvalidParameter.InvalidServerName | 无效的回源Host。 | 
| InvalidParameter.InvalidStandardDebugExpireTimeLimit | 有效期超过限制。 | 
| InvalidParameter.InvalidUpstreamRequestQueryStringValue | 无效的回源请求参数设置-无效查询字符串值。 | 
| InvalidParameter.InvalidUrlRedirect | 无效的URL重写。 | 
| InvalidParameter.InvalidUrlRedirectHost | URL重写的目标HOST无效。 | 
| InvalidParameter.InvalidUrlRedirectUrl | URL重写的目标URL无效。 | 
| InvalidParameter.InvalidWebSocketTimeout | 无效的WebSocket。 | 
| InvalidParameter.KeyRulesInvalidQueryStringValue | 无效的缓存键。 | 
| InvalidParameter.LoadBalanceInstanceIdIsRequired | 修改源站操作中负载均衡实例Id必填。 | 
| InvalidParameter.NotSupportThisPreset | 操作配置存在不支持的预设变量。 | 
| InvalidParameter.OriginOriginGroupIdIsRequired | 修改源站操作中源站组Id必填。 | 
| InvalidParameter.PostMaxSizeLimitExceeded | 最大上传大小超出限制 | 
| InvalidParameter.TaskSystemError | 内部错误。 | 
| InvalidParameterValue.FormatMismatch | 格式不匹配。 | 
| InvalidParameterValue.GeneralMismatch | 配置参数格式不匹配。 | 
| InvalidParameterValue.IncludeInvalidValue | 包含无效的值。 | 
| InvalidParameterValue.MissingNecessaryParam | 缺少必要配置参数。 | 
| InvalidParameterValue.NotInEnumeration | 值不在要求的集合内。 | 
| InvalidParameterValue.NotWithinRange | 值不在指定范围。 | 
| InvalidParameterValue.RegExMismatch | 不符合指定的正则表达式。 | 
| InvalidParameterValue.UnrecognizableValue | 配置项错误。 | 
| LimitExceeded | 超过配额限制。 | 
| OperationDenied | 操作被拒绝。 | 
| OperationDenied.AccelerateMainlandMultiplyLayerConflict | 当前站点下存在域名功能与中国大陆网络优化冲突,不能同时配置。 | 
| OperationDenied.ErrZoneIsAlreadyPaused | 站点处于停用状态,请开启后重试。 | 
| OperationDenied.InvalidAdvancedDefenseSecurityType | 开启高防时必须保证安全是开启状态。 | 
| ResourceInUse | 资源被占用。 | 
| UnauthorizedOperation.CamUnauthorized | Cam 未授权。 |