CreateLoadBalancerTlsCertificateCommand

Creates an SSL/TLS certificate for an Amazon Lightsail load balancer.

TLS is just an updated, more secure version of Secure Socket Layer (SSL).

The CreateLoadBalancerTlsCertificate operation supports tag-based access control via resource tags applied to the resource identified by load balancer name. For more information, see the Amazon Lightsail Developer Guide .

Example Syntax

Use a bare-bones client and the command you need to make an API call.

import { LightsailClient, CreateLoadBalancerTlsCertificateCommand } from "@aws-sdk/client-lightsail"; // ES Modules import
// const { LightsailClient, CreateLoadBalancerTlsCertificateCommand } = require("@aws-sdk/client-lightsail"); // CommonJS import
const client = new LightsailClient(config);
const input = { // CreateLoadBalancerTlsCertificateRequest
  loadBalancerName: "STRING_VALUE", // required
  certificateName: "STRING_VALUE", // required
  certificateDomainName: "STRING_VALUE", // required
  certificateAlternativeNames: [ // DomainNameList
    "STRING_VALUE",
  ],
  tags: [ // TagList
    { // Tag
      key: "STRING_VALUE",
      value: "STRING_VALUE",
    },
  ],
};
const command = new CreateLoadBalancerTlsCertificateCommand(input);
const response = await client.send(command);
// { // CreateLoadBalancerTlsCertificateResult
//   operations: [ // OperationList
//     { // Operation
//       id: "STRING_VALUE",
//       resourceName: "STRING_VALUE",
//       resourceType: "ContainerService" || "Instance" || "StaticIp" || "KeyPair" || "InstanceSnapshot" || "Domain" || "PeeredVpc" || "LoadBalancer" || "LoadBalancerTlsCertificate" || "Disk" || "DiskSnapshot" || "RelationalDatabase" || "RelationalDatabaseSnapshot" || "ExportSnapshotRecord" || "CloudFormationStackRecord" || "Alarm" || "ContactMethod" || "Distribution" || "Certificate" || "Bucket",
//       createdAt: new Date("TIMESTAMP"),
//       location: { // ResourceLocation
//         availabilityZone: "STRING_VALUE",
//         regionName: "us-east-1" || "us-east-2" || "us-west-1" || "us-west-2" || "eu-west-1" || "eu-west-2" || "eu-west-3" || "eu-central-1" || "ca-central-1" || "ap-south-1" || "ap-southeast-1" || "ap-southeast-2" || "ap-northeast-1" || "ap-northeast-2" || "eu-north-1",
//       },
//       isTerminal: true || false,
//       operationDetails: "STRING_VALUE",
//       operationType: "DeleteKnownHostKeys" || "DeleteInstance" || "CreateInstance" || "StopInstance" || "StartInstance" || "RebootInstance" || "OpenInstancePublicPorts" || "PutInstancePublicPorts" || "CloseInstancePublicPorts" || "AllocateStaticIp" || "ReleaseStaticIp" || "AttachStaticIp" || "DetachStaticIp" || "UpdateDomainEntry" || "DeleteDomainEntry" || "CreateDomain" || "DeleteDomain" || "CreateInstanceSnapshot" || "DeleteInstanceSnapshot" || "CreateInstancesFromSnapshot" || "CreateLoadBalancer" || "DeleteLoadBalancer" || "AttachInstancesToLoadBalancer" || "DetachInstancesFromLoadBalancer" || "UpdateLoadBalancerAttribute" || "CreateLoadBalancerTlsCertificate" || "DeleteLoadBalancerTlsCertificate" || "AttachLoadBalancerTlsCertificate" || "CreateDisk" || "DeleteDisk" || "AttachDisk" || "DetachDisk" || "CreateDiskSnapshot" || "DeleteDiskSnapshot" || "CreateDiskFromSnapshot" || "CreateRelationalDatabase" || "UpdateRelationalDatabase" || "DeleteRelationalDatabase" || "CreateRelationalDatabaseFromSnapshot" || "CreateRelationalDatabaseSnapshot" || "DeleteRelationalDatabaseSnapshot" || "UpdateRelationalDatabaseParameters" || "StartRelationalDatabase" || "RebootRelationalDatabase" || "StopRelationalDatabase" || "EnableAddOn" || "DisableAddOn" || "PutAlarm" || "GetAlarms" || "DeleteAlarm" || "TestAlarm" || "CreateContactMethod" || "GetContactMethods" || "SendContactMethodVerification" || "DeleteContactMethod" || "CreateDistribution" || "UpdateDistribution" || "DeleteDistribution" || "ResetDistributionCache" || "AttachCertificateToDistribution" || "DetachCertificateFromDistribution" || "UpdateDistributionBundle" || "SetIpAddressType" || "CreateCertificate" || "DeleteCertificate" || "CreateContainerService" || "UpdateContainerService" || "DeleteContainerService" || "CreateContainerServiceDeployment" || "CreateContainerServiceRegistryLogin" || "RegisterContainerImage" || "DeleteContainerImage" || "CreateBucket" || "DeleteBucket" || "CreateBucketAccessKey" || "DeleteBucketAccessKey" || "UpdateBucketBundle" || "UpdateBucket" || "SetResourceAccessForBucket" || "UpdateInstanceMetadataOptions" || "StartGUISession" || "StopGUISession" || "SetupInstanceHttps",
//       status: "NotStarted" || "Started" || "Failed" || "Completed" || "Succeeded",
//       statusChangedAt: new Date("TIMESTAMP"),
//       errorCode: "STRING_VALUE",
//       errorDetails: "STRING_VALUE",
//     },
//   ],
// };

CreateLoadBalancerTlsCertificateCommand Input

Parameter
Type
Description
certificateDomainName
Required
string | undefined

The domain name (example.com) for your SSL/TLS certificate.

certificateName
Required
string | undefined

The SSL/TLS certificate name.

You can have up to 10 certificates in your account at one time. Each Lightsail load balancer can have up to 2 certificates associated with it at one time. There is also an overall limit to the number of certificates that can be issue in a 365-day period. For more information, see Limits .

loadBalancerName
Required
string | undefined

The load balancer name where you want to create the SSL/TLS certificate.

certificateAlternativeNames
string[] | undefined

An array of strings listing alternative domains and subdomains for your SSL/TLS certificate. Lightsail will de-dupe the names for you. You can have a maximum of 9 alternative names (in addition to the 1 primary domain). We do not support wildcards (*.example.com).

tags
Tag[] | undefined

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.

CreateLoadBalancerTlsCertificateCommand Output

Parameter
Type
Description
$metadata
Required
ResponseMetadata
Metadata pertaining to this request.
operations
Operation[] | undefined

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.

Throws

Name
Fault
Details
AccessDeniedException
client

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

AccountSetupInProgressException
client

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

InvalidInputException
client

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) Amazon Web Services Region. Please set your Amazon Web Services Region configuration to us-east-1 to create, view, or edit these resources.

NotFoundException
client

Lightsail throws this exception when it cannot find a resource.

OperationFailureException
client

Lightsail throws this exception when an operation fails to execute.

ServiceException
server

A general service exception.

UnauthenticatedException
client

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

LightsailServiceException
Base exception class for all service exceptions from Lightsail service.