All Products
Search
Document Center

Simple Application Server:CreateCustomImage

Last Updated:Oct 26, 2026

Creates a custom image from a snapshot.

Operation description

A custom image is an image that you create from a snapshot of a Simple Application Server. You can use a configured custom image to create more Simple Application Servers with the same configurations. You can also share the custom image to Elastic Computing Service to create ECS instances or replace operating systems by using the shared image. For more information about custom images, see Custom image overview.

Before you create a custom image, you must create a system disk snapshot for the Simple Application Server. For more information, see CreateSnapshot.

Note

If you want to include data disk data in the custom image, create a data disk snapshot for the server first.

Before you create a custom image, take note of the following items:

  • The custom image is created in the same region as the Simple Application Server.

  • The maximum number of custom images that you can create is three times the number of Simple Application Servers that you have created, up to a maximum of 15.

  • Only system disk snapshots can be directly used to create custom images. If you want to include data disk data in the custom image, you must manually select the corresponding data disk snapshot during the creation process.

  • If a Simple Application Server is released due to expiration or refund, the custom images created from the server are also released.

  • Resetting the system or replacing the image clears the disk data on the server. Back up your data as needed.

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

swas-open:CreateCustomImage

create

*CustomImage

acs:swas-open:{#regionId}:{#accountId}:customimage/*

None None

Request parameters

Parameter

Type

Required

Description

Example

RegionId

string

Yes

The region ID. You can call the ListRegions operation to query available regions.

cn-hangzhou

ClientToken

string

No

The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that it is unique among different requests. The ClientToken value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see How to ensure idempotence.

123e4567-e89b-12d3-a456-426655440000

InstanceId

string

Yes

The instance ID of the specified Simple Application Server.

ace0706b2ac4454d984295a94213****

ImageName

string

Yes

The name of the custom image. The name must be 2 to 128 characters in length and must start with a letter, a Chinese character, or a digit. It can contain digits, colons (:), underscores (_), and hyphens (-). Default value: empty.

customImage-test

SystemSnapshotId

string

No

The ID of the system disk snapshot.

s-acscasca****

Description

string

No

The description of the image.

test

DataSnapshotId

string

No

The ID of the data disk snapshot.

s-acscasca****

Tag

array<object>

No

The list of tags. You can specify up to 20 tags.

object

No

The tag.

Key

string

No

The key of tag N that is added to the custom image. Valid values of N: 1 to 20. The tag key cannot be an empty string. It can be up to 64 characters in length, and cannot start with aliyun or acs:. It cannot contain http:// or https://.

TestKey

Value

string

No

The value of tag N that is added to the custom image. Valid values of N: 1 to 20. The tag value can be an empty string. It can be up to 64 characters in length, and cannot contain http:// or https://.

TestValue

ResourceGroupId

string

No

The ID of the resource group.

rg-aek2bti7cf7****

Response elements

Element

Type

Description

Example

object

RequestId

string

The ID of the request.

473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

ImageId

string

The ID of the custom image.

m-csaascsaccscs****

Examples

Success response

JSON format

{
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
  "ImageId": "m-csaascsaccscs****"
}

Error codes

HTTP status code

Error code

Error message

Description

400 InvalidParam.DataSnapshotIdNotFound The specified parameter dataSnapshotId is not found.
400 InvalidParam.SystemSnapshotIdNotFound The specified parameter systemSnapshotId is not found.
400 InvalidParam.IllegalImageName The specified parameter imageName is illegal. The specified image name is invalid.
400 ImageNameAlreadyExist The image name already exists. The specified image name already exists.
400 CustomImageQuotaLimit The maximum number of custom image in this region is exceeded. The maximum number of custom images within this region has been reached.
400 InvalidParam.SystemSnapshotIdNotSupport You cannot create custom images in the specified parameter system snapshotId.
500 InternalError An error occurred while processing your request.
403 IncorrectInstanceStatus The state of the current instance does not support this operation.
404 InvalidInstanceId.NotFound The specified InstanceId does not exist.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.