tencent cloud

边缘安全加速平台 EO

CreateFunctionRule

PDF
Focus Mode
Font Size
Last updated: 2026-04-13 14:46:13

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 Name Required Type Description
Action Yes String Common Params. The value used for this API: CreateFunctionRule.
Version Yes String Common Params. The value used for this API: 2022-09-01.
Region No String Common Params. This parameter is not required.
ZoneId Yes String Zone ID.
FunctionRuleConditions.N Yes Array of FunctionRuleCondition Rule condition list. There is an OR relationship between different conditions of the same trigger rule.
TriggerType No String Function 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.
    FunctionId No String Specifies the function ID to be executed. this parameter is valid only when TriggerType is direct or left empty.
    RegionMappingSelections.N No Array of FunctionRegionSelection Function 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.N No Array of FunctionWeightedSelection Weighted 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.
    Remark No String Rule description, which can contain up to 60 characters.

    3. Output Parameters

    Parameter Name Type Description
    RuleId String Rule ID.
    RequestId String The 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 Code Description
    FailedOperation Operation failed.
    FailedOperation.RuleOperationConflict Function rule operations conflict under this site.
    InternalError.SystemError Internal system error.
    InvalidParameter.DuplicateRule Duplicate rules.
    InvalidParameter.InvalidConditions Invalid conditions.
    LimitExceeded.RuleLimitExceeded The number of rules has reached the limit.
    OperationDenied.VersionControlLocked The operation is not allowed because the version management mode is applied.
    ResourceUnavailable.FunctionNotFound The function does not exist or does not belong to this account.
    ResourceUnavailable.ZoneNotFound The site does not exist or is not belong to this account.

    Help and Support

    Was this page helpful?

    Help us improve! Rate your documentation experience in 5 mins.

    Feedback