API 文档
  • History
  • Introduction
  • API Category
  • Making API Requests
    • Request Structure
    • Common Params
    • Signature v3
    • Signature
    • Responses
  • Site APIs
    • CreateZone
    • DescribeIdentifications
    • ModifyZone
    • DeleteZone
    • ModifyZoneStatus
    • CheckCnameStatus
    • IdentifyZone
    • DescribeZones
    • VerifyOwnership
    • 导出区域配置
    • 导入区域配置
    • 描述区域配置导入结果
  • Acceleration Domain Management APIs
    • CreateAccelerationDomain
    • DescribeAccelerationDomains
    • ModifyAccelerationDomain
    • ModifyAccelerationDomainStatuses
    • DeleteAccelerationDomains
    • CreateSharedCNAME
    • BindSharedCNAME
    • DeleteSharedCNAME
  • Site Acceleration Configuration APIs
    • CreateRule
    • DeleteRules
    • DescribeHostsSetting
    • DescribeRules
    • DescribeRulesSetting
    • DescribeZoneSetting
    • ModifyRule
    • ModifyZoneSetting
  • 边缘函数API
    • 创建函数
    • 描述函数
    • 修改函数
    • 创建函数规则
    • 删除函数
    • 描述函数规则
    • 修改函数规则
    • 修改函数规则优先级
    • 删除函数规则
    • 描述函数运行时环境
    • 处理函数运行时环境
  • Alias Domain APIs
    • CreateAliasDomain
    • DescribeAliasDomains
    • ModifyAliasDomain
    • ModifyAliasDomainStatus
    • DeleteAliasDomain
  • Security Configuration APIs
    • CreateSecurityIPGroup
    • DescribeSecurityIPGroup
    • ModifySecurityIPGroup
    • DeleteSecurityIPGroup
    • DescribeOriginProtection
    • DescribeSecurityTemplateBindings
    • ModifySecurityPolicy
    • BindSecurityTemplateToEntity
    • DescribeSecurityIPGroupInfo
  • Layer 4 Application Proxy APIs
    • CreateL4Proxy
    • ModifyL4Proxy
    • ModifyL4ProxyStatus
    • DescribeL4Proxy
    • DeleteL4Proxy
    • CreateL4ProxyRules
    • ModifyL4ProxyRules
    • ModifyL4ProxyRulesStatus
    • DescribeL4ProxyRules
    • DeleteL4ProxyRules
    • CreateApplicationProxy
    • ModifyApplicationProxy
    • ModifyApplicationProxyStatus
    • DescribeApplicationProxies
    • DeleteApplicationProxy
    • CreateApplicationProxyRule
    • ModifyApplicationProxyRule
    • ModifyApplicationProxyRuleStatus
    • DeleteApplicationProxyRule
  • Content Management APIs
    • CreatePurgeTask
    • DescribePurgeTasks
    • CreatePrefetchTask
    • DescribePrefetchTasks
    • DescribeContentQuota
  • Data Analysis APIs
    • DescribeDDoSAttackData
    • DescribeDDoSAttackEvent
    • DescribeDDoSAttackTopData
    • DescribeOverviewL7Data
    • DescribeTimingL4Data
    • DescribeTimingL7AnalysisData
    • DescribeTopL7AnalysisData
    • DescribeTimingL7CacheData
    • DescribeTopL7CacheData
  • Log Service APIs
    • DownloadL7Logs
    • DownloadL4Logs
    • CreateCLSIndex
    • CreateRealtimeLogDeliveryTask
    • ModifyRealtimeLogDeliveryTask
    • DeleteRealtimeLogDeliveryTask
    • DescribeRealtimeLogDeliveryTasks
  • Billing APIs
    • CreatePlan
    • UpgradePlan
    • RenewPlan
    • ModifyPlan
    • IncreasePlanQuota
    • DestroyPlan
    • CreatePlanForZone
    • BindZoneToPlan
    • DescribeBillingData
    • DescribeAvailablePlans
  • Certificate APIs
    • DescribeDefaultCertificates
    • ModifyHostsCertificate
  • Load Balancing APIs
    • CreateOriginGroup
    • ModifyOriginGroup
    • DeleteOriginGroup
    • DescribeOriginGroup
    • 创建负载均衡器
    • 修改负载均衡器
    • 删除负载均衡器
    • 描述负载均衡器列表
    • 描述源站组健康状态
  • Custom Response Page APIs
    • CreateCustomizeErrorPage
    • DescribeCustomErrorPages
    • ModifyCustomErrorPage
    • DeleteCustomErrorPage
  • DNS记录API
    • 创建DNS记录
    • 删除DNS记录
    • 描述DNS记录
    • 修改DNS记录状态
    • 修改DNS记录
  • Diagnostic Tool APIs
    • DescribeIPRegion
  • Version Management APIs
    • CreateConfigGroupVersion
    • DeployConfigGroupVersion
    • DescribeConfigGroupVersionDetail
    • DescribeConfigGroupVersions
    • DescribeDeployHistory
    • DescribeEnvironments
  • Data Types
  • Error Codes
