All Products
Search
Document Center

Global Accelerator:ListForwardingRules

Last Updated:Nov 06, 2024

Queries forwarding rules.

Operation description

Note This operation is used to query only custom forwarding rules, not the default forwarding rule.

Debugging

You can run this interface directly in OpenAPI Explorer, saving you the trouble of calculating signatures. After running successfully, OpenAPI Explorer can automatically generate SDK code samples.

Authorization information

The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:

  • Operation: the value that you can use in the Action element to specify the operation on a resource.
  • Access level: the access level of each operation. The levels are read, write, and list.
  • Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
    • The required resource types are displayed in bold characters.
    • If the permissions cannot be granted at the resource level, All Resources is used in the Resource type column of the operation.
  • Condition Key: the condition key that is defined by the cloud service.
  • Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
OperationAccess levelResource typeCondition keyAssociated operation
ga:ListForwardingRuleslist
  • Listener
    acs:ga:{#regionId}:{#accountId}:listener/{#listenerId}
    none
none

Request parameters

ParameterTypeRequiredDescriptionExample
RegionIdstringYes

The ID of the region where the Global Accelerator (GA) instance is deployed. Set the value to cn-hangzhou.

cn-hangzhou
ClientTokenstringNo

The client token that is used to ensure the idempotence of the request.

You can use the client to generate the token, but you must make sure that the token is unique among different requests. The client token can contain only ASCII characters.

Note If you do not specify this parameter, the system automatically uses the request ID as the client token. The request ID may be different for each request.
02fb3da4****
ListenerIdstringYes

The ID of the listener.

lsr-bp1s0vzbi5bxlx5pw****
AcceleratorIdstringYes

The ID of the GA instance.

ga-bp17frjjh0udz4qzk****
ForwardingRuleIdstringNo

The ID of the forwarding rule.

frule-bp19a3t3yzr21q3****
NextTokenstringNo

The token that is used for the next query. Valid values:

  • If this is your first query or no subsequent query is to be sent, ignore this parameter.
  • If a next query is to be sent, set the value to the value of NextToken that is returned from the last call.
FFmyTO70tTpLG6I3FmYAXGKPd****
MaxResultsintegerNo

The number of entries per page. Valid values: 1 to 100. Default value: 20.

20

Response parameters

ParameterTypeDescriptionExample
object

The response parameters.

RequestIdstring

The ID of the request.

CFC67ED9-4AB1-431F-B6E3-A752B7B8CCD4
TotalCountinteger

The number of entries returned.

1
NextTokenstring

The token that is used for the next query. Valid values:

  • If NextToken is not returned, it indicates that no additional results exist.
  • If NextToken is returned, the value indicates the token that is used for the next query.
FFmyTO70tTpLG6I3FmYAXGKPd****
MaxResultsinteger

The number of entries returned per page.

20
ForwardingRulesarray<object>

The forwarding rules.

ForwardingRulesobject

The forwarding rules.

Priorityinteger

The priority of the forwarding rule.

A value between 1 and 10000 is returned. A smaller value indicates a higher priority.

1000
ForwardingRuleIdstring

The forwarding rule ID.

frule-bp19a3t3yzr21q3****
ForwardingRuleNamestring

The forwarding rule name.

auto_named_rule
ForwardingRuleDirectionstring

The direction in which the forwarding rule takes effect.

By default, request is returned, which indicates that the forwarding rule takes effect on requests.

request
ForwardingRuleStatusstring

The state of the forwarding rule. Valid values:

  • active: The forwarding rule is normal.
  • configuring: The forwarding rule is being modified.
  • deleting: The forwarding rule is being deleted.
active
RuleConditionsarray<object>

The conditions that trigger the forwarding rule.

RuleConditionsobject

The forwarding conditions.

RuleConditionTypestring

The type of the forwarding condition. Valid values:

  • Host: domain name.
  • Path: path.
  • RequestHeader: HTTP header.
  • Query: query string.
  • Method: HTTP method.
  • Cookie: cookie.
  • SourceIP: source IP address.
Host
RuleConditionValuestring

The value of the forwarding condition type.

Different JSON strings are returned based on the value of the RuleConditionType parameter.

  • If you set RuleConditionType to Host, a domain name condition is returned. If multiple domain names are returned in a forwarding condition, the relationship between the domain names is OR.
  • If you set RuleConditionType to Path, a path condition is returned. If multiple forwarding conditions of the path type are returned in a forwarding rule, the relationship between the forwarding conditions is OR. If multiple paths are returned in a forwarding condition, the relationship between the paths is OR.
  • If you set RuleConditionType to RequestHeader, an HTTP header condition that consists of key-value pairs is returned.
  • If you set RuleConditionType to Query, a query string condition that consists of key-value pairs is returned.
  • If you set RuleConditionType to Method, an HTTP method condition is returned.
  • If you set RuleConditionType to Cookie, a cookie condition that consists of key-value pairs is returned.
  • If you set RuleConditionType to SourceIP, a source IP address condition is returned. If multiple source IP addresses are returned in a forwarding condition, the relationship between the source IP addresses is OR.
["www.example.com", "www.aliyun.com"]
PathConfigobject

The path configuration.

Note GA instances created after July 12, 2022 support all forwarding condition types and action types. We recommend that you query forwarding conditions and actions by calling the RuleActionType and RuleActionValue operations.
Valuesarray

The path configuration.

Note GA instances created after July 12, 2022 support all forwarding condition types and action types. We recommend that you query forwarding conditions and actions by calling the RuleActionType and RuleActionValue operations.
Valuesstring

The path.

The path must be 1 to 128 characters in length and must start with a forward slash (/). The path can contain only letters, digits, and the following special characters: $ - _ . + / & ~ @ : '. Supported wildcard characters are asterisks (*) and question marks (?).

Note GA instances created after July 12, 2022 support all forwarding condition types and action types. We recommend that you query forwarding conditions and actions by calling the RuleActionType and RuleActionValue operations.
/test
HostConfigobject

The domain name configuration.

Note GA instances created after July 12, 2022 support all forwarding condition types and action types. We recommend that you query forwarding conditions and actions by calling the RuleActionType and RuleActionValue operations.
Valuesarray

The domain name configuration.

Note GA instances created after July 12, 2022 support all forwarding condition types and action types. We recommend that you query forwarding conditions and actions by calling the RuleActionType and RuleActionValue operations.
Valuesstring

The domain name.

The domain name must be 3 to 128 characters in length, and can contain letters, digits, hyphens (-), and periods (.). Supported wildcard characters are asterisks (*) and question marks (?).

Note GA instances created after July 12, 2022 support all forwarding condition types and action types. We recommend that you query forwarding conditions and actions by calling the RuleActionType and RuleActionValue operations.
www.example.com
RuleActionsarray<object>

The forwarding actions.

RuleActionsobject

The forwarding actions.

Orderinteger

The forwarding priority.

Note This parameter does not take effect.
1
RuleActionTypestring

The type of the forwarding action. Valid values:

  • ForwardGroup: forwards a request.
  • Redirect: redirects a request.
  • FixResponse: returns a fixed response.
  • Rewrite: rewrites a request.
  • AddHeader: adds a header to a request.
  • RemoveHeaderConfig: deletes the header from a request.
  • Drop: drops a request.
ForwardGroup
RuleActionValuestring

The value of the forwarding action.

Different JSON strings are returned based on the value of RuleActionType.

  • If you set RuleActionType to ForwardGroup, the information about a virtual endpoint group is returned. The following section describes the parameters:

    • type: endpointgroup is returned.
    • value: the ID of the virtual endpoint group.
  • If you set RuleActionType to Redirect, the redirecting configuration is returned. The following section describes the parameters:

    • protocol: the protocol of requests after the requests are redirected.
    • domain: the domain name to which requests are redirected.
    • port: the port to which requests are redirected.
    • path: the path to which requests are redirected.
    • query: the query string of the requests that are redirected.
    • code: the redirecting code.
  • If you set RuleActionType to FixResponse, the information about the fixed response that you configured is returned. The following section describes the parameters:

    • code: the HTTP status code.
    • type: the content type of the response.
    • content: the content of the response.
  • If RuleActionType is set to AddHeader, the information about the HTTP header that is added is returned. The following section describes the parameters:

    • name: the name of the HTTP header.
    • type: the content type of the HTTP header.
    • value: the content of the HTTP header.
  • If you set RuleActionType to RemoveHeader, the information about the HTTP header that is deleted is returned.

  • If you set RuleActionType to Rewrite, the rewriting configuration is returned. The following section describes the parameters:

    • domain: the domain name to which requests are redirected.
    • path: the path to which requests are redirected.
    • query: the query string of the requests that are redirected.
  • If you set RuleActionType to Drop, an empty string is returned.

[{"type":"endpointgroup", "value":"epg-bp1enpdcrqhl78g6r****"}]
ForwardGroupConfigobject

The forwarding action configuration.

Note GA instances created after July 12, 2022 support all forwarding condition types and action types. We recommend that you query forwarding conditions and actions by calling the RuleActionType and RuleActionValue operations.
ServerGroupTuplesarray<object>

The information about the endpoint groups.

Note GA instances created after July 12, 2022 support all forwarding condition types and action types. We recommend that you query forwarding conditions and actions by calling the RuleActionType and RuleActionValue operations.
ServerGroupTuplesobject

The information about the endpoint group.

Note For GA instances created after July 12, 2022, all forwarding condition types and forwarding action types are supported. We recommend that you call RuleActionType and RuleActionValue to query forwarding actions.
EndpointGroupIdstring

The endpoint group ID.

Note GA instances created after July 12, 2022 support all forwarding condition types and action types. We recommend that you query forwarding conditions and actions by calling the RuleActionType and RuleActionValue operations.
epg-bp1enpdcrqhl78g6r****
ListenerIdstring

The listener ID.

lsr-bp1s0vzbi5bxlx5****
ServiceIdstring

The ID of the service that manages the instance.

Note This parameter is returned only if the value of ServiceManaged is true.
ALB
ServiceManagedboolean

Indicates whether the GA instance is managed. Valid values:

  • true: The GA instance is managed.
  • false: The GA instance is not managed.
true
ServiceManagedInfosarray<object>

The actions that you can perform on the managed instance.

Note This parameter takes effect only if ServiceManaged is set to True.
  • You can perform only specific actions on the managed instance.
ServiceManagedInfosobject

The actions that you can perform on the managed instance.

Actionstring

The name of the action that you can perform on the managed instance. Valid values:

  • Create: Create an instance.
  • Update: Update the current instance.
  • Delete: Delete the current instance.
  • Associate: Reference the current instance.
  • UserUnmanaged: Unmanage the instance.
  • CreateChild: Create a child resource on the current instance.
Update
ChildTypestring

The type of the child resource. Valid values:

  • Listener: listener.
  • IpSet: acceleration region.
  • EndpointGroup: endpoint group.
  • ForwardingRule: forwarding rule.
  • Endpoint: endpoint.
  • EndpointGroupDestination: the protocol mapping of an endpoint group associated with a custom routing listener.
  • EndpointPolicy: the traffic policy of an endpoint associated with a custom routing listener.
Note This parameter is returned only if the value of Action is CreateChild.
Listener
IsManagedboolean

Indicates whether the specified actions are managed. Valid values:

  • true: The specified actions are managed, and users cannot perform the specified actions on the managed instance.
  • false: The specified actions are not managed, and users can perform the specified actions on the managed instance.
false

Examples

Sample success responses

JSONformat

{
  "RequestId": "CFC67ED9-4AB1-431F-B6E3-A752B7B8CCD4",
  "TotalCount": 1,
  "NextToken": "FFmyTO70tTpLG6I3FmYAXGKPd****",
  "MaxResults": 20,
  "ForwardingRules": [
    {
      "Priority": 1000,
      "ForwardingRuleId": "frule-bp19a3t3yzr21q3****",
      "ForwardingRuleName": "auto_named_rule",
      "ForwardingRuleDirection": "request",
      "ForwardingRuleStatus": "active",
      "RuleConditions": [
        {
          "RuleConditionType": "Host",
          "RuleConditionValue": "[\"www.example.com\", \"www.aliyun.com\"]",
          "PathConfig": {
            "Values": [
              "/test"
            ]
          },
          "HostConfig": {
            "Values": [
              "www.example.com"
            ]
          }
        }
      ],
      "RuleActions": [
        {
          "Order": 1,
          "RuleActionType": "ForwardGroup",
          "RuleActionValue": "[{\"type\":\"endpointgroup\", \"value\":\"epg-bp1enpdcrqhl78g6r****\"}]",
          "ForwardGroupConfig": {
            "ServerGroupTuples": [
              {
                "EndpointGroupId": "epg-bp1enpdcrqhl78g6r****"
              }
            ]
          }
        }
      ],
      "ListenerId": "lsr-bp1s0vzbi5bxlx5****",
      "ServiceId": "ALB",
      "ServiceManaged": true,
      "ServiceManagedInfos": [
        {
          "Action": "Update",
          "ChildType": "Listener",
          "IsManaged": false
        }
      ]
    }
  ]
}

Error codes

HTTP status codeError codeError messageDescription
400NotExist.ListenerThe listener does not exist.The listener does not exist.
400NotActive.ListenerThe state of the listener is not active.The listener is unstable.
400NotExist.AcceleratorThe accelerated instance does not exist.The GA instance does not exist.
400StateError.AcceleratorThe state of the accelerated instance is invalid.The status of the GA instance is invalid.
400NotExist.BusinessRegionThe business region does not exist.The business region does not exist.
400NotExist.BasicBandwidthPackageYou must specify the basic bandwidth package.You must specify the basic bandwidth package.
400QuotaExceeded.EndPointThe maximum number of endpoints is exceeded.The maximum number of endpoints is exceeded.
400Exist.EndpointGroupThe endpoint group already exists.The endpoint group already exists.
400NoPermission.VpcEndpointYou are not authorized to perform the operation.The user does not have permissions to create service linked roles. Contact the Alibaba Cloud account owner or the permission administrator to grant the current user AliyunGlobalAccelerationFullAccess or create custom permission policies for service linked role. The following content describes the detailed information about custom permission policies: ServiceName: vpcendpoint.ga.aliyuncs.com. Service linked role name: AliyunServiceRoleForGaVpc. Endpoint Permission: ram:CreateServiceLinkedRole.

For a list of error codes, visit the Service error codes.

Change history

Change timeSummary of changesOperation
2024-08-30The Error code has changedView Change Details
2023-08-15The Error code has changed. The response structure of the API has changedView Change Details