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

CreateLoadBalancer

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.

Request Syntax

{
   "certificateAlternativeNames": [ "string" ],
   "certificateDomainName": "string",
   "certificateName": "string",
   "healthCheckPath": "string",
   "instancePort": number,
   "loadBalancerName": "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.

certificateAlternativeNames

The optional alternative domains and subdomains to use with your SSL/TLS certificate (e.g., www.example.com, example.com, m.example.com, blog.example.com).

Type: Array of strings

Required: No

certificateDomainName

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

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

Type: String

Required: No

certificateName

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

healthCheckPath

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

instancePort

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

Type: Integer

Valid Range: Minimum value of 0. Maximum value of 65535.

Required: Yes

loadBalancerName

The name of your load balancer.

Type: String

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

Required: Yes

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.

operations

An object containing information about the API operations.

Type: Array of Operation objects

Errors

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

AccessDeniedException

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

HTTP Status Code: 400

AccountSetupInProgressException

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

HTTP Status Code: 400

InvalidInputException

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

Note

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

NotFoundException

Lightsail throws this exception when it cannot find a resource.

HTTP Status Code: 400

OperationFailureException

Lightsail throws this exception when an operation fails to execute.

HTTP Status Code: 400

ServiceException

A general service exception.

HTTP Status Code: 500

UnauthenticatedException

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: