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.
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. 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. |
| 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. |
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.
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"
}
{
"Response": {
"RuleId": "rule-vnqup0uc",
"RequestId": "aab9a28a-4cce-434d-852f-5442275817aa"
}
}
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.
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"
}
{
"Response": {
"RuleId": "rule-vnqup0uc",
"RequestId": "aab9a28a-4cce-434d-852f-5442275817aa"
}
}
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.
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"
}
{
"Response": {
"RuleId": "rule-vnqup0uc",
"RequestId": "aab9a28a-4cce-434d-852f-5442275817aa"
}
}
TencentCloud API 3.0 integrates SDKs that support various programming languages to make it easier for you to call APIs.
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. |
Was this page helpful?
You can also Contact sales or Submit a Ticket for help.
Help us improve! Rate your documentation experience in 5 mins.
Feedback