Updated on 2026-05-21 GMT+08:00

Adding or Modifying an Auto Scaling Policy

Function

Adds or modifies an auto scaling policy. Only pay-per-use servers support this operation.

Debugging

You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.

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

    workspace:scalingPolicy:create

    Write

    -

    -

    -

    -

URI

PUT /v1/{project_id}/scaling-policy

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Unique ID of a project

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

No

String

User token

It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is the user token.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

enable

No

Boolean

Indicates whether to enable the policy. The policy is enabled by default.

true: yes

false: disabled.

max_scaling_amount

Yes

Integer

Maximum number of servers whose capacity can be expanded.

single_expansion_count

Yes

Integer

Maximum number of servers whose capacity can be expanded at a time.

scaling_policy_by_session

Yes

ScalingPolicyBySession object

Session-based scaling policy.

scaling_policy_by_resource

No

ScalingPolicyByResource object

Resource-based elastic scaling policy.

server_group_id

Yes

String

Unique ID of a server group. (This operation is supported only by pay-per-use server groups.).

Table 4 ScalingPolicyBySession

Parameter

Mandatory

Type

Description

session_usage_threshold

No

Integer

Total session usage of a group (capacity expansion after the threshold is reached).

shrink_after_session_idle_minutes

Yes

Integer

Releases instances that have no session connection within a specified period.

Table 5 ScalingPolicyByResource

Parameter

Mandatory

Type

Description

cpu_usage_threshold

No

Integer

Total CPU usage of a group (scale-out is performed when the threshold is reached).

mem_usage_threshold

No

Integer

Total memory usage of a group (scale-out is performed when the threshold is reached).

gpu_usage_threshold

No

Integer

Total GPU usage of a group (scale-out is performed when the threshold is reached).

Response Parameters

Status code: 200

Table 6 Response body parameters

Parameter

Type

Description

enable

Boolean

Indicates whether to enable the policy. The policy is enabled by default.

true: yes

false: disabled.

max_scaling_amount

Integer

Maximum number of servers whose capacity can be expanded.

single_expansion_count

Integer

Maximum number of servers whose capacity can be expanded at a time.

scaling_policy_by_session

ScalingPolicyBySession object

Session-based scaling policy.

scaling_policy_by_resource

ScalingPolicyByResource object

Resource-based elastic scaling policy.

Table 7 ScalingPolicyBySession

Parameter

Type

Description

session_usage_threshold

Integer

Total session usage of a group (capacity expansion after the threshold is reached).

shrink_after_session_idle_minutes

Integer

Releases instances that have no session connection within a specified period.

Table 8 ScalingPolicyByResource

Parameter

Type

Description

cpu_usage_threshold

Integer

Total CPU usage of a group (scale-out is performed when the threshold is reached).

mem_usage_threshold

Integer

Total memory usage of a group (scale-out is performed when the threshold is reached).

gpu_usage_threshold

Integer

Total GPU usage of a group (scale-out is performed when the threshold is reached).

Status code: 400

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 401

Table 10 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 403

Table 11 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 404

Table 12 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 405

Table 13 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 500

Table 14 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Status code: 503

Table 15 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

Example Requests

{
  "enable" : true,
  "max_scaling_amount" : 10,
  "single_expansion_count" : 1,
  "scaling_policy_by_session" : {
    "session_usage_threshold" : 85,
    "shrink_after_session_idle_minutes" : 60
  },
  "scaling_policy_by_resource" : {
    "cpu_usage_threshold" : 85,
    "mem_usage_threshold" : 60,
    "gpu_usage_threshold" : 55
  },
  "server_group_id" : "1c873056-9f4d-11ec-b909-0242ac120002"
}

Example Responses

Status code: 200

Response to a successful request.

{
  "enable" : true,
  "max_scaling_amount" : 10,
  "single_expansion_count" : 1,
  "scaling_policy_by_session" : {
    "session_usage_threshold" : 85,
    "shrink_after_session_idle_minutes" : 60
  },
  "scaling_policy_by_resource" : {
    "cpu_usage_threshold" : 85,
    "mem_usage_threshold" : 60,
    "gpu_usage_threshold" : 55
  }
}

Status Codes

Status Code

Description

200

Response to a successful request.

400

The request cannot be understood by the server due to malformed syntax.

401

Authentication failed.

403

Permissions required.

404

No resources found.

405

The request method is not allowed.

500

An internal service error occurred. For details, see the error code description.

503

Service unavailable.

Error Codes

See Error Codes.