当前内容仅提供英语版本,中文版我们将尽快补充,感谢您的理解。

创建函数规则

1. API Description

Domain name for API request: teo.intl.tencentcloudapi.com.

This API is used to create trigger rules for edge functions. It supports determining whether to execute the function via customized filter conditions. When execution is required, it provides multiple ways to select the target function, including directly specifying, selecting based on client region, and selecting based on weight.

A maximum of 20 requests can be initiated per second for this API.

We recommend you to use API Explorer
Try it
API Explorer provides a range of capabilities, including online call, signature authentication, SDK code generation, and API quick search. It enables you to view the request, response, and auto-generated examples.

2. Input Parameters

The following request parameter list only provides API request parameters and some common parameters. For the complete common parameter list, see Common Request Parameters.

Parameter NameRequiredTypeDescription
ActionYesStringCommon Params. The value used for this API: CreateFunctionRule.
VersionYesStringCommon Params. The value used for this API: 2022-09-01.
RegionNoStringCommon Params. This parameter is not required.
ZoneIdYesStringZone ID.
FunctionRuleConditions.NYesArray of FunctionRuleConditionRule condition list. There is an OR relationship between different conditions of the same trigger rule.
TriggerTypeNoStringFunction selection configuration type.
  • Direct: specifies the execution function directly.
  • .
  • Weight: selects the function based on weight ratio.
  • .
  • region: specifies the country/region selection function based on client IP.
  • .
    Specifies the default value as direct when left blank.
    FunctionIdNoStringSpecifies the function ID to be executed. this parameter is valid only when TriggerType is direct or left empty.
    RegionMappingSelections.NNoArray of FunctionRegionSelectionFunction selection configuration based on client IP country/region. this parameter is valid only when TriggerType is region and RegionMappingSelections is required. RegionMappingSelections must include at least one configuration with Regions set to Default.
    WeightedSelections.NNoArray of FunctionWeightedSelectionWeighted function selection configuration. this parameter is valid only when TriggerType is weight and WeightedSelections is required. the sum of all weights in WeightedSelections need to be 100.
    RemarkNoStringRule description, which can contain up to 60 characters.

    3. Output Parameters

    Parameter NameTypeDescription
    RuleIdStringRule ID.
    RequestIdStringThe unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.

    4. Example

    Example1 Creating a Rule for an Edge Function and Executing the Specified Function after Hitting the Rule

    This example shows you how to create an edge function rule for site zone-293e7s5jne1i. When the Request host is www.function.com, the rule is matched and the target function is selected via direct specify, with the target function ID being ef-1pakhnuy.

    Input Example

    POST / HTTP/1.1
    Host: teo.intl.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: CreateFunctionRule
    <Common request parameters>
    
    {
        "ZoneId": "zone-293e7s5jne1i",
        "FunctionRuleConditions": [
            {
                "RuleConditions": [
                    {
                        "Operator": "equal",
                        "Values": [
                            "www.function.com"
                        ],
                        "Target": "host"
                    }
                ]
            }
        ],
        "TriggerType": "direct",
        "FunctionId": "ef-1pakhnuy",
        "Remark": "function rule trigger direct"
    }
    

    Output Example

    {
        "Response": {
            "RuleId": "rule-vnqup0uc",
            "RequestId": "aab9a28a-4cce-434d-852f-5442275817aa"
        }
    }
    

    Example2 Creating Edge Function Rules Executing Different Functions Based on Client Request Region after Hitting the Rule

    This example shows you how to create an edge function rule for site zone-293e7s5jne1i. When the Request host is www.function.com, it hits the rule and selects the target function via region (based on the country/region of the client IP). If the client IP location is Chinese mainland, it executes function ef-1pakhnuy. If the client IP geolocation is other region, it executes function ef-1wekxwnu.

    Input Example

    POST / HTTP/1.1
    Host: teo.intl.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: CreateFunctionRule
    <Common request parameters>
    
    {
        "ZoneId": "zone-293e7s5jne1i",
        "FunctionRuleConditions": [
            {
                "RuleConditions": [
                    {
                        "Operator": "equal",
                        "Values": [
                            "www.function.com"
                        ],
                        "Target": "host"
                    }
                ]
            }
        ],
        "TriggerType": "region",
        "RegionMappingSelections": [
            {
                "FunctionId": "ef-1pakhnuy",
                "Regions": [
                    "CN"
                ]
            },
            {
                "FunctionId": "ef-1wekxwnu",
                "Regions": [
                    "Default"
                ]
            }
        ],
        "Remark": "function rule trigger region"
    }
    

    Output Example

    {
        "Response": {
            "RuleId": "rule-vnqup0uc",
            "RequestId": "aab9a28a-4cce-434d-852f-5442275817aa"
        }
    }
    

    Example3 Creating Edge Function Rule Hit Rule Executing Different Functions Based on Customer Set Weight

    This example shows you how to create an edge function rule for site zone-293e7s5jne1i. When the Request host is www.function.com, it hits the rule and selects the target function via weight, with a 20% probability to execute function ef-1pakhnuy and an 80% probability to execute function ef-1wekxwnu.

    Input Example

    POST / HTTP/1.1
    Host: teo.intl.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: CreateFunctionRule
    <Common request parameters>
    
    {
        "ZoneId": "zone-293e7s5jne1i",
        "FunctionRuleConditions": [
            {
                "RuleConditions": [
                    {
                        "Operator": "equal",
                        "Values": [
                            "www.function.com"
                        ],
                        "Target": "host"
                    }
                ]
            }
        ],
        "TriggerType": "weight",
        "WeightedSelections": [
            {
                "FunctionId": "ef-1wekxwnu",
                "Weight": 80
            },
            {
                "FunctionId": "ef-1pakhnuy",
                "Weight": 20
            }
        ],
        "Remark": "function rule trigger weight"
    }
    

    Output Example

    {
        "Response": {
            "RuleId": "rule-vnqup0uc",
            "RequestId": "aab9a28a-4cce-434d-852f-5442275817aa"
        }
    }
    

    5. Developer Resources

    SDK

    TencentCloud API 3.0 integrates SDKs that support various programming languages to make it easier for you to call APIs.

    Command Line Interface

    6. Error Code

    The following only lists the error codes related to the API business logic. For other error codes, see Common Error Codes.

    Error CodeDescription
    FailedOperationOperation failed.
    FailedOperation.RuleOperationConflictFunction rule operations conflict under this site.
    InternalError.SystemErrorInternal system error.
    InvalidParameter.DuplicateRuleDuplicate rules.
    InvalidParameter.InvalidConditionsInvalid conditions.
    LimitExceeded.RuleLimitExceededThe number of rules has reached the limit.
    OperationDenied.VersionControlLockedThe operation is not allowed because the version management mode is applied.
    ResourceUnavailable.FunctionNotFoundThe function does not exist or does not belong to this account.
    ResourceUnavailable.ZoneNotFoundThe site does not exist or is not belong to this account.