API standards and multilingual preset SDKs
The OpenAPI of this product (Ess/2014-08-28) uses the RPC signature style. We have encapsulated SDKs for common programming languages for developers. Developers can download the SDK to directly call this product's OpenAPI without worrying about technical details. If the existing SDK does not meet your needs, you can use the signature mechanism for self-signing integration. Since the details of self-signing are very complex, it may take around 5 business days. Therefore, we recommend joining our DingTalk service group (147535001692) and conducting signature integration under expert guidance.
Before using the API, you need to prepare your identity account and access key (AccessKey) to effectively access the API through client tools (such as SDK and CLI). For details, see Obtain an AccessKey.
Custom signature scenarios
If your business scenario has special requirements and you need to integrate the API through self-signing, we recommend consulting our technical support team first (DingTalk service group: 147535001692) to obtain professional guidance and ensure efficient integration.
Account and security preparation
Alibaba Cloud accounts have full administrative permissions over all resources. Once an AccessKey is compromised, all associated resources will be at risk of unauthorized access. To ensure security, it is recommended to create a RAM user with only API access permissions and configure its AccessKey, while configuring RAM policies based on the principle of least privilege (PoLP). Use the Alibaba Cloud account only in specific scenarios where Alibaba Cloud account permissions are explicitly required.
Scaling group
|
API |
Title |
Description |
| CreateScalingGroup | Create a scaling group | Creates a scaling group to automatically adjust your compute capacity (the number of instances) based on business changes and policies if you need to automatically increase or decrease the number of instances of a specified type. |
| DeleteScalingGroup | Delete a scaling group | Deletes a scaling group. |
| ModifyScalingGroup | Modify a scaling group | If you need to automatically increase or decrease the number of instances of a specific type based on business changes and policies, you can configure a scaling group to automatically adjust your compute capacity (that is, the number of instances). If the current scaling group attributes no longer meet your business requirements, you can call the ModifyScalingGroup operation to modify scaling group attributes such as the maximum number of instances, minimum number of instances, or expected number of instances. This way, you do not need to create a scaling group again or reconfigure related attributes, which saves time and resources. |
| EnableScalingGroup | Enable a scaling group | Enables a scaling group. |
| DisableScalingGroup | Disable a scaling group | Disables a scaling group. |
| SetGroupDeletionProtection | Enable or disable deletion protection for a scaling group | Enables or disables deletion protection for a scaling group. |
| AttachLoadBalancers | Add one or more load balancing instances | Adds one or more load balancing instances. |
| DetachLoadBalancers | Remove one or more load balancing instances | Removes one or more load balancing instances. |
| DetachDBInstances | Remove one or more RDS instances | Removes one or more ApsaraDB RDS instances. |
| AttachDBInstances | Add one or more apsaraDB RDS instances | Adds one or more ApsaraDB RDS instances. |
| AttachVServerGroups | Add virtual server groups to a scaling group | Adds one or more virtual server groups to a load balancing instance associated with a scaling group. |
| DetachVServerGroups | Remove one or more virtual server groups | Removes one or more virtual server groups. |
| DescribeScalingGroups | Query scaling groups | Queries scaling groups. You can call this operation to view basic information about scaling groups, instances in scaling groups, and scaling configurations. |
| DescribeScalingInstances | Query ECS instances in a scaling group | Queries the list of ECS instances in a scaling group and instance information by scaling group ID, including the total number of running spot instances, total number of ECS instances, warmup state of ECS instances, and lifecycle state in the current scaling group. You can also filter ECS instances by health check status, lifecycle state, or creation type. |
| DescribeScalingActivities | Query scaling activities | Queries the details of scaling activities by calling the DescribeScalingActivities operation. You can use this operation to view the results of scaling activities triggered by scheduled tasks, event-triggered tasks, or manual execution of scaling rules. For example, you can view the status, cause, and total number of instances after the change for a scaling activity. |
| DescribeScalingActivityDetail | Query the details of a scaling activity | Queries the details of a scaling activity. |
| DescribeLimitation | Query resource quota limits | Queries resource quota limits. |
| DescribeElasticStrength | Query elastic strength of a scaling group | The validity of a scaling group configuration largely determines the success rate of scale-out operations. Auto Scaling uses elastic strength to describe the validity of scaling configurations, quantifying configuration quality and helping you optimize scaling configurations accordingly. |
| VerifyAuthentication | Check whether Auto Scaling is authorized to operate on ECS resources | Checks whether Auto Scaling is authorized to operate on ECS resources. |
| SuspendProcesses | Suspend specified scaling processes in a scaling group | Suspends specified scaling processes in a scaling group. |
| ResumeProcesses | Resume paused scaling processes in a scaling group | Resumes paused scaling processes in a scaling group. |
| VerifyUser | Verify whether Auto Scaling is activated | Verifies whether Auto Scaling is activated. |
Scaling configuration
|
API |
Title |
Description |
| CreateScalingConfiguration | Create a scaling configuration | Creates an ECS-type scaling configuration for a scaling group by calling the CreateScalingConfiguration operation with the scaling group ID, instance type, instance image, and other information. |
| DeleteScalingConfiguration | Delete a scaling configuration | Deletes a scaling configuration. |
| ModifyScalingConfiguration | Modify an eCS-type scaling configuration | Modifies an ECS-type scaling configuration (the ECS instance template for scale-out) if the current scaling configuration does not meet your business requirements. You can invoke this API operation to modify the scaling configuration. |
| DescribeScalingConfigurations | Query eCS-type scaling configurations | Queries information about ECS-type scaling configurations, including instance types and images, to help you understand the details of ECS instance templates used for scale-out in advance. |
| DeactivateScalingConfiguration | Deactivate a specified scaling configuration | Deactivates a specified scaling configuration. |
Scaling rule
|
API |
Title |
Description |
| CreateScalingRule | Create a scaling rule | Creates a scaling rule. |
| DeleteScalingRule | Delete a scaling rule | Deletes a scaling rule. |
| ModifyScalingRule | Modify a scaling rule | Modifies a scaling rule. |
| DescribeScalingRules | Query scaling rules | Queries the scaling rules in a scaling group and returns information about the scaling rules. |
Event-triggered task
|
API |
Title |
Description |
| AttachInstances | Manually add ECS instances to a scaling group | Manually adds ECS instances to a scaling group. |
| DetachInstances | Remove one or more ECS instances from a scaling group | Removes one or more ECS instances from a scaling group. |
| ExecuteScalingRule | Execute a scaling rule | Executes a scaling rule. |
| RemoveInstances | Remove one or more ECS instances from a scaling group | Removes one or more ECS instances from a scaling group. |
Scheduled task
|
API |
Title |
Description |
| CreateScheduledTask | Create a scheduled task | Creates a scheduled task. |
| DeleteScheduledTask | Delete a scheduled task | Deletes a scheduled task. |
| ModifyScheduledTask | Modify a scheduled task | Modifies the information of a scheduled task. |
| DescribeScheduledTasks | Query scheduled task information | Queries information about scheduled tasks. |
Lifecycle hook
|
API |
Title |
Description |
| CreateLifecycleHook | Create one or more lifecycle hooks for a scaling group | Creates one or more lifecycle hooks for a scaling group. |
| DeleteLifecycleHook | Delete a lifecycle hook | Deletes a lifecycle hook. |
| ModifyLifecycleHook | Modify a lifecycle hook | Modifies the information of a lifecycle hook. |
| DescribeLifecycleActions | Query lifecycle tokens | Queries lifecycle tokens by scaling activity ID and status. |
| DescribeLifecycleHooks | Query lifecycle hook details | Queries information about lifecycle hooks by lifecycle hook ID or scaling group ID, including the default action after the wait state ends, the type of scaling activity associated with the lifecycle hook, the notification object identifier, and the suspension wait time. |
| RecordLifecycleActionHeartbeat | Extend the wait time after a lifecycle hook is triggered | Extends the wait time for an ECS instance that is suspended after a lifecycle hook is triggered. |
| CompleteLifecycleAction | Complete the wait state of a scaling activity ahead of schedule | Completes the wait state of a scaling activity ahead of schedule. |
Event notification
|
API |
Title |
Description |
| CreateNotificationConfiguration | Create Auto Scaling event and resource change notifications | Creates auto scaling event and resource change notifications. |
| DeleteNotificationConfiguration | Delete an auto scaling event and resource change notification | Deletes an auto scaling event and resource change notification. |
| ModifyNotificationConfiguration | Modify a notification for Auto Scaling events and resource changes | Modifies a notification for Auto Scaling events and resource changes. |
| DescribeNotificationConfigurations | Query auto scaling events and resource change notifications | Queries the auto scaling events and resource change notifications that you created. |
| DescribeNotificationTypes | Query types of Auto Scaling events and resource change notifications | Queries the types of Auto Scaling events and resource change notifications. |
Instance
|
API |
Title |
Description |
| SetInstancesProtection | Start or stop protection for ECS instances in a scaling group | Starts or stops protection for one or more ECS instances in a scaling group. |
| SetInstanceHealth | Set the health status of an ECS instance in a scaling group | Sets the health status of an ECS instance in a scaling group. |
| EnterStandby | Set ECS instances in a scaling group to the standby state | Sets ECS instances in a scaling group to the standby state. |
| ExitStandby | Transition standby instances to running state | Transitions ECS instances in standby state within a scaling group to the running state. |
| RebalanceInstances | Rebalance ECS instance distribution | Rebalances the distribution of ECS instances across zones in a multi-zone scaling group. |
Region
|
API |
Title |
Description |
| DescribeRegions | Query regions where Auto Scaling is available | Queries the regions where Auto Scaling is available. |
Tag
|
API |
Title |
Description |
| ListTagResources | Query tags attached to Auto Scaling resources | Queries the tags that are attached to one or more Auto Scaling resources. |
| ListTagKeys | Query tag keys of Auto Scaling resources | Queries the list of tag keys for Auto Scaling resources. |
| ListTagValues | Query tag values of Auto Scaling resources by tag key | Queries the tag values that correspond to a tag key of Auto Scaling resources. |
| TagResources | Create and bind tags to a resource list | Creates and binds tags to a list of specified Auto Scaling resources. |
| UntagResources | Unbind tags from specified Auto Scaling resources | After a tag is unbound, the tag is automatically deleted if it is not bound to any other resources. |
Alert
|
API |
Title |
Description |
| CreateAlarm | Create an event-triggered task | Creates an event-triggered task. |
| DeleteAlarm | Delete an event-triggered task | Deletes an event-triggered task. |
| DisableAlarm | Disable an event-triggered task | Disables an event-triggered task. |
| EnableAlarm | Enable an event-triggered task | Enables an event-triggered task. |
| ModifyAlarm | Modify an event-triggered task | Modifies an event-triggered task. |
| DescribeAlarms | Query event-triggered task information | Queries information about event-triggered tasks. |
Other
|
API |
Title |
Description |
| AttachAlbServerGroups | Add one or more ALB server groups | Adds one or more Application Load Balancer (ALB) server groups to a scaling group. |
| CreateEciScalingConfiguration | Create a scaling configuration | Creates a scaling configuration of the Elastic Container Instance (ECI) type. |
| DeleteEciScalingConfiguration | Delete a scaling configuration | Deletes a scaling configuration of the Elastic Container Instance (ECI) type. |
| DescribeEciScalingConfigurations | Query scaling configuration information | Queries scaling configurations of the ECI type. |
| DetachAlbServerGroups | Remove one or more ALB server groups | Removes one or more Application Load Balancer (ALB) server groups from a scaling group. |
| ModifyEciScalingConfiguration | Modify a scaling configuration | Modifies a scaling configuration of the Elastic Container Instance (ECI) type. |
| ScaleWithAdjustment | Trigger elastic scaling based on a specified adjustment rule | Triggers elastic scaling based on a specified adjustment rule. |
| ChangeResourceGroup | Change the resource group of a scaling group | Adds a scaling group as a resource to a resource group. |
| AttachServerGroups | Add one or more load balancing server groups | Adds one or more load balancing server groups to a scaling group. Supported server group types include Application Load Balancer (ALB) and Network Load Balancer (NLB). |
| DetachServerGroups | Remove one or more load balancing server groups | Removes one or more load balancing server groups from a scaling group. Supported server group types include Application Load Balancer (ALB) and Network Load Balancer (NLB). |
| ModifyInstanceAttribute | Modify partial information of an ECS instance in a scaling group | Modifies partial information of an ECS instance in a scaling group by calling the ModifyInstanceAttribute API. Currently, only the lifecycle management property of instances manually added to a scaling group can be modified, allowing Auto Scaling to manage ECS instances in the scaling group more flexibly. |
| DescribePatternTypes | Query instance types by instance attributes | Queries instance types that match specified instance attributes, such as the number of vCPUs, memory size, instance family level, and maximum acceptable price, when you configure a scaling configuration by specifying instance attributes. This operation calls the DescribePatternTypes API operation. |
| ApplyScalingGroup | Manage scaling groups by using a configuration file | Creates and manages Elastic Container Instance (ECI)-based scaling groups by using a configuration file. You can call the ApplyScalingGroup operation to implement this feature. |
| ModifyAlertConfiguration | Set scaling activity statuses for message notifications in a scaling group | Configures the scaling activity statuses for which Auto Scaling sends SMS and email notifications within a scaling group. When a scaling activity succeeds, fails, or is rejected, Auto Scaling can send notifications via SMS or email. You must handle the related events after receiving the notifications. You can call the ModifyAlertConfiguration operation to set the scaling activity statuses that trigger SMS and email notifications in a scaling group, so that you can stay informed about scaling activity changes and respond promptly to improve scaling efficiency. |
| DescribeAlertConfiguration | Query scaling activity status for notifications in a scaling group | When a scaling activity succeeds, fails, or is rejected, Auto Scaling can send notifications through SMS messages and emails. You must handle the related events after receiving the notifications. You can call the DescribeAlertConfiguration operation to query the status of scaling activities for which SMS and email notifications are sent in a scaling group. This helps you stay informed about changes to scaling activities and respond quickly to improve scaling efficiency. |
| SuspendInstanceRefresh | Pause an instance refresh task | Pauses an instance refresh task. During the execution of an instance refresh task, if you suspect that the configuration has issues but are not sure whether a rollback is needed, you can call this operation to pause the instance refresh task. During the pause, you can check whether the configuration is correct. |
| ResumeInstanceRefresh | Resume a paused instance refresh task | Resumes an instance refresh task that is in the paused state. |
| CancelInstanceRefresh | Cancel an instance refresh task | Cancels an instance refresh task. Instances that have already been replaced or added during scale-out are retained. |
| DescribeInstanceRefreshes | Query instance refresh tasks | Queries instance refresh tasks of a scaling group, including basic information and progress of the tasks. |
| RollbackInstanceRefresh | Roll back an instance refresh task | Rolls back an instance refresh task during execution. If the desired configuration no longer meets your requirements during an instance refresh task, call this operation to roll back the task. During the rollback, the system creates new instances based on the currently active configuration of the scaling group to replace instances that were created based on the desired configuration. |
| StartInstanceRefresh | Start an instance refresh task | Refreshes instances in a scaling group when you need to apply a new scaling configuration or update the image of instances in the scaling group. |