Updated on 2023-12-18 GMT+08:00

Querying Forwarding Rules

Function

This API is used to query forwarding rules. Filter query and pagination query are supported. Unless otherwise specified, exact match is applied.

Constraints

Parameters marker, limit, and page_reverse are used for pagination query. Parameters marker and page_reverse take effect only when they are used together with parameter limit.

URI

GET /v2/{project_id}/elb/l7policies/{l7policy_id}/rules

Table 1 Path parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Specifies the project ID.

l7policy_id

Yes

String

Specifies the forwarding policy ID.

Table 2 Query parameters

Parameter

Mandatory

Type

Description

marker

No

String

Specifies the ID of the forwarding rule from which pagination query starts, that is, the ID of the last forwarding rule on the previous page.

This parameter must be used with limit.

limit

No

Integer

Specifies the number of forwarding rules on each page. If this parameter is not set, all forwarding rules are queried by default.

page_reverse

No

Boolean

Specifies the page direction. The value can be true or false, and the default value is false. The last page in the list requested with page_reverse set to false will not contain the "next" link, and the last page in the list requested with page_reverse set to true will not contain the "previous" link.

This parameter must be used with limit.

id

No

String

Specifies the forwarding rule ID.

tenant_id

No

String

Specifies the ID of the project where the forwarding rule is used.

The value contains a maximum of 255 characters.

project_id

No

String

Specifies the ID of the project to which the forwarding rule belongs. This parameter has the same meaning as tenant_id.

admin_state_up

No

Boolean

Specifies the administrative status of the forwarding rule.

This parameter is reserved, and the default value is true.

type

No

String

Specifies the match type of a forwarding rule.

The value range varies depending on the protocol of the backend server group:

  • HOST_NAME: matches the domain name in the request.
  • PATH: matches the path in the request.

The match type of forwarding rules in a forwarding policy must be unique.

compare_type

No

String

Specifies the match mode. The options are as follows:

When type is set to HOST_NAME, the value of this parameter can only be the following:

  • EQUAL_TO: indicates exact match.

When type is set to PATH, the value of this parameter can be one of the following:

  • REGEX: indicates regular expression match.
  • STARTS_WITH: indicates prefix match.
  • EQUAL_TO: indicates exact match.

invert

No

Boolean

Specifies whether reverse matching is supported.

The value can be true or false. The default value is false.

This parameter is reserved.

key

No

String

Specifies the key of the match content. The default value is null.

This parameter is reserved.

The value contains a maximum of 255 characters.

value

No

String

Specifies the value of the match content.

The value contains a maximum of 128 characters.

  • When type is set to HOST_NAME, the value can contain a maximum of 100 characters that contain only letters, digits, hyphens (-), and periods (.), and must start with a letter or digit.
  • When type is set to PATH, the value can contain a maximum of 128 characters. When compare_type is set to STARTS_WITH or EQUAL_TO, the value must start with a slash (/) and can contain only letters, digits, and special characters _~';@^-%#&$.*+?,=!:| \/()[]{}

provisioning_status

No

String

This parameter is reserved, and its value can only be ACTIVE.

It specifies the provisioning status of the forwarding rule.

Request

None

Response

Table 3 Parameter description

Parameter

Type

Description

rules

Array of Rules objects

Lists the forwarding rules. For details, see Table 4.

Table 4 rules parameter description

Parameter

Type

Description

id

String

Specifies the forwarding rule ID.

tenant_id

String

Specifies the ID of the project where the forwarding rule is used.

The value contains a maximum of 255 characters.

project_id

String

Specifies the ID of the project to which the forwarding rule belongs. This parameter has the same meaning as tenant_id.

admin_state_up

Boolean

Specifies the administrative status of the forwarding rule.

This parameter is reserved. The value can be true or false.

  • true: Enabled
  • false: Disabled

type

String

Specifies the match type of a forwarding rule.

The value range varies depending on the protocol of the backend server group:

  • HOST_NAME: matches the domain name in the request.
  • PATH: matches the path in the request.

compare_type

String

Specifies the match mode. The options are as follows:

When type is set to HOST_NAME, the value of this parameter can only be the following:

  • EQUAL_TO: indicates exact match.

When type is set to PATH, the value of this parameter can be one of the following:

  • REGEX: indicates regular expression match.
  • STARTS_WITH: indicates prefix match.
  • EQUAL_TO: indicates exact match.

invert

Boolean

Specifies whether reverse matching is supported.

The value can be true or false. The default value is false.

This parameter is reserved.

key

String

Specifies the key of the match content. The default value is null.

This parameter is reserved.

The value contains a maximum of 255 characters.

value

String

Specifies the value of the match content.

The value contains a maximum of 128 characters.

  • When type is set to HOST_NAME, the value can contain a maximum of 100 characters that contain only letters, digits, hyphens (-), and periods (.), and must start with a letter or digit.
  • When type is set to PATH, the value can contain a maximum of 128 characters. When compare_type is set to STARTS_WITH or EQUAL_TO, the value must start with a slash (/) and can contain only letters, digits, and special characters _~';@^-%#&$.*+?,=!:| \/()[]{}

provisioning_status

String

This parameter is reserved, and its value can only be ACTIVE.

It specifies the provisioning status of the forwarding rule.

Example Request

  • Example request: Querying all forwarding rules of a specific forwarding policy
    GET https://{Endpoint}/v2/a31d2bdcf7604c0faaddb058e1e08819/elb/l7policies/5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586/rules

Example Response

  • Example response
    {
        "rules": [
            {
                "compare_type": "EQUAL_TO", 
                "provisioning_status": "ACTIVE",
                "admin_state_up": true, 
                "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", 
                "project_id": "a31d2bdcf7604c0faaddb058e1e08819", 
                "invert": false, 
                "value": "www.test.com", 
                "key": null, 
                "type": "HOST_NAME", 
                "id": "67d8a8fa-b0dd-4bd4-a85b-671db19b2ef3"
            }, 
            {
                "compare_type": "EQUAL_TO",
                "provisioning_status": "ACTIVE", 
                "admin_state_up": true, 
                "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819",
                "project_id": "a31d2bdcf7604c0faaddb058e1e08819",
                "invert": false, 
                "value": "/aaa.html", 
                "key": null, 
                "type": "PATH", 
                "id": "f02b3bca-69d2-4335-a3fa-a8054e996213"
            }
        ]
    }

Status Code

For details, see Status Codes.