Updated on 2025-10-30 GMT+08:00

Creating an Endpoint Rule

Function

This API is used to create an endpoint rule.

Calling Method

For details, see Calling APIs.

Authorization Information

Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions.

  • If you are using role/policy-based authorization, see Permissions Policies and Supported Actions for details on the required permissions.
  • If you are using identity policy-based authorization, the following identity policy-based permissions are required.

    Action

    Access Level

    Resource Type (*: required)

    Condition Key

    Alias

    Dependencies

    dns:resolverRule:create

    Write

    resolverRule *

    -

    -

    -

URI

POST /v2.1/resolverrules

Request Parameters

Table 1 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

Definition

The user token.

The token can be obtained by calling an IAM API. The value of X-Subject-Token in the response header is the user token.

For details about how to obtain a user token, seeObtaining a User Token.

Constraints

N/A

Range

N/A

Default Value

N/A

Table 2 Request body parameters

Parameter

Mandatory

Type

Description

name

Yes

String

Rule name.

It can contain 1 to 64 characters. Only letters, digits, underscores (_), hyphens (-), and periods (.) are allowed.

domain_name

Yes

String

Zone

endpoint_id

Yes

String

ID of the endpoint to which the current rule belongs

ipaddresses

Yes

Array of IpInfo objects

Destination IP address added to a rule

Table 3 IpInfo

Parameter

Mandatory

Type

Description

ip

No

String

IP address

Response Parameters

Status code: 202

Table 4 Response body parameters

Parameter

Type

Description

resolver_rule

ResolverRuleParam object

Endpoint rule

Table 5 ResolverRuleParam

Parameter

Type

Description

id

String

ID of an endpoint rule

name

String

Rule name

domain_name

String

Domain name

endpoint_id

String

ID of the endpoint to which the current rule belongs

status

String

Resource status. The value can be PENDING_CREATE, ACTIVE, PENDING_DELETE, or ERROR.

rule_type

String

Rule type. This parameter is reserved. The default value is FORWARD.

ipaddress_count

Integer

Number of IP addresses in the endpoint rule

create_time

String

The creation time.

Format: yyyy-MM-dd'T'HH:mm:ss.SSS

update_time

String

The update time.

Format: yyyy-MM-dd'T'HH:mm:ss.SSS

Status code: 400

Table 6 Response body parameters

Parameter

Type

Description

code

String

Definition

Error code

Range

N/A

message

String

Definition

Error description

Range

N/A

Status code: 500

Table 7 Response body parameters

Parameter

Type

Description

code

String

Definition

Error code

Range

N/A

message

String

Definition

Error description

Range

N/A

Example Requests

Creating an endpoint rule and setting the destination IP addresses to 1.1.1.1 and 2.2.2.2

POST https://{endpoint}/v2.1/resolverrules

{
  "name" : "rule-xxx",
  "domain_name" : "www.example.com",
  "endpoint_id" : "8a36f60a753badb401753bade3400001",
  "ipaddresses" : [ {
    "ip" : "1.1.1.1"
  }, {
    "ip" : "2.2.2.2"
  } ]
}

Example Responses

Status code: 202

Request accepted

{
  "resolver_rule" : {
    "id" : "8a36f60a753badb401753bade3400002",
    "name" : "rule-xxx",
    "domain_name" : "www.example.com",
    "endpoint_id" : "8a36f60a753badb401753bade3400001",
    "status" : "ACTIVE",
    "rule_type" : "FORWARD",
    "ipaddress_count" : 2,
    "create_time" : "2020-10-18T12:27:31.448",
    "update_time" : "2020-10-18T12:27:31.448"
  }
}

Status Codes

Status Code

Description

202

Request accepted

400

Error response

500

Error response

Error Codes

See Error Codes.