All Products
Search
Document Center

Server Load Balancer:AddServersToServerGroup

Last Updated:Dec 10, 2025

Adds backend servers to a server group.

Operation description

AddServersToServerGroup is an asynchronous operation. After you send a request, the system returns a request ID, but the backend servers are not added to the server group immediately. The system adds the backend servers in the background.

  1. You can call the ListServerGroups operation to query the status of the server group:

  • If the server group is in the Configuring state, the server group is being modified.

  • If the server group is in the Available state, the server group is running.

  1. You can call the ListServerGroupServers operation to query the status of backend servers:

  • If a backend server is in the Adding state, the backend server is being added to the server group.

  • If a backend server is in the Available state, the backend server is running.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

gwlb:AddServersToServerGroup

create

*ServerGroup

acs:gwlb:{#regionId}:{#accountId}:servergroup/{#ServerGroupId}

Instance

acs:ecs:{#regionId}:{#accountId}:instance/{#InstanceId}

NetworkInterface

acs:ecs:{#regionId}:{#accountId}:eni/{#ServerId}

ContainerGroup

acs:eci:{#regionId}:{#accountId}:containergroup/{#ServerId}

None None

Request parameters

Parameter

Type

Required

Description

Example

ServerGroupId

string

Yes

The ID of the server group.

sgp-atstuj3rtoptyui****

Servers

array<object>

Yes

The backend servers.

Note

You can specify up to 200 backend servers in each call.

object

No

The backend server.

Port

integer

No

The port that is used by the backend server. Valid values:

  • 6081.

6081

ServerId

string

Yes

The ID of the backend server.

  • If the server group is of the Instance type, this parameter specifies the ID of an ECS instance, an ENI, or an ECI instance.

  • If the server group is of the Ip type, this parameter specifies an IP address.

i-bp67acfmxazb4p****

ServerIp

string

No

The IP address of the backend server.

192.168.XX.XX

ServerType

string

Yes

The type of the backend server. Valid values:

  • Ecs: an ECS instance.

  • Eni: an elastic network interface (ENI).

  • Eci: an elastic container instance.

  • Ip: an IP address.

Ecs

DryRun

boolean

No

Specifies whether to perform a dry run. Valid values:

  • true: performs a dry run. The system checks the required parameters, request format, and service limits. If the request fails the dry run, an error message is returned. If the request passes the dry run, the DryRunOperation error code is returned.

  • false (default): sends the request. If the request passes the check, a 2xx HTTP status code is returned and the operation is performed.

false

ClientToken

string

No

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

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

Note

If you do not specify this parameter, the system automatically uses the RequestId of the request as the ClientToken. The RequestId may be different for each request.

123e4567-e89b-12d3-a456-42665544****

Response elements

Element

Type

Description

Example

object

The data structure of the response.

RequestId

string

The request ID.

54B48E3D-DF70-471B-AA93-08E683A1B45

Examples

Success response

JSON format

{
  "RequestId": "54B48E3D-DF70-471B-AA93-08E683A1B45"
}

Error codes

HTTP status code

Error code

Error message

Description

400 Conflict.Server The %s [%s] is conflict. There is already %s having the same configuration with %s.
400 Mismatch.ServerType The %s is mismatched for %s and %s. ServerType mismatch.
400 ResourceInUse.IP The specified resource of %s is in use. The specified resource of IP is in use.
400 IllegalParam.ServerIp The param of %s is illegal. The parameter ServerIp is invalid. Please check the input parameters.
400 IllegalParam.EcsNetworkType The param of %s is illegal.
400 DuplicatedParam.Server The param of %s is duplicated. Duplicate server in parameter.
400 ResourceInUse.Eni The specified resource of %s is in use. The passed-in eni cannot be the eni used by the gateway loadbalancer instance. Please check the parameters.
400 IncorrectStatus.Eni The status of %s [%s] is incorrect. Resource %s current state %s does not support operation
400 IllegalParam.IP The param of %s is illegal. The parameter IP is invalid. Please check the input value of the parameter IP.
400 Mismatch.IP The %s is mismatched for %s and %s. The entered IP type server ID and IP do not match.
400 Mismatch.VpcId The %s is mismatched for %s and %s. The VPC IDs of the two resources do not match.
400 QuotaExceeded.ServerGroupServersNum The quota of %s is exceeded for resource %s, usage %s/%s. The quota gwlb_quota_servergroup_servers_num has exceeded the quota limit.
400 QuotaExceeded.ServerGroupAzServersNum The quota of %s is exceeded for resource %s, usage %s/%s. The quota gwlb_quota_servergroup_az_servers_num has exceeded the quota limit.
400 IncorrectStatus.ServerGroup The status of %s [%s] is incorrect. The status of %s [%s] is incorrect.
404 ResourceNotFound.Eni The specified resource of %s is not found. The specified elastic network interfaces resource does not exist.
404 ResourceNotFound.Eci The specified resource of %s is not found. The specified elastic container instance resource does not exist.
404 ResourceNotFound.ServerGroup The specified resource of %s is not found. The specified server group resource does not exist.
404 ResourceNotFound.Ecs The specified resource of %s is not found. The specified ECS resource does not exist.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.