Amazon Lightsail
API Reference (API Version 2016-11-28)

The AWS Documentation website is getting a new look!
Try it now and let us know what you think. Switch to the new look >>

You can return to the original look by selecting English in the language selector above.


Uses a specific snapshot as a blueprint for creating one or more new instances that are based on that identical configuration.

The create instances from snapshot operation supports tag-based access control via request tags and resource tags applied to the resource identified by instance snapshot name. For more information, see the Lightsail Dev Guide.

Request Syntax

{ "attachedDiskMapping": { "string" : [ { "newDiskName": "string", "originalDiskPath": "string" } ] }, "availabilityZone": "string", "bundleId": "string", "instanceNames": [ "string" ], "instanceSnapshotName": "string", "keyPairName": "string", "tags": [ { "key": "string", "value": "string" } ], "userData": "string" }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.


An object containing information about one or more disk mappings.

Type: String to array of DiskMap objects map

Key Pattern: \w[\w\-]*\w

Required: No


The Availability Zone where you want to create your instances. Use the following formatting: us-east-2a (case sensitive). You can get a list of Availability Zones by using the get regions operation. Be sure to add the include Availability Zones parameter to your request.

Type: String

Required: Yes


The bundle of specification information for your virtual private server (or instance), including the pricing plan (e.g., micro_1_0).

Type: String

Pattern: .*\S.*

Required: Yes


The names for your new instances.

Type: Array of strings

Required: Yes


The name of the instance snapshot on which you are basing your new instances. Use the get instance snapshots operation to return information about your existing snapshots.

Type: String

Pattern: \w[\w\-]*\w

Required: Yes


The name for your key pair.

Type: String

Pattern: \w[\w\-]*\w

Required: No


The tag keys and optional values to add to the resource during create.

To tag a resource after it has been created, see the tag resource operation.

Type: Array of Tag objects

Required: No


You can create a launch script that configures a server with additional user data. For example, apt-get -y update.


Depending on the machine image you choose, the command to get software on your instance varies. Amazon Linux and CentOS use yum, Debian and Ubuntu use apt-get, and FreeBSD uses pkg. For a complete list, see the Dev Guide.

Type: String

Required: No

Response Syntax

{ "operations": [ { "createdAt": number, "errorCode": "string", "errorDetails": "string", "id": "string", "isTerminal": boolean, "location": { "availabilityZone": "string", "regionName": "string" }, "operationDetails": "string", "operationType": "string", "resourceName": "string", "resourceType": "string", "status": "string", "statusChangedAt": number } ] }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.


An array of key-value pairs containing information about the results of your create instances from snapshot request.

Type: Array of Operation objects


For information about the errors that are common to all actions, see Common Errors.


Lightsail throws this exception when the user cannot be authenticated or uses invalid credentials to access a resource.

HTTP Status Code: 400


Lightsail throws this exception when an account is still in the setup in progress state.

HTTP Status Code: 400


Lightsail throws this exception when user input does not conform to the validation rules of an input field.


Domain-related APIs are only available in the N. Virginia (us-east-1) Region. Please set your AWS Region configuration to us-east-1 to create, view, or edit these resources.

HTTP Status Code: 400


Lightsail throws this exception when it cannot find a resource.

HTTP Status Code: 400


Lightsail throws this exception when an operation fails to execute.

HTTP Status Code: 400


A general service exception.

HTTP Status Code: 500


Lightsail throws this exception when the user has not been authenticated.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: