CreateLoadBalancer - Amazon Lightsail


Creates a Lightsail load balancer. To learn more about deciding whether to load balance your application, see Configure your Lightsail instances for load balancing. You can create up to 5 load balancers per AWS Region in your account.

When you create a load balancer, you can specify a unique name and port settings. To change additional load balancer settings, use the UpdateLoadBalancerAttribute operation.

The create load balancer operation supports tag-based access control via request tags. For more information, see the Amazon Lightsail Developer Guide.

Request Syntax

{ "certificateAlternativeNames": [ "string" ], "certificateDomainName": "string", "certificateName": "string", "healthCheckPath": "string", "instancePort": number, "ipAddressType": "string", "loadBalancerName": "string", "tags": [ { "key": "string", "value": "string" } ], "tlsPolicyName": "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.


The optional alternative domains and subdomains to use with your SSL/TLS certificate (e.g.,,,,

Type: Array of strings

Required: No


The domain name with which your certificate is associated (e.g.,

If you specify certificateDomainName, then certificateName is required (and vice-versa).

Type: String

Required: No


The name of the SSL/TLS certificate.

If you specify certificateName, then certificateDomainName is required (and vice-versa).

Type: String

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

Required: No


The path you provided to perform the load balancer health check. If you didn't specify a health check path, Lightsail uses the root path of your website (e.g., "/").

You may want to specify a custom health check path other than the root of your application if your home page loads slowly or has a lot of media or scripting on it.

Type: String

Required: No


The instance port where you're creating your load balancer.

Type: Integer

Valid Range: Minimum value of -1. Maximum value of 65535.

Required: Yes


The IP address type for the load balancer.

The possible values are ipv4 for IPv4 only, and dualstack for IPv4 and IPv6.

The default value is dualstack.

Type: String

Valid Values: dualstack | ipv4

Required: No


The name of your load balancer.

Type: String

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

Required: Yes


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

Use the TagResource action to tag a resource after it's created.

Type: Array of Tag objects

Required: No


The name of the TLS policy to apply to the load balancer.

Use the GetLoadBalancerTlsPolicies action to get a list of TLS policy names that you can specify.

For more information about load balancer TLS policies, see Configuring TLS security policies on your Amazon Lightsail load balancers in the Amazon Lightsail Developer 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 objects that describe the result of the action, such as the status of the request, the timestamp of the request, and the resources affected by the 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 and distribution APIs are only available in the N. Virginia (us-east-1) AWS 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: