From b62673c1218047172c39829825ec11fbde5f125d Mon Sep 17 00:00:00 2001 From: Trivikram Kamat <16024985+trivikr@users.noreply.github.com> Date: Thu, 12 Nov 2020 23:19:07 +0000 Subject: [PATCH] feat: update clients as of 11/12 --- clients/client-iot/models/models_0.ts | 49 +- clients/client-iot/protocols/Aws_restJson1.ts | 6 + .../models/models_0.ts | 2075 ++-- .../protocols/Aws_restJson1.ts | 170 +- clients/client-lightsail/Lightsail.ts | 641 +- clients/client-lightsail/LightsailClient.ts | 88 +- .../commands/CreateContainerServiceCommand.ts | 82 + ...CreateContainerServiceDeploymentCommand.ts | 88 + ...ateContainerServiceRegistryLoginCommand.ts | 92 + .../commands/DeleteContainerImageCommand.ts | 82 + .../commands/DeleteContainerServiceCommand.ts | 82 + .../GetContainerAPIMetadataCommand.ts | 82 + .../commands/GetContainerImagesCommand.ts | 82 + .../commands/GetContainerLogCommand.ts | 82 + .../GetContainerServiceDeploymentsCommand.ts | 88 + .../GetContainerServiceMetricDataCommand.ts | 85 + .../GetContainerServicePowersCommand.ts | 85 + .../commands/GetContainerServicesCommand.ts | 82 + .../commands/GetKeyPairsCommand.ts | 3 +- .../commands/GetLoadBalancerCommand.ts | 2 +- .../GetLoadBalancerMetricDataCommand.ts | 2 +- .../GetLoadBalancerTlsCertificatesCommand.ts | 2 +- .../commands/GetLoadBalancersCommand.ts | 2 +- .../commands/GetOperationCommand.ts | 2 +- .../commands/GetOperationsCommand.ts | 2 +- .../GetOperationsForResourceCommand.ts | 2 +- .../commands/GetRegionsCommand.ts | 2 +- .../commands/GetRelationalDatabaseCommand.ts | 3 +- .../commands/RegisterContainerImageCommand.ts | 82 + .../commands/UpdateContainerServiceCommand.ts | 82 + clients/client-lightsail/index.ts | 14 + clients/client-lightsail/models/models_0.ts | 9049 ++++++++--------- clients/client-lightsail/models/models_1.ts | 2558 ++++- .../client-lightsail/protocols/Aws_json1_1.ts | 3353 ++++-- .../models/models_0.ts | 98 +- .../protocols/Aws_restJson1.ts | 16 + clients/client-polly/Polly.ts | 95 +- clients/client-polly/PollyClient.ts | 9 +- clients/client-polly/models/models_0.ts | 549 +- .../client-polly/protocols/Aws_restJson1.ts | 12 +- clients/client-robomaker/models/models_0.ts | 2338 ++--- .../protocols/Aws_restJson1.ts | 9 + .../.gitignore | 14 + .../.npmignore | 4 + .../LICENSE | 201 + .../README.md | 6 + .../ServiceCatalogAppRegistry.ts | 599 ++ .../ServiceCatalogAppRegistryClient.ts | 276 + .../AssociateAttributeGroupCommand.ts | 86 + .../commands/AssociateResourceCommand.ts | 86 + .../commands/CreateApplicationCommand.ts | 86 + .../commands/CreateAttributeGroupCommand.ts | 86 + .../commands/DeleteApplicationCommand.ts | 86 + .../commands/DeleteAttributeGroupCommand.ts | 86 + .../DisassociateAttributeGroupCommand.ts | 89 + .../commands/DisassociateResourceCommand.ts | 86 + .../commands/GetApplicationCommand.ts | 86 + .../commands/GetAttributeGroupCommand.ts | 86 + .../commands/ListApplicationsCommand.ts | 86 + .../ListAssociatedAttributeGroupsCommand.ts | 89 + .../ListAssociatedResourcesCommand.ts | 86 + .../commands/ListAttributeGroupsCommand.ts | 86 + .../commands/UpdateApplicationCommand.ts | 86 + .../commands/UpdateAttributeGroupCommand.ts | 86 + .../endpoints.ts | 218 + .../index.ts | 24 + .../models/index.ts | 1 + .../models/models_0.ts | 923 ++ .../package.json | 85 + .../pagination/Interfaces.ts | 7 + .../pagination/ListApplicationsPaginator.ts | 51 + .../ListAssociatedAttributeGroupsPaginator.ts | 51 + .../ListAssociatedResourcesPaginator.ts | 51 + .../ListAttributeGroupsPaginator.ts | 51 + .../protocols/Aws_restJson1.ts | 2103 ++++ .../runtimeConfig.browser.ts | 31 + .../runtimeConfig.native.ts | 14 + .../runtimeConfig.shared.ts | 10 + .../runtimeConfig.ts | 33 + .../tsconfig.es.json | 12 + .../tsconfig.json | 28 + 81 files changed, 20036 insertions(+), 8466 deletions(-) create mode 100644 clients/client-lightsail/commands/CreateContainerServiceCommand.ts create mode 100644 clients/client-lightsail/commands/CreateContainerServiceDeploymentCommand.ts create mode 100644 clients/client-lightsail/commands/CreateContainerServiceRegistryLoginCommand.ts create mode 100644 clients/client-lightsail/commands/DeleteContainerImageCommand.ts create mode 100644 clients/client-lightsail/commands/DeleteContainerServiceCommand.ts create mode 100644 clients/client-lightsail/commands/GetContainerAPIMetadataCommand.ts create mode 100644 clients/client-lightsail/commands/GetContainerImagesCommand.ts create mode 100644 clients/client-lightsail/commands/GetContainerLogCommand.ts create mode 100644 clients/client-lightsail/commands/GetContainerServiceDeploymentsCommand.ts create mode 100644 clients/client-lightsail/commands/GetContainerServiceMetricDataCommand.ts create mode 100644 clients/client-lightsail/commands/GetContainerServicePowersCommand.ts create mode 100644 clients/client-lightsail/commands/GetContainerServicesCommand.ts create mode 100644 clients/client-lightsail/commands/RegisterContainerImageCommand.ts create mode 100644 clients/client-lightsail/commands/UpdateContainerServiceCommand.ts create mode 100644 clients/client-service-catalog-appregistry/.gitignore create mode 100644 clients/client-service-catalog-appregistry/.npmignore create mode 100644 clients/client-service-catalog-appregistry/LICENSE create mode 100644 clients/client-service-catalog-appregistry/README.md create mode 100644 clients/client-service-catalog-appregistry/ServiceCatalogAppRegistry.ts create mode 100644 clients/client-service-catalog-appregistry/ServiceCatalogAppRegistryClient.ts create mode 100644 clients/client-service-catalog-appregistry/commands/AssociateAttributeGroupCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/AssociateResourceCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/CreateApplicationCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/CreateAttributeGroupCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/DeleteApplicationCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/DeleteAttributeGroupCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/DisassociateAttributeGroupCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/DisassociateResourceCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/GetApplicationCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/GetAttributeGroupCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/ListApplicationsCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/ListAssociatedAttributeGroupsCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/ListAssociatedResourcesCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/ListAttributeGroupsCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/UpdateApplicationCommand.ts create mode 100644 clients/client-service-catalog-appregistry/commands/UpdateAttributeGroupCommand.ts create mode 100644 clients/client-service-catalog-appregistry/endpoints.ts create mode 100644 clients/client-service-catalog-appregistry/index.ts create mode 100644 clients/client-service-catalog-appregistry/models/index.ts create mode 100644 clients/client-service-catalog-appregistry/models/models_0.ts create mode 100644 clients/client-service-catalog-appregistry/package.json create mode 100644 clients/client-service-catalog-appregistry/pagination/Interfaces.ts create mode 100644 clients/client-service-catalog-appregistry/pagination/ListApplicationsPaginator.ts create mode 100644 clients/client-service-catalog-appregistry/pagination/ListAssociatedAttributeGroupsPaginator.ts create mode 100644 clients/client-service-catalog-appregistry/pagination/ListAssociatedResourcesPaginator.ts create mode 100644 clients/client-service-catalog-appregistry/pagination/ListAttributeGroupsPaginator.ts create mode 100644 clients/client-service-catalog-appregistry/protocols/Aws_restJson1.ts create mode 100644 clients/client-service-catalog-appregistry/runtimeConfig.browser.ts create mode 100644 clients/client-service-catalog-appregistry/runtimeConfig.native.ts create mode 100644 clients/client-service-catalog-appregistry/runtimeConfig.shared.ts create mode 100644 clients/client-service-catalog-appregistry/runtimeConfig.ts create mode 100644 clients/client-service-catalog-appregistry/tsconfig.es.json create mode 100644 clients/client-service-catalog-appregistry/tsconfig.json diff --git a/clients/client-iot/models/models_0.ts b/clients/client-iot/models/models_0.ts index ce4f308b89f59..5d8cf8c0cf8cd 100644 --- a/clients/client-iot/models/models_0.ts +++ b/clients/client-iot/models/models_0.ts @@ -492,6 +492,19 @@ export interface FirehoseAction { * (comma).
*/ separator?: string; + + /** + *Whether to deliver the Kinesis Data Firehose stream as a batch by using
+ * PutRecordBatch
+ * . The default value is
+ * false
.
When batchMode
is true
and the rule's SQL statement
+ * evaluates to an Array, each Array element forms one record in the
+ * PutRecordBatch
+ * request. The resulting array can't have more
+ * than 500 records.
Use Sig V4 authorization.
+ *For more information, see Signature Version 4 signing process.
*/ export interface SigV4Authorization { /** @@ -617,6 +630,17 @@ export interface IotAnalyticsAction { */ channelName?: string; + /** + *Whether to process the action as a batch. The default value is
+ * false
.
When batchMode
is true
and the rule SQL statement evaluates
+ * to an Array, each Array element is delivered as a separate message when passed by
+ * BatchPutMessage
+ * to the AWS IoT Analytics channel. The resulting array can't have more
+ * than 100 messages.
The ARN of the role which has a policy that grants IoT Analytics permission to send * message data via IoT Analytics (iotanalytics:BatchPutMessage).
@@ -640,11 +664,28 @@ export interface IotEventsAction { inputName: string | undefined; /** - *[Optional] Use this to ensure that only one input (message) with a given messageId will - * be processed by an AWS IoT Events detector.
+ *The ID of the message. The default messageId
is a new UUID value.
When batchMode
is true
, you can't specify a
+ * messageId
--a new UUID value will be assigned.
Assign a value to this property to ensure that only one input (message) with a given
+ * messageId
will be processed by an AWS IoT Events detector.
Whether to process the event actions as a batch. The default value is
+ * false
.
When batchMode
is true
, you can't specify a
+ * messageId
.
When batchMode
is true
and the rule SQL statement evaluates
+ * to an Array, each Array element is treated as a separate message when it's sent to AWS IoT
+ * Events by calling
+ * BatchPutMessage
+ * . The resulting array can't have more
+ * than 10 messages.
The ARN of the role that grants AWS IoT permission to send an input to an AWS IoT * Events detector. ("Action":"iotevents:BatchPutMessage").
@@ -906,7 +947,7 @@ export interface S3Action { bucketName: string | undefined; /** - *The object key.
+ *The object key. For more information, see Actions, resources, and condition keys for Amazon S3.
*/ key: string | undefined; diff --git a/clients/client-iot/protocols/Aws_restJson1.ts b/clients/client-iot/protocols/Aws_restJson1.ts index be3f0c233e5f2..ed4cdb1495ce9 100644 --- a/clients/client-iot/protocols/Aws_restJson1.ts +++ b/clients/client-iot/protocols/Aws_restJson1.ts @@ -28230,6 +28230,7 @@ const serializeAws_restJson1FindingIds = (input: string[], context: __SerdeConte const serializeAws_restJson1FirehoseAction = (input: FirehoseAction, context: __SerdeContext): any => { return { + ...(input.batchMode !== undefined && { batchMode: input.batchMode }), ...(input.deliveryStreamName !== undefined && { deliveryStreamName: input.deliveryStreamName }), ...(input.roleArn !== undefined && { roleArn: input.roleArn }), ...(input.separator !== undefined && { separator: input.separator }), @@ -28290,6 +28291,7 @@ const serializeAws_restJson1HttpUrlDestinationConfiguration = ( const serializeAws_restJson1IotAnalyticsAction = (input: IotAnalyticsAction, context: __SerdeContext): any => { return { + ...(input.batchMode !== undefined && { batchMode: input.batchMode }), ...(input.channelArn !== undefined && { channelArn: input.channelArn }), ...(input.channelName !== undefined && { channelName: input.channelName }), ...(input.roleArn !== undefined && { roleArn: input.roleArn }), @@ -28298,6 +28300,7 @@ const serializeAws_restJson1IotAnalyticsAction = (input: IotAnalyticsAction, con const serializeAws_restJson1IotEventsAction = (input: IotEventsAction, context: __SerdeContext): any => { return { + ...(input.batchMode !== undefined && { batchMode: input.batchMode }), ...(input.inputName !== undefined && { inputName: input.inputName }), ...(input.messageId !== undefined && { messageId: input.messageId }), ...(input.roleArn !== undefined && { roleArn: input.roleArn }), @@ -30088,6 +30091,7 @@ const deserializeAws_restJson1FindingIds = (output: any, context: __SerdeContext const deserializeAws_restJson1FirehoseAction = (output: any, context: __SerdeContext): FirehoseAction => { return { + batchMode: output.batchMode !== undefined && output.batchMode !== null ? output.batchMode : undefined, deliveryStreamName: output.deliveryStreamName !== undefined && output.deliveryStreamName !== null ? output.deliveryStreamName @@ -30175,6 +30179,7 @@ const deserializeAws_restJson1IndexNamesList = (output: any, context: __SerdeCon const deserializeAws_restJson1IotAnalyticsAction = (output: any, context: __SerdeContext): IotAnalyticsAction => { return { + batchMode: output.batchMode !== undefined && output.batchMode !== null ? output.batchMode : undefined, channelArn: output.channelArn !== undefined && output.channelArn !== null ? output.channelArn : undefined, channelName: output.channelName !== undefined && output.channelName !== null ? output.channelName : undefined, roleArn: output.roleArn !== undefined && output.roleArn !== null ? output.roleArn : undefined, @@ -30183,6 +30188,7 @@ const deserializeAws_restJson1IotAnalyticsAction = (output: any, context: __Serd const deserializeAws_restJson1IotEventsAction = (output: any, context: __SerdeContext): IotEventsAction => { return { + batchMode: output.batchMode !== undefined && output.batchMode !== null ? output.batchMode : undefined, inputName: output.inputName !== undefined && output.inputName !== null ? output.inputName : undefined, messageId: output.messageId !== undefined && output.messageId !== null ? output.messageId : undefined, roleArn: output.roleArn !== undefined && output.roleArn !== null ? output.roleArn : undefined, diff --git a/clients/client-lex-model-building-service/models/models_0.ts b/clients/client-lex-model-building-service/models/models_0.ts index c65414c49c498..91396cd40a6fb 100644 --- a/clients/client-lex-model-building-service/models/models_0.ts +++ b/clients/client-lex-model-building-service/models/models_0.ts @@ -33,6 +33,12 @@ export namespace ConflictException { } export interface CreateBotVersionRequest { + /** + *The name of the bot that you want to create a new version of. The name is case + * sensitive.
+ */ + name: string | undefined; + /** *Identifies a specific revision of the $LATEST
version of the bot. If you
* specify a checksum and the $LATEST
version of the bot has a different checksum, a
@@ -41,12 +47,6 @@ export interface CreateBotVersionRequest {
* version.
The name of the bot that you want to create a new version of. The name is case - * sensitive.
- */ - name: string | undefined; } export namespace CreateBotVersionRequest { @@ -65,12 +65,6 @@ export enum ContentType { *The message object that provides the message text and its type.
*/ export interface Message { - /** - *Identifies the message group that the message belongs to. When a group is assigned to a - * message, Amazon Lex returns one message from each group in the response.
- */ - groupNumber?: number; - /** *The content type of the message string.
*/ @@ -80,6 +74,12 @@ export interface Message { *The text of the message.
*/ content: string | undefined; + + /** + *Identifies the message group that the message belongs to. When a group is assigned to a + * message, Amazon Lex returns one message from each group in the response.
+ */ + groupNumber?: number; } export namespace Message { @@ -119,11 +119,6 @@ export namespace Statement { * see how-it-works. */ export interface Prompt { - /** - *The number of times to prompt the user for information.
- */ - maxAttempts: number | undefined; - /** *An array of objects, each of which provides a message string and its type. You can * specify the message string in plain text or in Speech Synthesis Markup Language @@ -131,6 +126,11 @@ export interface Prompt { */ messages: Message[] | undefined; + /** + *
The number of times to prompt the user for information.
+ */ + maxAttempts: number | undefined; + /** *A response card. Amazon Lex uses this prompt at runtime, in the PostText
API
* response. It substitutes session attributes and slot values for placeholders in the response
@@ -150,14 +150,14 @@ export namespace Prompt {
*/
export interface Intent {
/**
- *
The version of the intent.
+ *The name of the intent.
*/ - intentVersion: string | undefined; + intentName: string | undefined; /** - *The name of the intent.
+ *The version of the intent.
*/ - intentName: string | undefined; + intentVersion: string | undefined; } export namespace Intent { @@ -171,7 +171,11 @@ export enum Locale { EN_AU = "en-AU", EN_GB = "en-GB", EN_US = "en-US", + ES_ES = "es-ES", ES_US = "es-US", + FR_CA = "fr-CA", + FR_FR = "fr-FR", + IT_IT = "it-IT", } export enum Status { @@ -183,6 +187,41 @@ export enum Status { } export interface CreateBotVersionResponse { + /** + *The name of the bot.
+ */ + name?: string; + + /** + *A description of the bot.
+ */ + description?: string; + + /** + *An array of Intent
objects. For more information, see PutBot.
The message that Amazon Lex uses when it doesn't understand the user's request. For more + * information, see PutBot.
+ */ + clarificationPrompt?: Prompt; + + /** + *The message that Amazon Lex uses to cancel a conversation. For more information, see PutBot.
+ */ + abortStatement?: Statement; + + /** + * When you send a request to create or update a bot, Amazon Lex sets the status
+ * response element to BUILDING
. After Amazon Lex builds the bot, it sets
+ * status
to READY
. If Amazon Lex can't build the bot, it sets
+ * status
to FAILED
. Amazon Lex returns the reason for the failure in the
+ * failureReason
response element.
If status
is FAILED
, Amazon Lex provides the reason that it failed
* to build the bot.
An array of Intent
objects. For more information, see PutBot.
Indicates whether utterances entered by the user should be sent to Amazon Comprehend for - * sentiment analysis.
+ *Checksum identifying the version of the bot that was created.
*/ - detectSentiment?: boolean; + checksum?: string; /** - * When you send a request to create or update a bot, Amazon Lex sets the status
- * response element to BUILDING
. After Amazon Lex builds the bot, it sets
- * status
to READY
. If Amazon Lex can't build the bot, it sets
- * status
to FAILED
. Amazon Lex returns the reason for the failure in the
- * failureReason
response element.
The version of the bot.
*/ - status?: Status | string; + version?: string; /** *Specifies the target locale for the bot.
@@ -260,16 +289,6 @@ export interface CreateBotVersionResponse { */ childDirected?: boolean; - /** - *The version of the bot.
- */ - version?: string; - - /** - *A description of the bot.
- */ - description?: string; - /** *Indicates whether the bot uses accuracy improvements. true
* indicates that the bot is using the improvements, otherwise, false
.
The message that Amazon Lex uses when it doesn't understand the user's request. For more - * information, see PutBot.
- */ - clarificationPrompt?: Prompt; - - /** - *The message that Amazon Lex uses to cancel a conversation. For more information, see PutBot.
- */ - abortStatement?: Statement; - - /** - *Checksum identifying the version of the bot that was created.
- */ - checksum?: string; - - /** - *The name of the bot.
+ *Indicates whether utterances entered by the user should be sent to Amazon Comprehend for + * sentiment analysis.
*/ - name?: string; + detectSentiment?: boolean; } export namespace CreateBotVersionResponse { @@ -325,8 +329,8 @@ export namespace InternalFailureException { export interface LimitExceededException extends __SmithyException, $MetadataBearer { name: "LimitExceededException"; $fault: "client"; - message?: string; retryAfterSeconds?: string; + message?: string; } export namespace LimitExceededException { @@ -368,6 +372,12 @@ export namespace PreconditionFailedException { } export interface CreateIntentVersionRequest { + /** + *The name of the intent that you want to create a new version of. The name is case + * sensitive.
+ */ + name: string | undefined; + /** *Checksum of the $LATEST
version of the intent that should be used to
* create the new version. If you specify a checksum and the $LATEST
version of the
@@ -376,12 +386,6 @@ export interface CreateIntentVersionRequest {
* the $LATEST
version.
The name of the intent that you want to create a new version of. The name is case - * sensitive.
- */ - name: string | undefined; } export namespace CreateIntentVersionRequest { @@ -490,13 +494,6 @@ export namespace FulfillmentActivity { * AMAZON.KendraSearchIntent. */ export interface KendraConfiguration { - /** - *A query filter that Amazon Lex sends to Amazon Kendra to filter the response from the query. - * The filter is in the format defined by Amazon Kendra. For more information, see Filtering queries.
- *You can override this filter string with a new filter string at runtime.
- */ - queryFilterString?: string; - /** *The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the * AMAZON.KendraSearchIntent intent to search. The index must be in the same account and Region @@ -505,6 +502,13 @@ export interface KendraConfiguration { */ kendraIndex: string | undefined; + /** + *
A query filter that Amazon Lex sends to Amazon Kendra to filter the response from the query. + * The filter is in the format defined by Amazon Kendra. For more information, see Filtering queries.
+ *You can override this filter string with a new filter string at runtime.
+ */ + queryFilterString?: string; + /** *The Amazon Resource Name (ARN) of an IAM role that has permission to search the Amazon * Kendra index. The role must be in the same account and Region as the Amazon Lex bot. If the role @@ -534,6 +538,11 @@ export enum SlotConstraint { *
Identifies the version of a specific slot.
*/ export interface Slot { + /** + *The name of the slot.
+ */ + name: string | undefined; + /** *A description of the slot.
*/ @@ -544,11 +553,6 @@ export interface Slot { */ slotConstraint: SlotConstraint | string | undefined; - /** - *The version of the slot type.
- */ - slotTypeVersion?: string; - /** *The type of the slot, either a custom slot type that you defined or one of the built-in * slot types.
@@ -556,23 +560,15 @@ export interface Slot { slotType?: string; /** - *A set of possible responses for the slot type used by text-based clients. A user - * chooses an option from the response card, instead of using text to reply.
+ *The version of the slot type.
*/ - responseCard?: string; + slotTypeVersion?: string; /** *The prompt that Amazon Lex uses to elicit the slot value from the user.
*/ valueElicitationPrompt?: Prompt; - /** - *If you know a specific pattern with which users might respond to an Amazon Lex request for - * a slot value, you can provide those utterances to improve accuracy. This is optional. In most - * cases, Amazon Lex is capable of understanding user utterances.
- */ - sampleUtterances?: string[]; - /** *Directs Amazon Lex the order in which to elicit this slot value from the user. For example, * if the intent has two slots with priorities 1 and 2, AWS Amazon Lex first elicits a value for the @@ -583,9 +579,17 @@ export interface Slot { priority?: number; /** - *
The name of the slot.
+ *If you know a specific pattern with which users might respond to an Amazon Lex request for + * a slot value, you can provide those utterances to improve accuracy. This is optional. In most + * cases, Amazon Lex is capable of understanding user utterances.
*/ - name: string | undefined; + sampleUtterances?: string[]; + + /** + *A set of possible responses for the slot type used by text-based clients. A user + * chooses an option from the response card, instead of using text to reply.
+ */ + responseCard?: string; /** *Determines whether a slot is obfuscated in conversation logs and stored utterances. When @@ -610,85 +614,85 @@ export interface CreateIntentVersionResponse { name?: string; /** - *
If defined, Amazon Lex invokes this Lambda function for each user input.
+ *A description of the intent.
*/ - dialogCodeHook?: CodeHook; + description?: string; /** - *A unique identifier for a built-in intent.
+ *An array of slot types that defines the information required to fulfill the + * intent.
*/ - parentIntentSignature?: string; + slots?: Slot[]; /** - *After the Lambda function specified in the fulfillmentActivity
field
- * fulfills the intent, Amazon Lex conveys this statement to the user.
An array of sample utterances configured for the intent.
*/ - conclusionStatement?: Statement; + sampleUtterances?: string[]; /** - *Configuration information, if any, for connecting an Amazon Kendra index with the
- * AMAZON.KendraSearchIntent
intent.
If defined, the prompt that Amazon Lex uses to confirm the user's intent before + * fulfilling it.
*/ - kendraConfiguration?: KendraConfiguration; + confirmationPrompt?: Prompt; /** - *Checksum of the intent version created.
+ *If the user answers "no" to the question defined in confirmationPrompt
,
+ * Amazon Lex responds with this statement to acknowledge that the intent was canceled.
If defined, the prompt that Amazon Lex uses to confirm the user's intent before - * fulfilling it.
+ *If defined, Amazon Lex uses this prompt to solicit additional user activity after the + * intent is fulfilled.
*/ - confirmationPrompt?: Prompt; + followUpPrompt?: FollowUpPrompt; /** - *Describes how the intent is fulfilled.
+ *After the Lambda function specified in the fulfillmentActivity
field
+ * fulfills the intent, Amazon Lex conveys this statement to the user.
The version number assigned to the new version of the intent.
+ *If defined, Amazon Lex invokes this Lambda function for each user input.
*/ - version?: string; + dialogCodeHook?: CodeHook; /** - *An array of slot types that defines the information required to fulfill the - * intent.
+ *Describes how the intent is fulfilled.
*/ - slots?: Slot[]; + fulfillmentActivity?: FulfillmentActivity; /** - *If defined, Amazon Lex uses this prompt to solicit additional user activity after the - * intent is fulfilled.
+ *A unique identifier for a built-in intent.
*/ - followUpPrompt?: FollowUpPrompt; + parentIntentSignature?: string; /** - *The date that the intent was created.
+ *The date that the intent was updated.
*/ - createdDate?: Date; + lastUpdatedDate?: Date; /** - *If the user answers "no" to the question defined in confirmationPrompt
,
- * Amazon Lex responds with this statement to acknowledge that the intent was canceled.
The date that the intent was created.
*/ - rejectionStatement?: Statement; + createdDate?: Date; /** - *An array of sample utterances configured for the intent.
+ *The version number assigned to the new version of the intent.
*/ - sampleUtterances?: string[]; + version?: string; /** - *A description of the intent.
+ *Checksum of the intent version created.
*/ - description?: string; + checksum?: string; /** - *The date that the intent was updated.
+ *Configuration information, if any, for connecting an Amazon Kendra index with the
+ * AMAZON.KendraSearchIntent
intent.
The name of the slot type that you want to create a new version for. The name is case + * sensitive.
+ */ + name: string | undefined; + /** *Checksum for the $LATEST
version of the slot type that you want to
* publish. If you specify a checksum and the $LATEST
version of the slot type has a
@@ -706,12 +716,6 @@ export interface CreateSlotTypeVersionRequest {
* $LATEST
version.
The name of the slot type that you want to create a new version for. The name is case - * sensitive.
- */ - name: string | undefined; } export namespace CreateSlotTypeVersionRequest { @@ -739,14 +743,14 @@ export namespace CreateSlotTypeVersionRequest { */ export interface EnumerationValue { /** - *Additional values related to the slot type value.
+ *The value of the slot type.
*/ - synonyms?: string[]; + value: string | undefined; /** - *The value of the slot type.
+ *Additional values related to the slot type value.
*/ - value: string | undefined; + synonyms?: string[]; } export namespace EnumerationValue { @@ -818,46 +822,47 @@ export enum SlotValueSelectionStrategy { export interface CreateSlotTypeVersionResponse { /** - *The date that the slot type was created.
+ *The name of the slot type.
*/ - createdDate?: Date; + name?: string; /** - *Configuration information that extends the parent built-in slot type.
+ *A description of the slot type.
*/ - slotTypeConfigurations?: SlotTypeConfiguration[]; + description?: string; /** - *The version assigned to the new slot type version.
+ *A list of EnumerationValue
objects that defines the values that the slot
+ * type can take.
The strategy that Amazon Lex uses to determine the value of the slot. For more information, - * see PutSlotType.
+ *The date that the slot type was updated. When you create a resource, the creation date + * and last update date are the same.
*/ - valueSelectionStrategy?: SlotValueSelectionStrategy | string; + lastUpdatedDate?: Date; /** - *A list of EnumerationValue
objects that defines the values that the slot
- * type can take.
The date that the slot type was created.
*/ - enumerationValues?: EnumerationValue[]; + createdDate?: Date; /** - *Checksum of the $LATEST
version of the slot type.
The version assigned to the new slot type version.
*/ - checksum?: string; + version?: string; /** - *The name of the slot type.
+ *Checksum of the $LATEST
version of the slot type.
A description of the slot type.
+ *The strategy that Amazon Lex uses to determine the value of the slot. For more information, + * see PutSlotType.
*/ - description?: string; + valueSelectionStrategy?: SlotValueSelectionStrategy | string; /** *The built-in slot type used a the parent of the slot type.
@@ -865,10 +870,9 @@ export interface CreateSlotTypeVersionResponse { parentSlotTypeSignature?: string; /** - *The date that the slot type was updated. When you create a resource, the creation date - * and last update date are the same.
+ *Configuration information that extends the parent built-in slot type.
*/ - lastUpdatedDate?: Date; + slotTypeConfigurations?: SlotTypeConfiguration[]; } export namespace CreateSlotTypeVersionResponse { @@ -940,14 +944,13 @@ export enum ReferenceType { export interface ResourceInUseException extends __SmithyException, $MetadataBearer { name: "ResourceInUseException"; $fault: "client"; + referenceType?: ReferenceType | string; /** *Describes the resource that refers to the resource that you are attempting to delete.
* This object is returned as part of the ResourceInUseException
exception.
*
An alias that points to the specific version of the Amazon Lex bot to which this association - * is being made.
- */ - botAlias: string | undefined; - /** *The name of the association. The name is case sensitive.
*/ @@ -990,6 +987,12 @@ export interface DeleteBotChannelAssociationRequest { *The name of the Amazon Lex bot.
*/ botName: string | undefined; + + /** + *An alias that points to the specific version of the Amazon Lex bot to which this association + * is being made.
+ */ + botAlias: string | undefined; } export namespace DeleteBotChannelAssociationRequest { @@ -1033,15 +1036,15 @@ export namespace DeleteIntentRequest { export interface DeleteIntentVersionRequest { /** - *The version of the intent to delete. You cannot delete the $LATEST
version
- * of the intent. To delete the $LATEST
version, use the DeleteIntent operation.
The name of the intent.
*/ - version: string | undefined; + name: string | undefined; /** - *The name of the intent.
+ *The version of the intent to delete. You cannot delete the $LATEST
version
+ * of the intent. To delete the $LATEST
version, use the DeleteIntent operation.
The version of the slot type to delete. You cannot delete the $LATEST
- * version of the slot type. To delete the $LATEST
version, use the DeleteSlotType operation.
The name of the slot type.
*/ - version: string | undefined; + name: string | undefined; /** - *The name of the slot type.
+ *The version of the slot type to delete. You cannot delete the $LATEST
+ * version of the slot type. To delete the $LATEST
version, use the DeleteSlotType operation.
The version or alias of the bot.
+ *The name of the bot. The name is case sensitive.
*/ - versionOrAlias: string | undefined; + name: string | undefined; /** - *The name of the bot. The name is case sensitive.
+ *The version or alias of the bot.
*/ - name: string | undefined; + versionOrAlias: string | undefined; } export namespace GetBotRequest { @@ -1122,38 +1125,60 @@ export namespace GetBotRequest { export interface GetBotResponse { /** - *The message Amazon Lex uses when it doesn't understand the user's request. For more - * information, see PutBot.
+ *The name of the bot.
*/ - clarificationPrompt?: Prompt; + name?: string; /** - *The date that the bot was updated. When you create a resource, the creation date and - * last updated date are the same.
+ *A description of the bot.
*/ - lastUpdatedDate?: Date; + description?: string; /** - *Indicates whether user utterances should be sent to Amazon Comprehend for sentiment - * analysis.
+ *An array of intent
objects. For more information, see PutBot.
A description of the bot.
+ *Indicates whether the bot uses accuracy improvements. true
+ * indicates that the bot is using the improvements, otherwise, false
.
The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. For - * more information, see PutBot.
+ *The score that determines where Amazon Lex inserts the AMAZON.FallbackIntent
,
+ * AMAZON.KendraSearchIntent
, or both when returning alternative intents in a
+ * PostContent or PostText response.
+ * AMAZON.FallbackIntent
is inserted if the confidence score for all intents is
+ * below this value. AMAZON.KendraSearchIntent
is only inserted if it is configured
+ * for the bot.
The target locale for the bot.
+ *The message Amazon Lex uses when it doesn't understand the user's request. For more + * information, see PutBot.
*/ - locale?: Locale | string; + clarificationPrompt?: Prompt; + + /** + *The message that Amazon Lex returns when the user elects to end the conversation without + * completing it. For more information, see PutBot.
+ */ + abortStatement?: Statement; + + /** + *The status of the bot.
+ *When the status is BUILDING
Amazon Lex is building the bot for testing and
+ * use.
If the status of the bot is READY_BASIC_TESTING
, you can test the bot
+ * using the exact utterances specified in the bot's intents. When the bot is ready for full
+ * testing or to run, the status is READY
.
If there was a problem with building the bot, the status is FAILED
and the
+ * failureReason
field explains why the bot did not build.
If the bot was saved but not built, the status is NOT_BUILT
.
If status
is FAILED
, Amazon Lex explains why it failed to build
@@ -1162,15 +1187,21 @@ export interface GetBotResponse {
failureReason?: string;
/**
- *
The version of the bot. For a new bot, the version is always
- * $LATEST
.
The date that the bot was updated. When you create a resource, the creation date and + * last updated date are the same.
*/ - version?: string; + lastUpdatedDate?: Date; /** - *An array of intent
objects. For more information, see PutBot.
The date that the bot was created.
*/ - intents?: Intent[]; + createdDate?: Date; + + /** + *The maximum time in seconds that Amazon Lex retains the data gathered in a conversation. For + * more information, see PutBot.
+ */ + idleSessionTTLInSeconds?: number; /** *The Amazon Polly voice ID that Amazon Lex uses for voice interaction with the user. For more @@ -1179,16 +1210,21 @@ export interface GetBotResponse { voiceId?: string; /** - *
The message that Amazon Lex returns when the user elects to end the conversation without - * completing it. For more information, see PutBot.
+ *Checksum of the bot used to identify a specific revision of the bot's
+ * $LATEST
version.
Indicates whether the bot uses accuracy improvements. true
- * indicates that the bot is using the improvements, otherwise, false
.
The version of the bot. For a new bot, the version is always
+ * $LATEST
.
The target locale for the bot.
+ */ + locale?: Locale | string; /** *For each Amazon Lex bot created with the Amazon Lex Model Building Service, you must specify @@ -1215,43 +1251,10 @@ export interface GetBotResponse { childDirected?: boolean; /** - *
The name of the bot.
- */ - name?: string; - - /** - *Checksum of the bot used to identify a specific revision of the bot's
- * $LATEST
version.
The status of the bot.
- *When the status is BUILDING
Amazon Lex is building the bot for testing and
- * use.
If the status of the bot is READY_BASIC_TESTING
, you can test the bot
- * using the exact utterances specified in the bot's intents. When the bot is ready for full
- * testing or to run, the status is READY
.
If there was a problem with building the bot, the status is FAILED
and the
- * failureReason
field explains why the bot did not build.
If the bot was saved but not built, the status is NOT_BUILT
.
The date that the bot was created.
- */ - createdDate?: Date; - - /** - *The score that determines where Amazon Lex inserts the AMAZON.FallbackIntent
,
- * AMAZON.KendraSearchIntent
, or both when returning alternative intents in a
- * PostContent or PostText response.
- * AMAZON.FallbackIntent
is inserted if the confidence score for all intents is
- * below this value. AMAZON.KendraSearchIntent
is only inserted if it is configured
- * for the bot.
Indicates whether user utterances should be sent to Amazon Comprehend for sentiment + * analysis.
*/ - nluIntentConfidenceThreshold?: number; + detectSentiment?: boolean; } export namespace GetBotResponse { @@ -1293,10 +1296,9 @@ export enum LogType { */ export interface LogSettingsResponse { /** - *The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 - * bucket.
+ *The type of logging that is enabled.
*/ - kmsKeyArn?: string; + logType?: LogType | string; /** *The destination where logs are delivered.
@@ -1304,15 +1306,16 @@ export interface LogSettingsResponse { destination?: Destination | string; /** - *The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the - * logs are delivered.
+ *The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an S3 + * bucket.
*/ - resourceArn?: string; + kmsKeyArn?: string; /** - *The type of logging that is enabled.
+ *The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the + * logs are delivered.
*/ - logType?: LogType | string; + resourceArn?: string; /** *The resource prefix is the first part of the S3 object key within the S3 bucket that you @@ -1351,36 +1354,21 @@ export namespace ConversationLogsResponse { } export interface GetBotAliasResponse { - /** - *
Checksum of the bot alias.
- */ - checksum?: string; - /** *The name of the bot alias.
*/ name?: string; /** - *The date that the bot alias was created.
- */ - createdDate?: Date; - - /** - *The settings that determine how Amazon Lex uses conversation logs for the alias.
+ *A description of the bot alias.
*/ - conversationLogs?: ConversationLogsResponse; + description?: string; /** *The version of the bot that the alias points to.
*/ botVersion?: string; - /** - *A description of the bot alias.
- */ - description?: string; - /** *The name of the bot that the alias points to.
*/ @@ -1391,6 +1379,21 @@ export interface GetBotAliasResponse { * and the last updated date are the same. */ lastUpdatedDate?: Date; + + /** + *The date that the bot alias was created.
+ */ + createdDate?: Date; + + /** + *Checksum of the bot alias.
+ */ + checksum?: string; + + /** + *The settings that determine how Amazon Lex uses conversation logs for the alias.
+ */ + conversationLogs?: ConversationLogsResponse; } export namespace GetBotAliasResponse { @@ -1400,6 +1403,11 @@ export namespace GetBotAliasResponse { } export interface GetBotAliasesRequest { + /** + *The name of the bot.
+ */ + botName: string | undefined; + /** *A pagination token for fetching the next page of aliases. If the response to this call * is truncated, Amazon Lex returns a pagination token in the response. To fetch the next page of @@ -1413,11 +1421,6 @@ export interface GetBotAliasesRequest { */ maxResults?: number; - /** - *
The name of the bot.
- */ - botName: string | undefined; - /** *Substring to match in bot alias names. An alias will be returned if any part of its * name matches the substring. For example, "xyz" matches both "xyzabc" and "abcxyz."
@@ -1436,9 +1439,9 @@ export namespace GetBotAliasesRequest { */ export interface BotAliasMetadata { /** - *Settings that determine how Amazon Lex uses conversation logs for the alias.
+ *The name of the bot alias.
*/ - conversationLogs?: ConversationLogsResponse; + name?: string; /** *A description of the bot alias.
@@ -1446,19 +1449,14 @@ export interface BotAliasMetadata { description?: string; /** - *The name of the bot alias.
- */ - name?: string; - - /** - *Checksum of the bot alias.
+ *The version of the Amazon Lex bot to which the alias points.
*/ - checksum?: string; + botVersion?: string; /** - *The date that the bot alias was created.
+ *The name of the bot to which the alias points.
*/ - createdDate?: Date; + botName?: string; /** *The date that the bot alias was updated. When you create a resource, the creation date @@ -1467,14 +1465,19 @@ export interface BotAliasMetadata { lastUpdatedDate?: Date; /** - *
The version of the Amazon Lex bot to which the alias points.
+ *The date that the bot alias was created.
*/ - botVersion?: string; + createdDate?: Date; /** - *The name of the bot to which the alias points.
+ *Checksum of the bot alias.
*/ - botName?: string; + checksum?: string; + + /** + *Settings that determine how Amazon Lex uses conversation logs for the alias.
+ */ + conversationLogs?: ConversationLogsResponse; } export namespace BotAliasMetadata { @@ -1484,18 +1487,18 @@ export namespace BotAliasMetadata { } export interface GetBotAliasesResponse { + /** + *An array of BotAliasMetadata
objects, each describing a bot
+ * alias.
A pagination token for fetching next page of aliases. If the response to this call is * truncated, Amazon Lex returns a pagination token in the response. To fetch the next page of * aliases, specify the pagination token in the next request.
*/ nextToken?: string; - - /** - *An array of BotAliasMetadata
objects, each describing a bot
- * alias.
The name of the association between the bot and the channel. The name is case + * sensitive.
+ */ + name: string | undefined; + /** *The name of the Amazon Lex bot.
*/ @@ -1515,12 +1524,6 @@ export interface GetBotChannelAssociationRequest { * being made. */ botAlias: string | undefined; - - /** - *The name of the association between the bot and the channel. The name is case - * sensitive.
- */ - name: string | undefined; } export namespace GetBotChannelAssociationRequest { @@ -1543,6 +1546,16 @@ export enum ChannelType { } export interface GetBotChannelAssociationResponse { + /** + *The name of the association between the bot and the channel.
+ */ + name?: string; + + /** + *A description of the association between the bot and the channel.
+ */ + description?: string; + /** *An alias pointing to the specific version of the Amazon Lex bot to which this association is * being made.
@@ -1550,15 +1563,20 @@ export interface GetBotChannelAssociationResponse { botAlias?: string; /** - *The name of the association between the bot and the channel.
+ *The name of the Amazon Lex bot.
*/ - name?: string; + botName?: string; /** *The date that the association between the bot and the channel was created.
*/ createdDate?: Date; + /** + *The type of the messaging platform.
+ */ + type?: ChannelType | string; + /** *Provides information that the messaging platform needs to communicate with the Amazon Lex * bot.
@@ -1590,21 +1608,6 @@ export interface GetBotChannelAssociationResponse { * to create the association. */ failureReason?: string; - - /** - *The type of the messaging platform.
- */ - type?: ChannelType | string; - - /** - *The name of the Amazon Lex bot.
- */ - botName?: string; - - /** - *A description of the association between the bot and the channel.
- */ - description?: string; } export namespace GetBotChannelAssociationResponse { @@ -1616,23 +1619,15 @@ export namespace GetBotChannelAssociationResponse { export interface GetBotChannelAssociationsRequest { /** - *Substring to match in channel association names. An association will be returned if any
- * part of its name matches the substring. For example, "xyz" matches both "xyzabc" and "abcxyz."
- * To return all bot channel associations, use a hyphen ("-") as the nameContains
- * parameter.
The maximum number of associations to return in the response. The default is 50. - *
+ *The name of the Amazon Lex bot in the association.
*/ - maxResults?: number; + botName: string | undefined; /** - *The name of the Amazon Lex bot in the association.
+ *An alias pointing to the specific version of the Amazon Lex bot to which this association is + * being made.
*/ - botName: string | undefined; + botAlias: string | undefined; /** *A pagination token for fetching the next page of associations. If the response to this @@ -1642,10 +1637,18 @@ export interface GetBotChannelAssociationsRequest { nextToken?: string; /** - *
An alias pointing to the specific version of the Amazon Lex bot to which this association is - * being made.
+ *The maximum number of associations to return in the response. The default is 50. + *
*/ - botAlias: string | undefined; + maxResults?: number; + + /** + *Substring to match in channel association names. An association will be returned if any
+ * part of its name matches the substring. For example, "xyz" matches both "xyzabc" and "abcxyz."
+ * To return all bot channel associations, use a hyphen ("-") as the nameContains
+ * parameter.
Provides information necessary to communicate with the messaging platform.
+ *The name of the association between the bot and the channel.
*/ - botConfiguration?: { [key: string]: string }; + name?: string; + + /** + *A text description of the association you are creating.
+ */ + description?: string; + + /** + *An alias pointing to the specific version of the Amazon Lex bot to which this association is + * being made.
+ */ + botAlias?: string; + + /** + *The name of the Amazon Lex bot to which this association is being made.
+ *Currently, Amazon Lex supports associations with Facebook and Slack, and Twilio.
+ * + *The date that the association between the Amazon Lex bot and the channel was created. + *
+ */ + createdDate?: Date; /** *Specifies the type of association by indicating the type of channel being established @@ -1670,6 +1699,11 @@ export interface BotChannelAssociation { */ type?: ChannelType | string; + /** + *
Provides information necessary to communicate with the messaging platform.
+ */ + botConfiguration?: { [key: string]: string }; + /** *The status of the bot channel.
*The date that the association between the Amazon Lex bot and the channel was created. - *
- */ - createdDate?: Date; - - /** - *An alias pointing to the specific version of the Amazon Lex bot to which this association is - * being made.
- */ - botAlias?: string; - - /** - *The name of the Amazon Lex bot to which this association is being made.
- *Currently, Amazon Lex supports associations with Facebook and Slack, and Twilio.
- * - *The name of the association between the bot and the channel.
- */ - name?: string; - - /** - *A text description of the association you are creating.
- */ - description?: string; } export namespace BotChannelAssociation { @@ -1790,37 +1793,37 @@ export namespace GetBotsRequest { *Provides information about a bot. .
*/ export interface BotMetadata { - /** - *The date that the bot was created.
- */ - createdDate?: Date; - /** *The name of the bot.
*/ name?: string; /** - *The version of the bot. For a new bot, the version is always
- * $LATEST
.
A description of the bot.
*/ - version?: string; + description?: string; /** *The status of the bot.
*/ status?: Status | string; - /** - *A description of the bot.
- */ - description?: string; - /** *The date that the bot was updated. When you create a bot, the creation date and last * updated date are the same.
*/ lastUpdatedDate?: Date; + + /** + *The date that the bot was created.
+ */ + createdDate?: Date; + + /** + *The version of the bot. For a new bot, the version is always
+ * $LATEST
.
An array of botMetadata
objects, with one entry for each bot.
If the response is truncated, it includes a pagination token that you can specify in * your next request to fetch the next page of bots.
*/ nextToken?: string; - - /** - *An array of botMetadata
objects, with one entry for each bot.
The name of the bot for which versions should be returned.
+ */ + name: string | undefined; + /** *A pagination token for fetching the next page of bot versions. If the response to this * call is truncated, Amazon Lex returns a pagination token in the response. To fetch the next page of @@ -1856,11 +1864,6 @@ export interface GetBotVersionsRequest { */ nextToken?: string; - /** - *
The name of the bot for which versions should be returned.
- */ - name: string | undefined; - /** *The maximum number of bot versions to return in the response. The default is * 10.
@@ -1875,18 +1878,18 @@ export namespace GetBotVersionsRequest { } export interface GetBotVersionsResponse { + /** + *An array of BotMetadata
objects, one for each numbered version of the bot
+ * plus one for the $LATEST
version.
A pagination token for fetching the next page of bot versions. If the response to this * call is truncated, Amazon Lex returns a pagination token in the response. To fetch the next page of * versions, specify the pagination token in the next request.
*/ nextToken?: string; - - /** - *An array of BotMetadata
objects, one for each numbered version of the bot
- * plus one for the $LATEST
version.
A list of locales that the intent supports.
+ *The unique identifier for a built-in intent.
*/ - supportedLocales?: (Locale | string)[]; + signature?: string; /** - *The unique identifier for a built-in intent.
+ *A list of locales that the intent supports.
*/ - signature?: string; + supportedLocales?: (Locale | string)[]; /** *An array of BuiltinIntentSlot
objects, one entry for each slot type in the
@@ -1950,6 +1953,11 @@ export namespace GetBuiltinIntentResponse {
}
export interface GetBuiltinIntentsRequest {
+ /**
+ *
A list of locales that the intent supports.
+ */ + locale?: Locale | string; + /** *Substring to match in built-in intent signatures. An intent will be returned if any * part of its signature matches the substring. For example, "xyz" matches both "xyzabc" and @@ -1957,11 +1965,6 @@ export interface GetBuiltinIntentsRequest { */ signatureContains?: string; - /** - *
The maximum number of intents to return in the response. The default is 10.
- */ - maxResults?: number; - /** *A pagination token that fetches the next page of intents. If this API call is * truncated, Amazon Lex returns a pagination token in the response. To fetch the next page of @@ -1970,9 +1973,9 @@ export interface GetBuiltinIntentsRequest { nextToken?: string; /** - *
A list of locales that the intent supports.
+ *The maximum number of intents to return in the response. The default is 10.
*/ - locale?: Locale | string; + maxResults?: number; } export namespace GetBuiltinIntentsRequest { @@ -1985,16 +1988,16 @@ export namespace GetBuiltinIntentsRequest { *Provides metadata for a built-in intent.
*/ export interface BuiltinIntentMetadata { - /** - *A list of identifiers for the locales that the intent supports.
- */ - supportedLocales?: (Locale | string)[]; - /** *A unique identifier for the built-in intent. To find the signature for an intent, see * Standard Built-in Intents in the Alexa Skills Kit.
*/ signature?: string; + + /** + *A list of identifiers for the locales that the intent supports.
+ */ + supportedLocales?: (Locale | string)[]; } export namespace BuiltinIntentMetadata { @@ -2026,11 +2029,9 @@ export namespace GetBuiltinIntentsResponse { export interface GetBuiltinSlotTypesRequest { /** - *A pagination token that fetches the next page of slot types. If the response to this - * API call is truncated, Amazon Lex returns a pagination token in the response. To fetch the next - * page of slot types, specify the pagination token in the next request.
+ *A list of locales that the slot type supports.
*/ - nextToken?: string; + locale?: Locale | string; /** *Substring to match in built-in slot type signatures. A slot type will be returned if @@ -2040,15 +2041,17 @@ export interface GetBuiltinSlotTypesRequest { signatureContains?: string; /** - *
The maximum number of slot types to return in the response. The default is - * 10.
+ *A pagination token that fetches the next page of slot types. If the response to this + * API call is truncated, Amazon Lex returns a pagination token in the response. To fetch the next + * page of slot types, specify the pagination token in the next request.
*/ - maxResults?: number; + nextToken?: string; /** - *A list of locales that the slot type supports.
+ *The maximum number of slot types to return in the response. The default is + * 10.
*/ - locale?: Locale | string; + maxResults?: number; } export namespace GetBuiltinSlotTypesRequest { @@ -2061,16 +2064,16 @@ export namespace GetBuiltinSlotTypesRequest { *Provides information about a built in slot type.
*/ export interface BuiltinSlotTypeMetadata { - /** - *A list of target locales for the slot.
- */ - supportedLocales?: (Locale | string)[]; - /** *A unique identifier for the built-in slot type. To find the signature for a slot type, * see Slot Type Reference in the Alexa Skills Kit.
*/ signature?: string; + + /** + *A list of target locales for the slot.
+ */ + supportedLocales?: (Locale | string)[]; } export namespace BuiltinSlotTypeMetadata { @@ -2112,9 +2115,9 @@ export enum ResourceType { export interface GetExportRequest { /** - *The format of the exported data.
+ *The name of the bot to export.
*/ - exportType: ExportType | string | undefined; + name: string | undefined; /** *The version of the bot to export.
@@ -2127,9 +2130,9 @@ export interface GetExportRequest { resourceType: ResourceType | string | undefined; /** - *The name of the bot to export.
+ *The format of the exported data.
*/ - name: string | undefined; + exportType: ExportType | string | undefined; } export namespace GetExportRequest { @@ -2151,15 +2154,19 @@ export interface GetExportResponse { name?: string; /** - *The format of the exported data.
+ *The version of the bot being exported.
*/ - exportType?: ExportType | string; + version?: string; /** - *If status
is FAILED
, Amazon Lex provides the reason that it failed
- * to export the resource.
The type of the exported resource.
*/ - failureReason?: string; + resourceType?: ResourceType | string; + + /** + *The format of the exported data.
+ */ + exportType?: ExportType | string; /** *The status of the export.
@@ -2181,14 +2188,10 @@ export interface GetExportResponse { exportStatus?: ExportStatus | string; /** - *The type of the exported resource.
- */ - resourceType?: ResourceType | string; - - /** - *The version of the bot being exported.
+ *If status
is FAILED
, Amazon Lex provides the reason that it failed
+ * to export the resource.
An S3 pre-signed URL that provides the location of the exported resource. The exported @@ -2229,6 +2232,16 @@ export enum MergeStrategy { } export interface GetImportResponse { + /** + *
The name given to the import job.
+ */ + name?: string; + + /** + *The type of resource imported.
+ */ + resourceType?: ResourceType | string; + /** *The action taken when there was a conflict between an existing resource and a resource * in the import file.
@@ -2241,30 +2254,20 @@ export interface GetImportResponse { importId?: string; /** - *The type of resource imported.
+ *The status of the import job. If the status is FAILED
, you can get the
+ * reason for the failure from the failureReason
field.
A string that describes why an import job failed to complete.
*/ failureReason?: string[]; - /** - *The name given to the import job.
- */ - name?: string; - /** *A timestamp for the date and time that the import job was created.
*/ createdDate?: Date; - - /** - *The status of the import job. If the status is FAILED
, you can get the
- * reason for the failure from the failureReason
field.
The version of the intent.
+ *The name of the intent. The name is case sensitive.
*/ - version: string | undefined; + name: string | undefined; /** - *The name of the intent. The name is case sensitive.
+ *The version of the intent.
*/ - name: string | undefined; + version: string | undefined; } export namespace GetIntentRequest { @@ -2298,26 +2301,19 @@ export interface GetIntentResponse { name?: string; /** - *If the user answers "no" to the question defined in confirmationPrompt
,
- * Amazon Lex responds with this statement to acknowledge that the intent was canceled.
If defined in the bot, Amazon Amazon Lex invokes this Lambda function for each user input. - * For more information, see PutIntent.
+ *A description of the intent.
*/ - dialogCodeHook?: CodeHook; + description?: string; /** - *The date that the intent was created.
+ *An array of intent slots configured for the intent.
*/ - createdDate?: Date; + slots?: Slot[]; /** - *An array of intent slots configured for the intent.
+ *An array of sample utterances configured for the intent.
*/ - slots?: Slot[]; + sampleUtterances?: string[]; /** *If defined in the bot, Amazon Lex uses prompt to confirm the intent before fulfilling the @@ -2326,15 +2322,16 @@ export interface GetIntentResponse { confirmationPrompt?: Prompt; /** - *
A unique identifier for a built-in intent.
+ *If the user answers "no" to the question defined in confirmationPrompt
,
+ * Amazon Lex responds with this statement to acknowledge that the intent was canceled.
Configuration information, if any, to connect to an Amazon Kendra index with the
- * AMAZON.KendraSearchIntent
intent.
If defined in the bot, Amazon Lex uses this prompt to solicit additional user activity after + * the intent is fulfilled. For more information, see PutIntent.
*/ - kendraConfiguration?: KendraConfiguration; + followUpPrompt?: FollowUpPrompt; /** *After the Lambda function specified in the fulfillmentActivity
element
@@ -2343,41 +2340,47 @@ export interface GetIntentResponse {
conclusionStatement?: Statement;
/**
- *
A description of the intent.
+ *If defined in the bot, Amazon Amazon Lex invokes this Lambda function for each user input. + * For more information, see PutIntent.
*/ - description?: string; + dialogCodeHook?: CodeHook; /** - *Checksum of the intent.
+ *Describes how the intent is fulfilled. For more information, see PutIntent.
*/ - checksum?: string; + fulfillmentActivity?: FulfillmentActivity; /** - *The version of the intent.
+ *A unique identifier for a built-in intent.
*/ - version?: string; + parentIntentSignature?: string; /** - *An array of sample utterances configured for the intent.
+ *The date that the intent was updated. When you create a resource, the creation date and + * the last updated date are the same.
*/ - sampleUtterances?: string[]; + lastUpdatedDate?: Date; /** - *If defined in the bot, Amazon Lex uses this prompt to solicit additional user activity after - * the intent is fulfilled. For more information, see PutIntent.
+ *The date that the intent was created.
*/ - followUpPrompt?: FollowUpPrompt; + createdDate?: Date; /** - *The date that the intent was updated. When you create a resource, the creation date and - * the last updated date are the same.
+ *The version of the intent.
*/ - lastUpdatedDate?: Date; + version?: string; /** - *Describes how the intent is fulfilled. For more information, see PutIntent.
+ *Checksum of the intent.
*/ - fulfillmentActivity?: FulfillmentActivity; + checksum?: string; + + /** + *Configuration information, if any, to connect to an Amazon Kendra index with the
+ * AMAZON.KendraSearchIntent
intent.
Substring to match in intent names. An intent will be returned if any part of its name - * matches the substring. For example, "xyz" matches both "xyzabc" and "abcxyz."
+ *A pagination token that fetches the next page of intents. If the response to this API + * call is truncated, Amazon Lex returns a pagination token in the response. To fetch the next page of + * intents, specify the pagination token in the next request.
*/ - nameContains?: string; + nextToken?: string; /** *The maximum number of intents to return in the response. The default is 10.
@@ -2399,11 +2403,10 @@ export interface GetIntentsRequest { maxResults?: number; /** - *A pagination token that fetches the next page of intents. If the response to this API - * call is truncated, Amazon Lex returns a pagination token in the response. To fetch the next page of - * intents, specify the pagination token in the next request.
+ *Substring to match in intent names. An intent will be returned if any part of its name + * matches the substring. For example, "xyz" matches both "xyzabc" and "abcxyz."
*/ - nextToken?: string; + nameContains?: string; } export namespace GetIntentsRequest { @@ -2417,30 +2420,30 @@ export namespace GetIntentsRequest { */ export interface IntentMetadata { /** - *The date that the intent was updated. When you create an intent, the creation date and - * last updated date are the same.
+ *The name of the intent.
*/ - lastUpdatedDate?: Date; + name?: string; /** - *The version of the intent.
+ *A description of the intent.
*/ - version?: string; + description?: string; /** - *The date that the intent was created.
+ *The date that the intent was updated. When you create an intent, the creation date and + * last updated date are the same.
*/ - createdDate?: Date; + lastUpdatedDate?: Date; /** - *A description of the intent.
+ *The date that the intent was created.
*/ - description?: string; + createdDate?: Date; /** - *The name of the intent.
+ *The version of the intent.
*/ - name?: string; + version?: string; } export namespace IntentMetadata { @@ -2451,15 +2454,15 @@ export namespace IntentMetadata { export interface GetIntentsResponse { /** - *If the response is truncated, the response includes a pagination token that you can - * specify in your next request to fetch the next page of intents.
+ *An array of Intent
objects. For more information, see PutBot.
An array of Intent
objects. For more information, see PutBot.
If the response is truncated, the response includes a pagination token that you can + * specify in your next request to fetch the next page of intents.
*/ - intents?: IntentMetadata[]; + nextToken?: string; } export namespace GetIntentsResponse { @@ -2470,10 +2473,9 @@ export namespace GetIntentsResponse { export interface GetIntentVersionsRequest { /** - *The maximum number of intent versions to return in the response. The default is - * 10.
+ *The name of the intent for which versions should be returned.
*/ - maxResults?: number; + name: string | undefined; /** *A pagination token for fetching the next page of intent versions. If the response to @@ -2483,9 +2485,10 @@ export interface GetIntentVersionsRequest { nextToken?: string; /** - *
The name of the intent for which versions should be returned.
+ *The maximum number of intent versions to return in the response. The default is + * 10.
*/ - name: string | undefined; + maxResults?: number; } export namespace GetIntentVersionsRequest { @@ -2495,18 +2498,18 @@ export namespace GetIntentVersionsRequest { } export interface GetIntentVersionsResponse { + /** + *An array of IntentMetadata
objects, one for each numbered version of the
+ * intent plus one for the $LATEST
version.
A pagination token for fetching the next page of intent versions. If the response to * this call is truncated, Amazon Lex returns a pagination token in the response. To fetch the next * page of versions, specify the pagination token in the next request.
*/ nextToken?: string; - - /** - *An array of IntentMetadata
objects, one for each numbered version of the
- * intent plus one for the $LATEST
version.
The version of the slot type.
+ *The name of the slot type. The name is case sensitive.
*/ - version: string | undefined; + name: string | undefined; /** - *The name of the slot type. The name is case sensitive.
+ *The version of the slot type.
*/ - name: string | undefined; + version: string | undefined; } export namespace GetSlotTypeRequest { @@ -2535,20 +2538,26 @@ export namespace GetSlotTypeRequest { export interface GetSlotTypeResponse { /** - *The version of the slot type.
+ *The name of the slot type.
*/ - version?: string; + name?: string; /** - *The date that the slot type was updated. When you create a resource, the creation date - * and last update date are the same.
+ *A description of the slot type.
*/ - lastUpdatedDate?: Date; + description?: string; /** - *The built-in slot type used as a parent for the slot type.
+ *A list of EnumerationValue
objects that defines the values that the slot
+ * type can take.
The date that the slot type was updated. When you create a resource, the creation date + * and last update date are the same.
+ */ + lastUpdatedDate?: Date; /** *The date that the slot type was created.
@@ -2556,15 +2565,14 @@ export interface GetSlotTypeResponse { createdDate?: Date; /** - *A description of the slot type.
+ *The version of the slot type.
*/ - description?: string; + version?: string; /** - *A list of EnumerationValue
objects that defines the values that the slot
- * type can take.
Checksum of the $LATEST
version of the slot type.
The strategy that Amazon Lex uses to determine the value of the slot. For more information, @@ -2573,19 +2581,14 @@ export interface GetSlotTypeResponse { valueSelectionStrategy?: SlotValueSelectionStrategy | string; /** - *
Configuration information that extends the parent built-in slot type.
- */ - slotTypeConfigurations?: SlotTypeConfiguration[]; - - /** - *The name of the slot type.
+ *The built-in slot type used as a parent for the slot type.
*/ - name?: string; + parentSlotTypeSignature?: string; /** - *Checksum of the $LATEST
version of the slot type.
Configuration information that extends the parent built-in slot type.
*/ - checksum?: string; + slotTypeConfigurations?: SlotTypeConfiguration[]; } export namespace GetSlotTypeResponse { @@ -2602,17 +2605,17 @@ export interface GetSlotTypesRequest { */ nextToken?: string; - /** - *Substring to match in slot type names. A slot type will be returned if any part of its - * name matches the substring. For example, "xyz" matches both "xyzabc" and "abcxyz."
- */ - nameContains?: string; - /** *The maximum number of slot types to return in the response. The default is * 10.
*/ maxResults?: number; + + /** + *Substring to match in slot type names. A slot type will be returned if any part of its + * name matches the substring. For example, "xyz" matches both "xyzabc" and "abcxyz."
+ */ + nameContains?: string; } export namespace GetSlotTypesRequest { @@ -2626,14 +2629,14 @@ export namespace GetSlotTypesRequest { */ export interface SlotTypeMetadata { /** - *The date that the slot type was created.
+ *The name of the slot type.
*/ - createdDate?: Date; + name?: string; /** - *The version of the slot type.
+ *A description of the slot type.
*/ - version?: string; + description?: string; /** *The date that the slot type was updated. When you create a resource, the creation date @@ -2642,14 +2645,14 @@ export interface SlotTypeMetadata { lastUpdatedDate?: Date; /** - *
A description of the slot type.
+ *The date that the slot type was created.
*/ - description?: string; + createdDate?: Date; /** - *The name of the slot type.
+ *The version of the slot type.
*/ - name?: string; + version?: string; } export namespace SlotTypeMetadata { @@ -2679,6 +2682,11 @@ export namespace GetSlotTypesResponse { } export interface GetSlotTypeVersionsRequest { + /** + *The name of the slot type for which versions should be returned.
+ */ + name: string | undefined; + /** *A pagination token for fetching the next page of slot type versions. If the response to * this call is truncated, Amazon Lex returns a pagination token in the response. To fetch the next @@ -2691,11 +2699,6 @@ export interface GetSlotTypeVersionsRequest { * 10.
*/ maxResults?: number; - - /** - *The name of the slot type for which versions should be returned.
- */ - name: string | undefined; } export namespace GetSlotTypeVersionsRequest { @@ -2736,17 +2739,17 @@ export interface GetUtterancesViewRequest { */ botName: string | undefined; - /** - *To return utterances that were recognized and handled, use Detected
. To
- * return utterances that were not recognized, use Missed
.
An array of bot versions for which utterance information should be returned. The limit * is 5 versions per request.
*/ botVersions: string[] | undefined; + + /** + *To return utterances that were recognized and handled, use Detected
. To
+ * return utterances that were not recognized, use Missed
.
The date that the utterance was last recorded.
- */ - lastUtteredDate?: Date; - /** *The number of times that the utterance was processed.
*/ @@ -2784,6 +2782,11 @@ export interface UtteranceData { *The date that the utterance was first recorded.
*/ firstUtteredDate?: Date; + + /** + *The date that the utterance was last recorded.
+ */ + lastUtteredDate?: Date; } export namespace UtteranceData { @@ -2816,17 +2819,17 @@ export namespace UtteranceList { } export interface GetUtterancesViewResponse { + /** + *The name of the bot for which utterance information was returned.
+ */ + botName?: string; + /** *An array of UtteranceList objects, each containing a list of UtteranceData objects describing the utterances that were processed by your bot.
* The response contains a maximum of 100 UtteranceData
objects for each version.
* Amazon Lex returns the most frequent utterances received by the bot in the last 15 days.
The name of the bot for which utterance information was returned.
- */ - botName?: string; } export namespace GetUtterancesViewResponse { @@ -2855,15 +2858,15 @@ export namespace ListTagsForResourceRequest { */ export interface Tag { /** - *The value associated with a key. The value may be an empty string but it can't be - * null.
+ *The key for the tag. Keys are not case-sensitive and must be unique.
*/ - value: string | undefined; + key: string | undefined; /** - *The key for the tag. Keys are not case-sensitive and must be unique.
+ *The value associated with a key. The value may be an empty string but it can't be + * null.
*/ - key: string | undefined; + value: string | undefined; } export namespace Tag { @@ -2892,96 +2895,15 @@ export enum ProcessBehavior { export interface PutBotRequest { /** - *When Amazon Lex doesn't understand the user's intent, it uses this message to get
- * clarification. To specify how many times Amazon Lex should repeat the clarification prompt, use the
- * maxAttempts
field. If Amazon Lex still doesn't understand, it sends the message in
- * the abortStatement
field.
When you create a clarification prompt, make sure that it suggests the correct response - * from the user. for example, for a bot that orders pizza and drinks, you might create this - * clarification prompt: "What would you like to do? You can say 'Order a pizza' or 'Order a - * drink.'"
- *If you have defined a fallback intent, it will be invoked if the clarification prompt is
- * repeated the number of times defined in the maxAttempts
field. For more
- * information, see AMAZON.FallbackIntent.
If you don't define a clarification prompt, at runtime Amazon Lex will return a 400 Bad Request - * exception in three cases:
- *Follow-up prompt - When the user responds to a follow-up prompt but does not provide - * an intent. For example, in response to a follow-up prompt that says "Would you like - * anything else today?" the user says "Yes." Amazon Lex will return a 400 Bad Request exception - * because it does not have a clarification prompt to send to the user to get an - * intent.
- *Lambda function - When using a Lambda function, you return an
- * ElicitIntent
dialog type. Since Amazon Lex does not have a clarification prompt
- * to get an intent from the user, it returns a 400 Bad Request exception.
PutSession operation - When using the PutSession
operation, you send an
- * ElicitIntent
dialog type. Since Amazon Lex does not have a clarification prompt
- * to get an intent from the user, it returns a 400 Bad Request exception.
The name of the bot. The name is not case sensitive.
*/ - clarificationPrompt?: Prompt; + name: string | undefined; /** *A description of the bot.
*/ description?: string; - /** - *The Amazon Polly voice ID that you want Amazon Lex to use for voice interactions with the - * user. The locale configured for the voice must match the locale of the bot. For more - * information, see Voices in Amazon Polly in the Amazon Polly Developer - * Guide.
- */ - voiceId?: string; - - /** - *When set to true
user utterances are sent to Amazon Comprehend for sentiment
- * analysis. If you don't specify detectSentiment
, the default is
- * false
.
Identifies a specific revision of the $LATEST
version.
When you create a new bot, leave the checksum
field blank. If you specify
- * a checksum you get a BadRequestException
exception.
When you want to update a bot, set the checksum
field to the checksum of
- * the most recent revision of the $LATEST
version. If you don't specify the
- * checksum
field, or if the checksum does not match the $LATEST
version,
- * you get a PreconditionFailedException
exception.
For each Amazon Lex bot created with the Amazon Lex Model Building Service, you must specify
- * whether your use of Amazon Lex is related to a website, program, or other application that is
- * directed or targeted, in whole or in part, to children under age 13 and subject to the
- * Children's Online Privacy Protection Act (COPPA) by specifying true
or
- * false
in the childDirected
field. By specifying true
- * in the childDirected
field, you confirm that your use of Amazon Lex is related to a website, program, or other application that is
- * directed or targeted, in whole or in part, to children under age 13 and subject to COPPA. By
- * specifying false
in the childDirected
field, you confirm that your
- * use of Amazon Lex is not related to a website, program, or other
- * application that is directed or targeted, in whole or in part, to children under age 13 and
- * subject to COPPA. You may not specify a default value for the childDirected
field
- * that does not accurately reflect whether your use of Amazon Lex is related to a website, program,
- * or other application that is directed or targeted, in whole or in part, to children under age
- * 13 and subject to COPPA.
If your use of Amazon Lex relates to a website, program, or other application that is - * directed in whole or in part, to children under age 13, you must obtain any required - * verifiable parental consent under COPPA. For information regarding the use of Amazon Lex in - * connection with websites, programs, or other applications that are directed or targeted, in - * whole or in part, to children under age 13, see the Amazon Lex FAQ. - *
- */ - childDirected: boolean | undefined; - /** *An array of Intent
objects. Each intent represents a command that a user
* can express. For example, a pizza ordering bot might support an OrderPizza intent. For more
@@ -2989,23 +2911,6 @@ export interface PutBotRequest {
*/
intents?: Intent[];
- /**
- *
The maximum time in seconds that Amazon Lex retains the data gathered in a - * conversation.
- *A user interaction session remains active for the amount of time specified. If no - * conversation occurs during this time, the session expires and Amazon Lex deletes any data provided - * before the timeout.
- *For example, suppose that a user chooses the OrderPizza intent, but gets sidetracked - * halfway through placing an order. If the user doesn't complete the order within the specified - * time, Amazon Lex discards the slot information that it gathered, and the user must start - * over.
- *If you don't include the idleSessionTTLInSeconds
element in a
- * PutBot
operation request, Amazon Lex uses the default value. This is also true if
- * the request replaces an existing bot.
The default is 300 seconds (5 minutes).
- */ - idleSessionTTLInSeconds?: number; - /** *Set to true
to enable access to natural language understanding improvements.
*
If you set the processBehavior
element to BUILD
, Amazon Lex builds
- * the bot so that it can be run. If you set the element to SAVE
Amazon Lex saves the
- * bot, but doesn't build it.
If you don't specify this value, the default value is BUILD
.
Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent
,
* AMAZON.KendraSearchIntent
, or both when returning alternative intents in a
@@ -3103,6 +3000,42 @@ export interface PutBotRequest {
*/
nluIntentConfidenceThreshold?: number;
+ /**
+ *
When Amazon Lex doesn't understand the user's intent, it uses this message to get
+ * clarification. To specify how many times Amazon Lex should repeat the clarification prompt, use the
+ * maxAttempts
field. If Amazon Lex still doesn't understand, it sends the message in
+ * the abortStatement
field.
When you create a clarification prompt, make sure that it suggests the correct response + * from the user. for example, for a bot that orders pizza and drinks, you might create this + * clarification prompt: "What would you like to do? You can say 'Order a pizza' or 'Order a + * drink.'"
+ *If you have defined a fallback intent, it will be invoked if the clarification prompt is
+ * repeated the number of times defined in the maxAttempts
field. For more
+ * information, see AMAZON.FallbackIntent.
If you don't define a clarification prompt, at runtime Amazon Lex will return a 400 Bad Request + * exception in three cases:
+ *Follow-up prompt - When the user responds to a follow-up prompt but does not provide + * an intent. For example, in response to a follow-up prompt that says "Would you like + * anything else today?" the user says "Yes." Amazon Lex will return a 400 Bad Request exception + * because it does not have a clarification prompt to send to the user to get an + * intent.
+ *Lambda function - When using a Lambda function, you return an
+ * ElicitIntent
dialog type. Since Amazon Lex does not have a clarification prompt
+ * to get an intent from the user, it returns a 400 Bad Request exception.
PutSession operation - When using the PutSession
operation, you send an
+ * ElicitIntent
dialog type. Since Amazon Lex does not have a clarification prompt
+ * to get an intent from the user, it returns a 400 Bad Request exception.
When Amazon Lex can't understand the user's input in context, it tries to elicit the * information a few times. After that, Amazon Lex sends the message defined in @@ -3121,16 +3054,48 @@ export interface PutBotRequest { abortStatement?: Statement; /** - *
The name of the bot. The name is not case sensitive.
+ *The maximum time in seconds that Amazon Lex retains the data gathered in a + * conversation.
+ *A user interaction session remains active for the amount of time specified. If no + * conversation occurs during this time, the session expires and Amazon Lex deletes any data provided + * before the timeout.
+ *For example, suppose that a user chooses the OrderPizza intent, but gets sidetracked + * halfway through placing an order. If the user doesn't complete the order within the specified + * time, Amazon Lex discards the slot information that it gathered, and the user must start + * over.
+ *If you don't include the idleSessionTTLInSeconds
element in a
+ * PutBot
operation request, Amazon Lex uses the default value. This is also true if
+ * the request replaces an existing bot.
The default is 300 seconds (5 minutes).
*/ - name: string | undefined; + idleSessionTTLInSeconds?: number; /** - *A list of tags to add to the bot. You can only add tags when you create a bot, you can't
- * use the PutBot
operation to update the tags on a bot. To update tags, use the
- * TagResource
operation.
The Amazon Polly voice ID that you want Amazon Lex to use for voice interactions with the + * user. The locale configured for the voice must match the locale of the bot. For more + * information, see Voices in Amazon Polly in the Amazon Polly Developer + * Guide.
*/ - tags?: Tag[]; + voiceId?: string; + + /** + *Identifies a specific revision of the $LATEST
version.
When you create a new bot, leave the checksum
field blank. If you specify
+ * a checksum you get a BadRequestException
exception.
When you want to update a bot, set the checksum
field to the checksum of
+ * the most recent revision of the $LATEST
version. If you don't specify the
+ * checksum
field, or if the checksum does not match the $LATEST
version,
+ * you get a PreconditionFailedException
exception.
If you set the processBehavior
element to BUILD
, Amazon Lex builds
+ * the bot so that it can be run. If you set the element to SAVE
Amazon Lex saves the
+ * bot, but doesn't build it.
If you don't specify this value, the default value is BUILD
.
Specifies the target locale for the bot. Any intent used in the bot must be compatible @@ -3140,12 +3105,50 @@ export interface PutBotRequest { */ locale: Locale | string | undefined; + /** + *
For each Amazon Lex bot created with the Amazon Lex Model Building Service, you must specify
+ * whether your use of Amazon Lex is related to a website, program, or other application that is
+ * directed or targeted, in whole or in part, to children under age 13 and subject to the
+ * Children's Online Privacy Protection Act (COPPA) by specifying true
or
+ * false
in the childDirected
field. By specifying true
+ * in the childDirected
field, you confirm that your use of Amazon Lex is related to a website, program, or other application that is
+ * directed or targeted, in whole or in part, to children under age 13 and subject to COPPA. By
+ * specifying false
in the childDirected
field, you confirm that your
+ * use of Amazon Lex is not related to a website, program, or other
+ * application that is directed or targeted, in whole or in part, to children under age 13 and
+ * subject to COPPA. You may not specify a default value for the childDirected
field
+ * that does not accurately reflect whether your use of Amazon Lex is related to a website, program,
+ * or other application that is directed or targeted, in whole or in part, to children under age
+ * 13 and subject to COPPA.
If your use of Amazon Lex relates to a website, program, or other application that is + * directed in whole or in part, to children under age 13, you must obtain any required + * verifiable parental consent under COPPA. For information regarding the use of Amazon Lex in + * connection with websites, programs, or other applications that are directed or targeted, in + * whole or in part, to children under age 13, see the Amazon Lex FAQ. + *
+ */ + childDirected: boolean | undefined; + + /** + *When set to true
user utterances are sent to Amazon Comprehend for sentiment
+ * analysis. If you don't specify detectSentiment
, the default is
+ * false
.
When set to true
a new numbered version of the bot is created. This is the
* same as calling the CreateBotVersion
operation. If you don't specify
* createVersion
, the default is false
.
A list of tags to add to the bot. You can only add tags when you create a bot, you can't
+ * use the PutBot
operation to update the tags on a bot. To update tags, use the
+ * TagResource
operation.
The name of the bot.
+ */ + name?: string; + + /** + *A description of the bot.
+ */ + description?: string; + + /** + *An array of Intent
objects. For more information, see PutBot.
Indicates whether the bot uses accuracy improvements. true
+ * indicates that the bot is using the improvements, otherwise, false
.
The score that determines where Amazon Lex inserts the AMAZON.FallbackIntent
,
* AMAZON.KendraSearchIntent
, or both when returning alternative intents in a
@@ -3166,34 +3190,37 @@ export interface PutBotResponse {
nluIntentConfidenceThreshold?: number;
/**
- *
- * True
if a new version of the bot was created. If the
- * createVersion
field was not specified in the request, the
- * createVersion
field is set to false in the response.
The target locale for the bot.
+ *The prompts that Amazon Lex uses when it doesn't understand the user's intent. For more + * information, see PutBot.
*/ - locale?: Locale | string; + clarificationPrompt?: Prompt; /** - *The maximum length of time that Amazon Lex retains the data gathered in a conversation. For - * more information, see PutBot.
+ *The message that Amazon Lex uses to cancel a conversation. For more information, see PutBot.
*/ - idleSessionTTLInSeconds?: number; + abortStatement?: Statement; /** - *The version of the bot. For a new bot, the version is always
- * $LATEST
.
When you send a request to create a bot with processBehavior
set to
+ * BUILD
, Amazon Lex sets the status
response element to
+ * BUILDING
.
In the READY_BASIC_TESTING
state you can test the bot with user inputs
+ * that exactly match the utterances configured for the bot's intents and values in the slot
+ * types.
If Amazon Lex can't build the bot, Amazon Lex sets status
to FAILED
.
+ * Amazon Lex returns the reason for the failure in the failureReason
response element.
When you set processBehavior
to SAVE
, Amazon Lex sets the status
+ * code to NOT BUILT
.
When the bot is in the READY
state you can test and publish the
+ * bot.
An array of Intent
objects. For more information, see PutBot.
If status
is FAILED
, Amazon Lex provides the reason that it failed
+ * to build the bot.
The date that the bot was updated. When you create a resource, the creation date and @@ -3202,28 +3229,15 @@ export interface PutBotResponse { lastUpdatedDate?: Date; /** - *
A description of the bot.
- */ - description?: string; - - /** - *A list of tags associated with the bot.
- */ - tags?: Tag[]; - - /** - *
- * true
if the bot is configured to send user utterances to Amazon Comprehend
- * for sentiment analysis. If the detectSentiment
field was not specified in the
- * request, the detectSentiment
field is false
in the response.
The date that the bot was created.
*/ - detectSentiment?: boolean; + createdDate?: Date; /** - *The prompts that Amazon Lex uses when it doesn't understand the user's intent. For more - * information, see PutBot.
+ *The maximum length of time that Amazon Lex retains the data gathered in a conversation. For + * more information, see PutBot.
*/ - clarificationPrompt?: Prompt; + idleSessionTTLInSeconds?: number; /** *The Amazon Polly voice ID that Amazon Lex uses for voice interaction with the user. For more @@ -3232,25 +3246,20 @@ export interface PutBotResponse { voiceId?: string; /** - *
The date that the bot was created.
+ *Checksum of the bot that you created.
*/ - createdDate?: Date; + checksum?: string; /** - * When you send a request to create a bot with processBehavior
set to
- * BUILD
, Amazon Lex sets the status
response element to
- * BUILDING
.
In the READY_BASIC_TESTING
state you can test the bot with user inputs
- * that exactly match the utterances configured for the bot's intents and values in the slot
- * types.
If Amazon Lex can't build the bot, Amazon Lex sets status
to FAILED
.
- * Amazon Lex returns the reason for the failure in the failureReason
response element.
When you set processBehavior
to SAVE
, Amazon Lex sets the status
- * code to NOT BUILT
.
When the bot is in the READY
state you can test and publish the
- * bot.
The version of the bot. For a new bot, the version is always
+ * $LATEST
.
The target locale for the bot.
+ */ + locale?: Locale | string; /** *For each Amazon Lex bot created with the Amazon Lex Model Building Service, you must specify @@ -3277,31 +3286,25 @@ export interface PutBotResponse { childDirected?: boolean; /** - *
If status
is FAILED
, Amazon Lex provides the reason that it failed
- * to build the bot.
+ * True
if a new version of the bot was created. If the
+ * createVersion
field was not specified in the request, the
+ * createVersion
field is set to false in the response.
Indicates whether the bot uses accuracy improvements. true
- * indicates that the bot is using the improvements, otherwise, false
.
The name of the bot.
- */ - name?: string; - - /** - *Checksum of the bot that you created.
+ *
+ * true
if the bot is configured to send user utterances to Amazon Comprehend
+ * for sentiment analysis. If the detectSentiment
field was not specified in the
+ * request, the detectSentiment
field is false
in the response.
The message that Amazon Lex uses to cancel a conversation. For more information, see PutBot.
+ *A list of tags associated with the bot.
*/ - abortStatement?: Statement; + tags?: Tag[]; } export namespace PutBotResponse { @@ -3315,22 +3318,16 @@ export namespace PutBotResponse { */ export interface LogSettingsRequest { /** - *Where the logs will be delivered. Text logs are delivered to a CloudWatch Logs log group. + *
The type of logging to enable. Text logs are delivered to a CloudWatch Logs log group. * Audio logs are delivered to an S3 bucket.
*/ - destination: Destination | string | undefined; - - /** - *The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the - * logs should be delivered.
- */ - resourceArn: string | undefined; + logType: LogType | string | undefined; /** - *The type of logging to enable. Text logs are delivered to a CloudWatch Logs log group. + *
Where the logs will be delivered. Text logs are delivered to a CloudWatch Logs log group. * Audio logs are delivered to an S3 bucket.
*/ - logType: LogType | string | undefined; + destination: Destination | string | undefined; /** *The Amazon Resource Name (ARN) of the AWS KMS customer managed key for encrypting audio @@ -3338,6 +3335,12 @@ export interface LogSettingsRequest { * S3 buckets.
*/ kmsKeyArn?: string; + + /** + *The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket where the + * logs should be delivered.
+ */ + resourceArn: string | undefined; } export namespace LogSettingsRequest { @@ -3374,24 +3377,24 @@ export namespace ConversationLogsRequest { export interface PutBotAliasRequest { /** - *The name of the bot.
+ *The name of the alias. The name is not case sensitive.
*/ - botName: string | undefined; + name: string | undefined; /** - *Settings for conversation logs for the alias.
+ *A description of the alias.
*/ - conversationLogs?: ConversationLogsRequest; + description?: string; /** - *A description of the alias.
+ *The version of the bot.
*/ - description?: string; + botVersion: string | undefined; /** - *The name of the alias. The name is not case sensitive.
+ *The name of the bot.
*/ - name: string | undefined; + botName: string | undefined; /** *Identifies a specific revision of the $LATEST
version.
Settings for conversation logs for the alias.
+ */ + conversationLogs?: ConversationLogsRequest; + /** *A list of tags to add to the bot alias. You can only add tags when you create an alias,
* you can't use the PutBotAlias
operation to update the tags on a bot alias. To
* update tags, use the TagResource
operation.
The version of the bot.
- */ - botVersion: string | undefined; } export namespace PutBotAliasRequest { @@ -3425,19 +3428,14 @@ export namespace PutBotAliasRequest { export interface PutBotAliasResponse { /** - *A description of the alias.
- */ - description?: string; - - /** - *The settings that determine how Amazon Lex uses conversation logs for the alias.
+ *The name of the alias.
*/ - conversationLogs?: ConversationLogsResponse; + name?: string; /** - *A list of tags associated with a bot.
+ *A description of the alias.
*/ - tags?: Tag[]; + description?: string; /** *The version of the bot that the alias points to.
@@ -3445,14 +3443,15 @@ export interface PutBotAliasResponse { botVersion?: string; /** - *The name of the alias.
+ *The name of the bot that the alias points to.
*/ - name?: string; + botName?: string; /** - *The checksum for the current version of the alias.
+ *The date that the bot alias was updated. When you create a resource, the creation date + * and the last updated date are the same.
*/ - checksum?: string; + lastUpdatedDate?: Date; /** *The date that the bot alias was created.
@@ -3460,15 +3459,19 @@ export interface PutBotAliasResponse { createdDate?: Date; /** - *The date that the bot alias was updated. When you create a resource, the creation date - * and the last updated date are the same.
+ *The checksum for the current version of the alias.
*/ - lastUpdatedDate?: Date; + checksum?: string; /** - *The name of the bot that the alias points to.
+ *The settings that determine how Amazon Lex uses conversation logs for the alias.
*/ - botName?: string; + conversationLogs?: ConversationLogsResponse; + + /** + *A list of tags associated with a bot.
+ */ + tags?: Tag[]; } export namespace PutBotAliasResponse { @@ -3478,79 +3481,6 @@ export namespace PutBotAliasResponse { } export interface PutIntentRequest { - /** - *The statement that you want Amazon Lex to convey to the user after the intent is - * successfully fulfilled by the Lambda function.
- *This element is relevant only if you provide a Lambda function in the
- * fulfillmentActivity
. If you return the intent to the client application, you
- * can't specify this element.
The followUpPrompt
and conclusionStatement
are mutually
- * exclusive. You can specify only one.
When set to true
a new numbered version of the intent is created. This is
- * the same as calling the CreateIntentVersion
operation. If you do not specify
- * createVersion
, the default is false
.
An array of utterances (strings) that a user might say to signal the intent. For - * example, "I want {PizzaSize} pizza", "Order {Quantity} {PizzaSize} pizzas".
- * - *In each utterance, a slot name is enclosed in curly braces.
- */ - sampleUtterances?: string[]; - - /** - *When the user answers "no" to the question defined in confirmationPrompt
,
- * Amazon Lex responds with this statement to acknowledge that the intent was canceled.
You must provide both the rejectionStatement
and the
- * confirmationPrompt
, or neither.
A unique identifier for the built-in intent to base this intent on. To find the - * signature for an intent, see Standard Built-in Intents in the Alexa Skills Kit.
- */ - parentIntentSignature?: string; - - /** - *An array of intent slots. At runtime, Amazon Lex elicits required slot values from the user - * using prompts defined in the slots. For more information, see how-it-works. - *
- */ - slots?: Slot[]; - - /** - *Specifies a Lambda function to invoke for each user input. You can invoke this Lambda - * function to personalize user interaction.
- *For example, suppose your bot determines that the user is John. Your Lambda function
- * might retrieve John's information from a backend database and prepopulate some of the values.
- * For example, if you find that John is gluten intolerant, you might set the corresponding
- * intent slot, GlutenIntolerant
, to true. You might find John's phone number and
- * set the corresponding session attribute.
Identifies a specific revision of the $LATEST
version.
When you create a new intent, leave the checksum
field blank. If you
- * specify a checksum you get a BadRequestException
exception.
When you want to update a intent, set the checksum
field to the checksum
- * of the most recent revision of the $LATEST
version. If you don't specify the
- * checksum
field, or if the checksum does not match the $LATEST
- * version, you get a PreconditionFailedException
exception.
The name of the intent. The name is not case sensitive.
*The name can't match a built-in intent name, or a built-in intent name with "AMAZON." @@ -3562,26 +3492,24 @@ export interface PutIntentRequest { name: string | undefined; /** - *
Configuration information required to use the AMAZON.KendraSearchIntent
- * intent to connect to an Amazon Kendra index. For more information, see
- * AMAZON.KendraSearchIntent.
A description of the intent.
*/ - kendraConfiguration?: KendraConfiguration; + description?: string; /** - *Required. Describes how the intent is fulfilled. For example, after a user provides all
- * of the information for a pizza order, fulfillmentActivity
defines how the bot
- * places an order with a local pizza store.
You might configure Amazon Lex to return all of the intent information to the client - * application, or direct it to invoke a Lambda function that can process the intent (for - * example, place an order with a pizzeria).
+ *An array of intent slots. At runtime, Amazon Lex elicits required slot values from the user + * using prompts defined in the slots. For more information, see how-it-works. + *
*/ - fulfillmentActivity?: FulfillmentActivity; + slots?: Slot[]; /** - *A description of the intent.
+ *An array of utterances (strings) that a user might say to signal the intent. For + * example, "I want {PizzaSize} pizza", "Order {Quantity} {PizzaSize} pizzas".
+ * + *In each utterance, a slot name is enclosed in curly braces.
*/ - description?: string; + sampleUtterances?: string[]; /** *Prompts the user to confirm the intent. This question should have a yes or no @@ -3598,6 +3526,16 @@ export interface PutIntentRequest { */ confirmationPrompt?: Prompt; + /** + *
When the user answers "no" to the question defined in confirmationPrompt
,
+ * Amazon Lex responds with this statement to acknowledge that the intent was canceled.
You must provide both the rejectionStatement
and the
+ * confirmationPrompt
, or neither.
Amazon Lex uses this prompt to solicit additional activity after fulfilling an intent. For
* example, after the OrderPizza
intent is fulfilled, you might prompt the user to
@@ -3626,42 +3564,84 @@ export interface PutIntentRequest {
* are mutually exclusive. You can specify only one.
The statement that you want Amazon Lex to convey to the user after the intent is + * successfully fulfilled by the Lambda function.
+ *This element is relevant only if you provide a Lambda function in the
+ * fulfillmentActivity
. If you return the intent to the client application, you
+ * can't specify this element.
The followUpPrompt
and conclusionStatement
are mutually
+ * exclusive. You can specify only one.
The date that the intent was created.
+ *Specifies a Lambda function to invoke for each user input. You can invoke this Lambda + * function to personalize user interaction.
+ *For example, suppose your bot determines that the user is John. Your Lambda function
+ * might retrieve John's information from a backend database and prepopulate some of the values.
+ * For example, if you find that John is gluten intolerant, you might set the corresponding
+ * intent slot, GlutenIntolerant
, to true. You might find John's phone number and
+ * set the corresponding session attribute.
An array of intent slots that are configured for the intent.
+ *Required. Describes how the intent is fulfilled. For example, after a user provides all
+ * of the information for a pizza order, fulfillmentActivity
defines how the bot
+ * places an order with a local pizza store.
You might configure Amazon Lex to return all of the intent information to the client + * application, or direct it to invoke a Lambda function that can process the intent (for + * example, place an order with a pizzeria).
*/ - slots?: Slot[]; + fulfillmentActivity?: FulfillmentActivity; /** - *The date that the intent was updated. When you create a resource, the creation date and - * last update dates are the same.
+ *A unique identifier for the built-in intent to base this intent on. To find the + * signature for an intent, see Standard Built-in Intents in the Alexa Skills Kit.
*/ - lastUpdatedDate?: Date; + parentIntentSignature?: string; /** - *If defined in the intent, Amazon Lex invokes this Lambda function to fulfill the intent - * after the user provides all of the information required by the intent.
+ *Identifies a specific revision of the $LATEST
version.
When you create a new intent, leave the checksum
field blank. If you
+ * specify a checksum you get a BadRequestException
exception.
When you want to update a intent, set the checksum
field to the checksum
+ * of the most recent revision of the $LATEST
version. If you don't specify the
+ * checksum
field, or if the checksum does not match the $LATEST
+ * version, you get a PreconditionFailedException
exception.
When set to true
a new numbered version of the intent is created. This is
+ * the same as calling the CreateIntentVersion
operation. If you do not specify
+ * createVersion
, the default is false
.
Configuration information required to use the AMAZON.KendraSearchIntent
+ * intent to connect to an Amazon Kendra index. For more information, see
+ * AMAZON.KendraSearchIntent.
If defined in the intent, Amazon Lex uses this prompt to solicit additional user activity - * after the intent is fulfilled.
+ *The name of the intent.
*/ - followUpPrompt?: FollowUpPrompt; + name?: string; /** *A description of the intent.
@@ -3669,20 +3649,20 @@ export interface PutIntentResponse { description?: string; /** - *The name of the intent.
+ *An array of intent slots that are configured for the intent.
*/ - name?: string; + slots?: Slot[]; /** - *Checksum of the $LATEST
version of the intent created or updated.
An array of sample utterances that are configured for the intent.
*/ - checksum?: string; + sampleUtterances?: string[]; /** - *If defined in the intent, Amazon Lex invokes this Lambda function for each user - * input.
+ *If defined in the intent, Amazon Lex prompts the user to confirm the intent before + * fulfilling it.
*/ - dialogCodeHook?: CodeHook; + confirmationPrompt?: Prompt; /** *If the user answers "no" to the question defined in confirmationPrompt
@@ -3691,17 +3671,10 @@ export interface PutIntentResponse {
rejectionStatement?: Statement;
/**
- *
- * True
if a new version of the intent was created. If the
- * createVersion
field was not specified in the request, the
- * createVersion
field is set to false in the response.
An array of sample utterances that are configured for the intent.
+ *If defined in the intent, Amazon Lex uses this prompt to solicit additional user activity + * after the intent is fulfilled.
*/ - sampleUtterances?: string[]; + followUpPrompt?: FollowUpPrompt; /** *After the Lambda function specified in thefulfillmentActivity
intent
@@ -3709,16 +3682,33 @@ export interface PutIntentResponse {
*/
conclusionStatement?: Statement;
+ /**
+ *
If defined in the intent, Amazon Lex invokes this Lambda function for each user + * input.
+ */ + dialogCodeHook?: CodeHook; + + /** + *If defined in the intent, Amazon Lex invokes this Lambda function to fulfill the intent + * after the user provides all of the information required by the intent.
+ */ + fulfillmentActivity?: FulfillmentActivity; + /** *A unique identifier for the built-in intent that this intent is based on.
*/ parentIntentSignature?: string; /** - *Configuration information, if any, required to connect to an Amazon Kendra index and use
- * the AMAZON.KendraSearchIntent
intent.
The date that the intent was updated. When you create a resource, the creation date and + * last update dates are the same.
*/ - kendraConfiguration?: KendraConfiguration; + lastUpdatedDate?: Date; + + /** + *The date that the intent was created.
+ */ + createdDate?: Date; /** *The version of the intent. For a new intent, the version is always @@ -3727,10 +3717,23 @@ export interface PutIntentResponse { version?: string; /** - *
If defined in the intent, Amazon Lex prompts the user to confirm the intent before - * fulfilling it.
+ *Checksum of the $LATEST
version of the intent created or updated.
+ * True
if a new version of the intent was created. If the
+ * createVersion
field was not specified in the request, the
+ * createVersion
field is set to false in the response.
Configuration information, if any, required to connect to an Amazon Kendra index and use
+ * the AMAZON.KendraSearchIntent
intent.
When set to true
a new numbered version of the slot type is created. This
- * is the same as calling the CreateSlotTypeVersion
operation. If you do not specify
- * createVersion
, the default is false
.
The name of the slot type. The name is not case sensitive.
+ *The name can't match a built-in slot type name, or a built-in slot type name with
+ * "AMAZON." removed. For example, because there is a built-in slot type called
+ * AMAZON.DATE
, you can't create a custom slot type called
+ * DATE
.
For a list of built-in slot types, see Slot Type Reference in the Alexa Skills Kit.
*/ - createVersion?: boolean; + name: string | undefined; /** - *The built-in slot type used as the parent of the slot type. When you define a parent slot - * type, the new slot type has all of the same configuration as the parent.
- *Only AMAZON.AlphaNumeric
is supported.
A description of the slot type.
*/ - parentSlotTypeSignature?: string; + description?: string; /** *A list of EnumerationValue
objects that defines the values that the slot
@@ -3770,15 +3774,15 @@ export interface PutSlotTypeRequest {
enumerationValues?: EnumerationValue[];
/**
- *
A description of the slot type.
- */ - description?: string; - - /** - *Configuration information that extends the parent built-in slot type. The configuration is - * added to the settings for the parent slot type.
+ *Identifies a specific revision of the $LATEST
version.
When you create a new slot type, leave the checksum
field blank. If you
+ * specify a checksum you get a BadRequestException
exception.
When you want to update a slot type, set the checksum
field to the
+ * checksum of the most recent revision of the $LATEST
version. If you don't specify
+ * the checksum
field, or if the checksum does not match the $LATEST
+ * version, you get a PreconditionFailedException
exception.
Determines the slot resolution strategy that Amazon Lex uses to return slot type values. The @@ -3802,25 +3806,24 @@ export interface PutSlotTypeRequest { valueSelectionStrategy?: SlotValueSelectionStrategy | string; /** - *
The name of the slot type. The name is not case sensitive.
- *The name can't match a built-in slot type name, or a built-in slot type name with
- * "AMAZON." removed. For example, because there is a built-in slot type called
- * AMAZON.DATE
, you can't create a custom slot type called
- * DATE
.
For a list of built-in slot types, see Slot Type Reference in the Alexa Skills Kit.
+ *When set to true
a new numbered version of the slot type is created. This
+ * is the same as calling the CreateSlotTypeVersion
operation. If you do not specify
+ * createVersion
, the default is false
.
Identifies a specific revision of the $LATEST
version.
When you create a new slot type, leave the checksum
field blank. If you
- * specify a checksum you get a BadRequestException
exception.
When you want to update a slot type, set the checksum
field to the
- * checksum of the most recent revision of the $LATEST
version. If you don't specify
- * the checksum
field, or if the checksum does not match the $LATEST
- * version, you get a PreconditionFailedException
exception.
The built-in slot type used as the parent of the slot type. When you define a parent slot + * type, the new slot type has all of the same configuration as the parent.
+ *Only AMAZON.AlphaNumeric
is supported.
Configuration information that extends the parent built-in slot type. The configuration is + * added to the settings for the parent slot type.
+ */ + slotTypeConfigurations?: SlotTypeConfiguration[]; } export namespace PutSlotTypeRequest { @@ -3831,14 +3834,20 @@ export namespace PutSlotTypeRequest { export interface PutSlotTypeResponse { /** - *Configuration information that extends the parent built-in slot type.
+ *The name of the slot type.
*/ - slotTypeConfigurations?: SlotTypeConfiguration[]; + name?: string; /** - *The date that the slot type was created.
+ *A description of the slot type.
*/ - createdDate?: Date; + description?: string; + + /** + *A list of EnumerationValue
objects that defines the values that the slot
+ * type can take.
The date that the slot type was updated. When you create a slot type, the creation date @@ -3847,16 +3856,26 @@ export interface PutSlotTypeResponse { lastUpdatedDate?: Date; /** - *
The slot resolution strategy that Amazon Lex uses to determine the value of the slot. For - * more information, see PutSlotType.
+ *The date that the slot type was created.
*/ - valueSelectionStrategy?: SlotValueSelectionStrategy | string; + createdDate?: Date; /** - *A list of EnumerationValue
objects that defines the values that the slot
- * type can take.
The version of the slot type. For a new slot type, the version is always
+ * $LATEST
.
Checksum of the $LATEST
version of the slot type.
The slot resolution strategy that Amazon Lex uses to determine the value of the slot. For + * more information, see PutSlotType.
+ */ + valueSelectionStrategy?: SlotValueSelectionStrategy | string; /** *@@ -3872,25 +3891,9 @@ export interface PutSlotTypeResponse { parentSlotTypeSignature?: string; /** - *
A description of the slot type.
- */ - description?: string; - - /** - *The name of the slot type.
- */ - name?: string; - - /** - *Checksum of the $LATEST
version of the slot type.
The version of the slot type. For a new slot type, the version is always
- * $LATEST
.
Configuration information that extends the parent built-in slot type.
*/ - version?: string; + slotTypeConfigurations?: SlotTypeConfiguration[]; } export namespace PutSlotTypeResponse { @@ -3901,10 +3904,11 @@ export namespace PutSlotTypeResponse { export interface StartImportRequest { /** - *A list of tags to add to the imported bot. You can only add tags when you import a bot, - * you can't add tags to an intent or slot type.
+ *A zip archive in binary format. The archive should contain one file, a JSON file
+ * containing the resource to import. The resource should match the type specified in the
+ * resourceType
field.
Specifies the type of resource to export. Each resource also exports any resources that @@ -3938,11 +3942,10 @@ export interface StartImportRequest { mergeStrategy: MergeStrategy | string | undefined; /** - *
A zip archive in binary format. The archive should contain one file, a JSON file
- * containing the resource to import. The resource should match the type specified in the
- * resourceType
field.
A list of tags to add to the imported bot. You can only add tags when you import a bot, + * you can't add tags to an intent or slot type.
*/ - payload: Uint8Array | undefined; + tags?: Tag[]; } export namespace StartImportRequest { @@ -3953,30 +3956,30 @@ export namespace StartImportRequest { export interface StartImportResponse { /** - *The status of the import job. If the status is FAILED
, you can get the
- * reason for the failure using the GetImport
operation.
The name given to the import job.
*/ - importStatus?: ImportStatus | string; + name?: string; /** - *The identifier for the specific import job.
+ *The type of resource to import.
*/ - importId?: string; + resourceType?: ResourceType | string; /** - *A timestamp for the date and time that the import job was requested.
+ *The action to take when there is a merge conflict.
*/ - createdDate?: Date; + mergeStrategy?: MergeStrategy | string; /** - *The action to take when there is a merge conflict.
+ *The identifier for the specific import job.
*/ - mergeStrategy?: MergeStrategy | string; + importId?: string; /** - *The name given to the import job.
+ *The status of the import job. If the status is FAILED
, you can get the
+ * reason for the failure using the GetImport
operation.
A list of tags added to the imported bot.
@@ -3984,9 +3987,9 @@ export interface StartImportResponse { tags?: Tag[]; /** - *The type of resource to import.
+ *A timestamp for the date and time that the import job was requested.
*/ - resourceType?: ResourceType | string; + createdDate?: Date; } export namespace StartImportResponse { @@ -3997,15 +4000,15 @@ export namespace StartImportResponse { export interface TagResourceRequest { /** - *A list of tag keys to add to the resource. If a tag key already exists, the existing value - * is replaced with the new value.
+ *The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel to tag.
*/ - tags: Tag[] | undefined; + resourceArn: string | undefined; /** - *The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel to tag.
+ *A list of tag keys to add to the resource. If a tag key already exists, the existing value + * is replaced with the new value.
*/ - resourceArn: string | undefined; + tags: Tag[] | undefined; } export namespace TagResourceRequest { @@ -4024,15 +4027,15 @@ export namespace TagResourceResponse { export interface UntagResourceRequest { /** - *A list of tag keys to remove from the resource. If a tag key does not exist on the - * resource, it is ignored.
+ *The Amazon Resource Name (ARN) of the resource to remove the tags from.
*/ - tagKeys: string[] | undefined; + resourceArn: string | undefined; /** - *The Amazon Resource Name (ARN) of the resource to remove the tags from.
+ *A list of tag keys to remove from the resource. If a tag key does not exist on the + * resource, it is ignored.
*/ - resourceArn: string | undefined; + tagKeys: string[] | undefined; } export namespace UntagResourceRequest { diff --git a/clients/client-lex-model-building-service/protocols/Aws_restJson1.ts b/clients/client-lex-model-building-service/protocols/Aws_restJson1.ts index 1484ca9b1c503..3afed28ddbfe1 100644 --- a/clients/client-lex-model-building-service/protocols/Aws_restJson1.ts +++ b/clients/client-lex-model-building-service/protocols/Aws_restJson1.ts @@ -293,15 +293,6 @@ export const serializeAws_restJson1DeleteBotChannelAssociationCommand = async ( "Content-Type": "", }; let resolvedPath = "/bots/{botName}/aliases/{botAlias}/channels/{name}"; - if (input.botAlias !== undefined) { - const labelValue: string = input.botAlias; - if (labelValue.length <= 0) { - throw new Error("Empty value provided for input HTTP label: botAlias."); - } - resolvedPath = resolvedPath.replace("{botAlias}", __extendedEncodeURIComponent(labelValue)); - } else { - throw new Error("No value provided for input HTTP label: botAlias."); - } if (input.name !== undefined) { const labelValue: string = input.name; if (labelValue.length <= 0) { @@ -320,6 +311,15 @@ export const serializeAws_restJson1DeleteBotChannelAssociationCommand = async ( } else { throw new Error("No value provided for input HTTP label: botName."); } + if (input.botAlias !== undefined) { + const labelValue: string = input.botAlias; + if (labelValue.length <= 0) { + throw new Error("Empty value provided for input HTTP label: botAlias."); + } + resolvedPath = resolvedPath.replace("{botAlias}", __extendedEncodeURIComponent(labelValue)); + } else { + throw new Error("No value provided for input HTTP label: botAlias."); + } let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); return new __HttpRequest({ @@ -410,15 +410,6 @@ export const serializeAws_restJson1DeleteIntentVersionCommand = async ( "Content-Type": "", }; let resolvedPath = "/intents/{name}/versions/{version}"; - if (input.version !== undefined) { - const labelValue: string = input.version; - if (labelValue.length <= 0) { - throw new Error("Empty value provided for input HTTP label: version."); - } - resolvedPath = resolvedPath.replace("{version}", __extendedEncodeURIComponent(labelValue)); - } else { - throw new Error("No value provided for input HTTP label: version."); - } if (input.name !== undefined) { const labelValue: string = input.name; if (labelValue.length <= 0) { @@ -428,6 +419,15 @@ export const serializeAws_restJson1DeleteIntentVersionCommand = async ( } else { throw new Error("No value provided for input HTTP label: name."); } + if (input.version !== undefined) { + const labelValue: string = input.version; + if (labelValue.length <= 0) { + throw new Error("Empty value provided for input HTTP label: version."); + } + resolvedPath = resolvedPath.replace("{version}", __extendedEncodeURIComponent(labelValue)); + } else { + throw new Error("No value provided for input HTTP label: version."); + } let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); return new __HttpRequest({ @@ -479,15 +479,6 @@ export const serializeAws_restJson1DeleteSlotTypeVersionCommand = async ( "Content-Type": "", }; let resolvedPath = "/slottypes/{name}/version/{version}"; - if (input.version !== undefined) { - const labelValue: string = input.version; - if (labelValue.length <= 0) { - throw new Error("Empty value provided for input HTTP label: version."); - } - resolvedPath = resolvedPath.replace("{version}", __extendedEncodeURIComponent(labelValue)); - } else { - throw new Error("No value provided for input HTTP label: version."); - } if (input.name !== undefined) { const labelValue: string = input.name; if (labelValue.length <= 0) { @@ -497,6 +488,15 @@ export const serializeAws_restJson1DeleteSlotTypeVersionCommand = async ( } else { throw new Error("No value provided for input HTTP label: name."); } + if (input.version !== undefined) { + const labelValue: string = input.version; + if (labelValue.length <= 0) { + throw new Error("Empty value provided for input HTTP label: version."); + } + resolvedPath = resolvedPath.replace("{version}", __extendedEncodeURIComponent(labelValue)); + } else { + throw new Error("No value provided for input HTTP label: version."); + } let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); return new __HttpRequest({ @@ -557,15 +557,6 @@ export const serializeAws_restJson1GetBotCommand = async ( "Content-Type": "", }; let resolvedPath = "/bots/{name}/versions/{versionOrAlias}"; - if (input.versionOrAlias !== undefined) { - const labelValue: string = input.versionOrAlias; - if (labelValue.length <= 0) { - throw new Error("Empty value provided for input HTTP label: versionOrAlias."); - } - resolvedPath = resolvedPath.replace("{versionOrAlias}", __extendedEncodeURIComponent(labelValue)); - } else { - throw new Error("No value provided for input HTTP label: versionOrAlias."); - } if (input.name !== undefined) { const labelValue: string = input.name; if (labelValue.length <= 0) { @@ -575,6 +566,15 @@ export const serializeAws_restJson1GetBotCommand = async ( } else { throw new Error("No value provided for input HTTP label: name."); } + if (input.versionOrAlias !== undefined) { + const labelValue: string = input.versionOrAlias; + if (labelValue.length <= 0) { + throw new Error("Empty value provided for input HTTP label: versionOrAlias."); + } + resolvedPath = resolvedPath.replace("{versionOrAlias}", __extendedEncodeURIComponent(labelValue)); + } else { + throw new Error("No value provided for input HTTP label: versionOrAlias."); + } let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); return new __HttpRequest({ @@ -671,6 +671,15 @@ export const serializeAws_restJson1GetBotChannelAssociationCommand = async ( "Content-Type": "", }; let resolvedPath = "/bots/{botName}/aliases/{botAlias}/channels/{name}"; + if (input.name !== undefined) { + const labelValue: string = input.name; + if (labelValue.length <= 0) { + throw new Error("Empty value provided for input HTTP label: name."); + } + resolvedPath = resolvedPath.replace("{name}", __extendedEncodeURIComponent(labelValue)); + } else { + throw new Error("No value provided for input HTTP label: name."); + } if (input.botName !== undefined) { const labelValue: string = input.botName; if (labelValue.length <= 0) { @@ -689,15 +698,6 @@ export const serializeAws_restJson1GetBotChannelAssociationCommand = async ( } else { throw new Error("No value provided for input HTTP label: botAlias."); } - if (input.name !== undefined) { - const labelValue: string = input.name; - if (labelValue.length <= 0) { - throw new Error("Empty value provided for input HTTP label: name."); - } - resolvedPath = resolvedPath.replace("{name}", __extendedEncodeURIComponent(labelValue)); - } else { - throw new Error("No value provided for input HTTP label: name."); - } let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); return new __HttpRequest({ @@ -738,9 +738,9 @@ export const serializeAws_restJson1GetBotChannelAssociationsCommand = async ( throw new Error("No value provided for input HTTP label: botAlias."); } const query: any = { - ...(input.nameContains !== undefined && { nameContains: input.nameContains }), - ...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }), ...(input.nextToken !== undefined && { nextToken: input.nextToken }), + ...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }), + ...(input.nameContains !== undefined && { nameContains: input.nameContains }), }; let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); @@ -857,10 +857,10 @@ export const serializeAws_restJson1GetBuiltinIntentsCommand = async ( }; let resolvedPath = "/builtins/intents"; const query: any = { + ...(input.locale !== undefined && { locale: input.locale }), ...(input.signatureContains !== undefined && { signatureContains: input.signatureContains }), - ...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }), ...(input.nextToken !== undefined && { nextToken: input.nextToken }), - ...(input.locale !== undefined && { locale: input.locale }), + ...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }), }; let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); @@ -885,10 +885,10 @@ export const serializeAws_restJson1GetBuiltinSlotTypesCommand = async ( }; let resolvedPath = "/builtins/slottypes"; const query: any = { - ...(input.nextToken !== undefined && { nextToken: input.nextToken }), + ...(input.locale !== undefined && { locale: input.locale }), ...(input.signatureContains !== undefined && { signatureContains: input.signatureContains }), + ...(input.nextToken !== undefined && { nextToken: input.nextToken }), ...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }), - ...(input.locale !== undefined && { locale: input.locale }), }; let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); @@ -913,10 +913,10 @@ export const serializeAws_restJson1GetExportCommand = async ( }; let resolvedPath = "/exports"; const query: any = { - ...(input.exportType !== undefined && { exportType: input.exportType }), + ...(input.name !== undefined && { name: input.name }), ...(input.version !== undefined && { version: input.version }), ...(input.resourceType !== undefined && { resourceType: input.resourceType }), - ...(input.name !== undefined && { name: input.name }), + ...(input.exportType !== undefined && { exportType: input.exportType }), }; let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); @@ -970,15 +970,6 @@ export const serializeAws_restJson1GetIntentCommand = async ( "Content-Type": "", }; let resolvedPath = "/intents/{name}/versions/{version}"; - if (input.version !== undefined) { - const labelValue: string = input.version; - if (labelValue.length <= 0) { - throw new Error("Empty value provided for input HTTP label: version."); - } - resolvedPath = resolvedPath.replace("{version}", __extendedEncodeURIComponent(labelValue)); - } else { - throw new Error("No value provided for input HTTP label: version."); - } if (input.name !== undefined) { const labelValue: string = input.name; if (labelValue.length <= 0) { @@ -988,6 +979,15 @@ export const serializeAws_restJson1GetIntentCommand = async ( } else { throw new Error("No value provided for input HTTP label: name."); } + if (input.version !== undefined) { + const labelValue: string = input.version; + if (labelValue.length <= 0) { + throw new Error("Empty value provided for input HTTP label: version."); + } + resolvedPath = resolvedPath.replace("{version}", __extendedEncodeURIComponent(labelValue)); + } else { + throw new Error("No value provided for input HTTP label: version."); + } let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); return new __HttpRequest({ @@ -1010,9 +1010,9 @@ export const serializeAws_restJson1GetIntentsCommand = async ( }; let resolvedPath = "/intents"; const query: any = { - ...(input.nameContains !== undefined && { nameContains: input.nameContains }), - ...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }), ...(input.nextToken !== undefined && { nextToken: input.nextToken }), + ...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }), + ...(input.nameContains !== undefined && { nameContains: input.nameContains }), }; let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); @@ -1046,8 +1046,8 @@ export const serializeAws_restJson1GetIntentVersionsCommand = async ( throw new Error("No value provided for input HTTP label: name."); } const query: any = { - ...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }), ...(input.nextToken !== undefined && { nextToken: input.nextToken }), + ...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }), }; let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); @@ -1071,15 +1071,6 @@ export const serializeAws_restJson1GetSlotTypeCommand = async ( "Content-Type": "", }; let resolvedPath = "/slottypes/{name}/versions/{version}"; - if (input.version !== undefined) { - const labelValue: string = input.version; - if (labelValue.length <= 0) { - throw new Error("Empty value provided for input HTTP label: version."); - } - resolvedPath = resolvedPath.replace("{version}", __extendedEncodeURIComponent(labelValue)); - } else { - throw new Error("No value provided for input HTTP label: version."); - } if (input.name !== undefined) { const labelValue: string = input.name; if (labelValue.length <= 0) { @@ -1089,6 +1080,15 @@ export const serializeAws_restJson1GetSlotTypeCommand = async ( } else { throw new Error("No value provided for input HTTP label: name."); } + if (input.version !== undefined) { + const labelValue: string = input.version; + if (labelValue.length <= 0) { + throw new Error("Empty value provided for input HTTP label: version."); + } + resolvedPath = resolvedPath.replace("{version}", __extendedEncodeURIComponent(labelValue)); + } else { + throw new Error("No value provided for input HTTP label: version."); + } let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); return new __HttpRequest({ @@ -1112,8 +1112,8 @@ export const serializeAws_restJson1GetSlotTypesCommand = async ( let resolvedPath = "/slottypes"; const query: any = { ...(input.nextToken !== undefined && { nextToken: input.nextToken }), - ...(input.nameContains !== undefined && { nameContains: input.nameContains }), ...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }), + ...(input.nameContains !== undefined && { nameContains: input.nameContains }), }; let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); @@ -1183,8 +1183,8 @@ export const serializeAws_restJson1GetUtterancesViewCommand = async ( } const query: any = { view: "aggregation", - ...(input.statusType !== undefined && { status_type: input.statusType }), ...(input.botVersions !== undefined && { bot_versions: (input.botVersions || []).map((_entry) => _entry) }), + ...(input.statusType !== undefined && { status_type: input.statusType }), }; let body: any; const { hostname, protocol = "https", port } = await context.endpoint(); @@ -1291,15 +1291,6 @@ export const serializeAws_restJson1PutBotAliasCommand = async ( "Content-Type": "application/json", }; let resolvedPath = "/bots/{botName}/aliases/{name}"; - if (input.botName !== undefined) { - const labelValue: string = input.botName; - if (labelValue.length <= 0) { - throw new Error("Empty value provided for input HTTP label: botName."); - } - resolvedPath = resolvedPath.replace("{botName}", __extendedEncodeURIComponent(labelValue)); - } else { - throw new Error("No value provided for input HTTP label: botName."); - } if (input.name !== undefined) { const labelValue: string = input.name; if (labelValue.length <= 0) { @@ -1309,6 +1300,15 @@ export const serializeAws_restJson1PutBotAliasCommand = async ( } else { throw new Error("No value provided for input HTTP label: name."); } + if (input.botName !== undefined) { + const labelValue: string = input.botName; + if (labelValue.length <= 0) { + throw new Error("Empty value provided for input HTTP label: botName."); + } + resolvedPath = resolvedPath.replace("{botName}", __extendedEncodeURIComponent(labelValue)); + } else { + throw new Error("No value provided for input HTTP label: botName."); + } let body: any; body = JSON.stringify({ ...(input.botVersion !== undefined && { botVersion: input.botVersion }), diff --git a/clients/client-lightsail/Lightsail.ts b/clients/client-lightsail/Lightsail.ts index ed8b61b384dfb..51d0c4bc2f128 100644 --- a/clients/client-lightsail/Lightsail.ts +++ b/clients/client-lightsail/Lightsail.ts @@ -50,6 +50,21 @@ import { CreateContactMethodCommandInput, CreateContactMethodCommandOutput, } from "./commands/CreateContactMethodCommand"; +import { + CreateContainerServiceCommand, + CreateContainerServiceCommandInput, + CreateContainerServiceCommandOutput, +} from "./commands/CreateContainerServiceCommand"; +import { + CreateContainerServiceDeploymentCommand, + CreateContainerServiceDeploymentCommandInput, + CreateContainerServiceDeploymentCommandOutput, +} from "./commands/CreateContainerServiceDeploymentCommand"; +import { + CreateContainerServiceRegistryLoginCommand, + CreateContainerServiceRegistryLoginCommandInput, + CreateContainerServiceRegistryLoginCommandOutput, +} from "./commands/CreateContainerServiceRegistryLoginCommand"; import { CreateDiskCommand, CreateDiskCommandInput, CreateDiskCommandOutput } from "./commands/CreateDiskCommand"; import { CreateDiskFromSnapshotCommand, @@ -137,6 +152,16 @@ import { DeleteContactMethodCommandInput, DeleteContactMethodCommandOutput, } from "./commands/DeleteContactMethodCommand"; +import { + DeleteContainerImageCommand, + DeleteContainerImageCommandInput, + DeleteContainerImageCommandOutput, +} from "./commands/DeleteContainerImageCommand"; +import { + DeleteContainerServiceCommand, + DeleteContainerServiceCommandInput, + DeleteContainerServiceCommandOutput, +} from "./commands/DeleteContainerServiceCommand"; import { DeleteDiskCommand, DeleteDiskCommandInput, DeleteDiskCommandOutput } from "./commands/DeleteDiskCommand"; import { DeleteDiskSnapshotCommand, @@ -262,6 +287,41 @@ import { GetContactMethodsCommandInput, GetContactMethodsCommandOutput, } from "./commands/GetContactMethodsCommand"; +import { + GetContainerAPIMetadataCommand, + GetContainerAPIMetadataCommandInput, + GetContainerAPIMetadataCommandOutput, +} from "./commands/GetContainerAPIMetadataCommand"; +import { + GetContainerImagesCommand, + GetContainerImagesCommandInput, + GetContainerImagesCommandOutput, +} from "./commands/GetContainerImagesCommand"; +import { + GetContainerLogCommand, + GetContainerLogCommandInput, + GetContainerLogCommandOutput, +} from "./commands/GetContainerLogCommand"; +import { + GetContainerServiceDeploymentsCommand, + GetContainerServiceDeploymentsCommandInput, + GetContainerServiceDeploymentsCommandOutput, +} from "./commands/GetContainerServiceDeploymentsCommand"; +import { + GetContainerServiceMetricDataCommand, + GetContainerServiceMetricDataCommandInput, + GetContainerServiceMetricDataCommandOutput, +} from "./commands/GetContainerServiceMetricDataCommand"; +import { + GetContainerServicePowersCommand, + GetContainerServicePowersCommandInput, + GetContainerServicePowersCommandOutput, +} from "./commands/GetContainerServicePowersCommand"; +import { + GetContainerServicesCommand, + GetContainerServicesCommandInput, + GetContainerServicesCommandOutput, +} from "./commands/GetContainerServicesCommand"; import { GetDiskCommand, GetDiskCommandInput, GetDiskCommandOutput } from "./commands/GetDiskCommand"; import { GetDiskSnapshotCommand, @@ -469,6 +529,11 @@ import { RebootRelationalDatabaseCommandInput, RebootRelationalDatabaseCommandOutput, } from "./commands/RebootRelationalDatabaseCommand"; +import { + RegisterContainerImageCommand, + RegisterContainerImageCommandInput, + RegisterContainerImageCommandOutput, +} from "./commands/RegisterContainerImageCommand"; import { ReleaseStaticIpCommand, ReleaseStaticIpCommandInput, @@ -512,6 +577,11 @@ import { UntagResourceCommandInput, UntagResourceCommandOutput, } from "./commands/UntagResourceCommand"; +import { + UpdateContainerServiceCommand, + UpdateContainerServiceCommandInput, + UpdateContainerServiceCommandOutput, +} from "./commands/UpdateContainerServiceCommand"; import { UpdateDistributionBundleCommand, UpdateDistributionBundleCommandInput, @@ -547,10 +617,10 @@ import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types"; /** *Amazon Lightsail is the easiest way to get started with Amazon Web Services (AWS) for developers * who need to build websites or web applications. It includes everything you need to launch your - * project quickly – instances (virtual private servers), managed databases, SSD-based block - * storage, static IP addresses, load balancers, content delivery network (CDN) distributions, - * DNS management of registered domains, and snapshots (backups) – for a low, predictable monthly - * price.
+ * project quickly - instances (virtual private servers), container services, managed databases, + * SSD-based block storage, static IP addresses, load balancers, content delivery network (CDN) + * distributions, DNS management of registered domains, and resource snapshots (backups) - for a + * low, predictable monthly price. * *You can manage your Lightsail resources using the Lightsail console, Lightsail API, * AWS Command Line Interface (AWS CLI), or SDKs. For more information about Lightsail concepts @@ -558,7 +628,7 @@ import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types"; * *
This API Reference provides detailed information about the actions, data types, * parameters, and errors of the Lightsail service. For more information about the supported - * AWS Regions, endpoints, and service quotas for the Lightsail service, see Amazon Lightsail Endpoints and + * AWS Regions, endpoints, and service quotas of the Lightsail service, see Amazon Lightsail Endpoints and * Quotas in the AWS General Reference.
*/ export class Lightsail extends LightsailClient { @@ -597,13 +667,10 @@ export class Lightsail extends LightsailClient { /** *Attaches an SSL/TLS certificate to your Amazon Lightsail content delivery network (CDN) * distribution.
- * *After the certificate is attached, your distribution accepts HTTPS traffic for all of the * domains that are associated with the certificate.
- * *Use the CreateCertificate
action to create a certificate that you can attach
* to your distribution.
Only certificates created in the us-east-1
AWS Region can be attached to
* Lightsail distributions. Lightsail distributions are global resources that can reference
@@ -856,10 +923,8 @@ export class Lightsail extends LightsailClient {
/**
*
Creates an SSL/TLS certificate for a Amazon Lightsail content delivery network (CDN) * distribution.
- * *After the certificate is created, use the AttachCertificateToDistribution
* action to attach the certificate to your distribution.
Only certificates created in the us-east-1
AWS Region can be attached to
* Lightsail distributions. Lightsail distributions are global resources that can reference
@@ -971,6 +1036,139 @@ export class Lightsail extends LightsailClient {
}
}
+ /**
+ *
Creates an Amazon Lightsail container service.
+ * + *A Lightsail container service is a compute resource to which you can deploy containers. + * For more information, see Container services in Amazon Lightsail in the Lightsail Dev + * Guide.
+ */ + public createContainerService( + args: CreateContainerServiceCommandInput, + options?: __HttpHandlerOptions + ): PromiseCreates a deployment for your Amazon Lightsail container service.
+ * + *A deployment specifies the containers that will be launched on the container service and + * their settings, such as the ports to open, the environment variables to apply, and the launch + * command to run. It also specifies the container that will serve as the public endpoint of the + * deployment and its settings, such as the HTTP or HTTPS port to use, and the health check + * configuration.
+ * + *You can deploy containers to your container service using container images from a public + * registry like Docker Hub, or from your local machine. For more information, see Creating container images for your Amazon Lightsail container services in the + * Lightsail Dev Guide.
+ */ + public createContainerServiceDeployment( + args: CreateContainerServiceDeploymentCommandInput, + options?: __HttpHandlerOptions + ): PromiseCreates a temporary set of log in credentials that you can use to log in to the Docker + * process on your local machine. After you're logged in, you can use the native Docker commands + * to push your local container images to the container image registry of your Amazon Lightsail + * account so that you can use them with your Lightsail container service. The log in + * credentials expire 12 hours after they are created, at which point you will need to create a + * new set of log in credentials.
+ * + *You can only push container images to the container service registry of your Lightsail + * account. You cannot pull container images perform any other container image management + * actions on the container service registry of your Lightsail account.
+ *After you push your container images to the container image registry of your Lightsail
+ * account, use the RegisterContainerImage
action to register the pushed images to a
+ * specific Lightsail container service.
This action is not required if you install and use the Lightsail Control + * (lightsailctl) plugin to push container images to your Lightsail container service. For + * more information, see Pushing and + * managing container images on your Amazon Lightsail container services in the + * Lightsail Dev Guide.
+ *Creates a block storage disk that can be attached to an Amazon Lightsail instance in the
* same Availability Zone (e.g., us-east-2a
).
Creates an Amazon Lightsail content delivery network (CDN) distribution.
- * *A distribution is a globally distributed network of caching servers that improve the * performance of your website or web application hosted on a Lightsail instance. For more - * information, see Content delivery networks in Amazon Lightsail.
+ * information, see Content delivery networks in Amazon Lightsail. */ public createDistribution( args: CreateDistributionCommandInput, @@ -1156,9 +1353,12 @@ export class Lightsail extends LightsailClient { } /** - *Creates one of the following entry records associated with the domain: Address (A), - * canonical name (CNAME), mail exchanger (MX), name server (NS), start of authority (SOA), - * service locator (SRV), or text (TXT).
+ *Creates one of the following domain name system (DNS) records in a domain DNS zone: + * Address (A), canonical name (CNAME), mail exchanger (MX), name server (NS), start of authority + * (SOA), service locator (SRV), or text (TXT).
+ * + * + * *The create domain entry
operation supports tag-based access control via
* resource tags applied to the resource identified by domain name
. For more
* information, see the Lightsail Dev Guide.
Deletes an SSL/TLS certificate for your Amazon Lightsail content delivery network (CDN) * distribution.
- * *Certificates that are currently attached to a distribution cannot be deleted. Use the
* DetachCertificateFromDistribution
action to detach a certificate from a
* distribution.
Deletes a container image that is registered to your Amazon Lightsail container + * service.
+ */ + public deleteContainerImage( + args: DeleteContainerImageCommandInput, + options?: __HttpHandlerOptions + ): PromiseDeletes your Amazon Lightsail container service.
+ */ + public deleteContainerService( + args: DeleteContainerServiceCommandInput, + options?: __HttpHandlerOptions + ): PromiseDeletes the specified block storage disk. The disk must be in the available
* state (not attached to a Lightsail instance).
The disk may remain in the deleting
state for several minutes.
The delete disk
operation supports tag-based access control via resource tags
* applied to the resource identified by disk name
. For more information, see the
@@ -2112,7 +2375,6 @@ export class Lightsail extends LightsailClient {
/**
*
Detaches an SSL/TLS certificate from your Amazon Lightsail content delivery network (CDN) * distribution.
- * *After the certificate is detached, your distribution stops accepting traffic for all of * the domains that are associated with the certificate.
*/ @@ -2546,7 +2808,6 @@ export class Lightsail extends LightsailClient { /** *Returns information about one or more Amazon Lightsail SSL/TLS certificates.
- * *To get a summary of a certificate, ommit includeCertificateDetails
from
* your request. The response will include only the certificate Amazon Resource Name (ARN),
@@ -2654,6 +2915,268 @@ export class Lightsail extends LightsailClient {
}
}
+ /**
+ *
Returns information about Amazon Lightsail containers, such as the current version of the + * Lightsail Control (lightsailctl) plugin.
+ */ + public getContainerAPIMetadata( + args: GetContainerAPIMetadataCommandInput, + options?: __HttpHandlerOptions + ): PromiseReturns the container images that are registered to your Amazon Lightsail container + * service.
+ * + *If you created a deployment on your Lightsail container service that uses container + * images from a public registry like Docker Hub, those images are not returned as part of this + * action. Those images are not registered to your Lightsail container service.
+ *Returns the log events of a container of your Amazon Lightsail container service.
+ * + *If your container service has more than one node (i.e., a scale greater than 1), then the + * log events that are returned for the specified container are merged from all nodes on your + * container service.
+ * + *Container logs are retained for a certain amount of time. For more information, see + * Amazon Lightsail + * endpoints and quotas in the AWS General Reference.
+ *Returns the deployments for your Amazon Lightsail container service
+ * + *A deployment specifies the settings, such as the ports and launch command, of containers + * that are deployed to your container service.
+ * + *The deployments are ordered by version in ascending order. The newest version is listed at + * the top of the response.
+ * + *A set number of deployments are kept before the oldest one is replaced with the newest + * one. For more information, see Amazon Lightsail + * endpoints and quotas in the AWS General Reference.
+ *Returns the data points of a specific metric of your Amazon Lightsail container + * service.
+ * + *Metrics report the utilization of your resources. Monitor and collect metric data + * regularly to maintain the reliability, availability, and performance of your resources.
+ */ + public getContainerServiceMetricData( + args: GetContainerServiceMetricDataCommandInput, + options?: __HttpHandlerOptions + ): PromiseReturns the list of powers that can be specified for your Amazon Lightsail container + * services.
+ * + *The power specifies the amount of memory, the number of vCPUs, and the base price of the + * container service.
+ */ + public getContainerServicePowers( + args: GetContainerServicePowersCommandInput, + options?: __HttpHandlerOptions + ): PromiseReturns information about one or more of your Amazon Lightsail container services.
+ */ + public getContainerServices( + args: GetContainerServicesCommandInput, + options?: __HttpHandlerOptions + ): PromiseReturns information about a specific block storage disk.
*/ @@ -2774,7 +3297,6 @@ export class Lightsail extends LightsailClient { /** *Returns the list bundles that can be applied to you Amazon Lightsail content delivery * network (CDN) distributions.
- * *A distribution bundle specifies the monthly network transfer quota and monthly cost of * your dsitribution.
*/ @@ -2843,7 +3365,6 @@ export class Lightsail extends LightsailClient { /** *Returns the data points of a specific metric for an Amazon Lightsail content delivery * network (CDN) distribution.
- * *Metrics report the utilization of your resources, and the error counts generated by them. * Monitor and collect metric data regularly to maintain the reliability, availability, and * performance of your resources.
@@ -4291,6 +4812,46 @@ export class Lightsail extends LightsailClient { } } + /** + *Registers a container image to your Amazon Lightsail container service.
+ * + *This action is not required if you install and use the Lightsail Control + * (lightsailctl) plugin to push container images to your Lightsail container service. For + * more information, see Pushing and + * managing container images on your Amazon Lightsail container services in the + * Lightsail Dev Guide.
+ *Deletes a specific static IP from your account.
*/ @@ -4326,7 +4887,6 @@ export class Lightsail extends LightsailClient { /** *Deletes currently cached content from your Amazon Lightsail content delivery network (CDN) * distribution.
- * *After resetting the cache, the next time a content request is made, your distribution * pulls, serves, and caches it from the origin.
*/ @@ -4679,9 +5239,41 @@ export class Lightsail extends LightsailClient { } } + /** + *Updates the configuration of your Amazon Lightsail container service, such as its power, + * scale, and public domain names.
+ */ + public updateContainerService( + args: UpdateContainerServiceCommandInput, + options?: __HttpHandlerOptions + ): PromiseUpdates an existing Amazon Lightsail content delivery network (CDN) distribution.
- * *Use this action to update the configuration of your existing distribution
*/ public updateDistribution( @@ -4716,13 +5308,10 @@ export class Lightsail extends LightsailClient { /** *Updates the bundle of your Amazon Lightsail content delivery network (CDN) * distribution.
- * *A distribution bundle specifies the monthly network transfer quota and monthly cost of * your dsitribution.
- * *Update your distribution's bundle if your distribution is going over its monthly network * transfer quota and is incurring an overage fee.
- * *You can update your distribution's bundle only one time within your monthly AWS billing
* cycle. To determine if you can update your distribution's bundle, use the
* GetDistributions
action. The ableToUpdateBundle
parameter in the
diff --git a/clients/client-lightsail/LightsailClient.ts b/clients/client-lightsail/LightsailClient.ts
index 7a773fc7d0fe4..f78cc0efa8d1d 100644
--- a/clients/client-lightsail/LightsailClient.ts
+++ b/clients/client-lightsail/LightsailClient.ts
@@ -27,6 +27,18 @@ import {
CreateContactMethodCommandInput,
CreateContactMethodCommandOutput,
} from "./commands/CreateContactMethodCommand";
+import {
+ CreateContainerServiceCommandInput,
+ CreateContainerServiceCommandOutput,
+} from "./commands/CreateContainerServiceCommand";
+import {
+ CreateContainerServiceDeploymentCommandInput,
+ CreateContainerServiceDeploymentCommandOutput,
+} from "./commands/CreateContainerServiceDeploymentCommand";
+import {
+ CreateContainerServiceRegistryLoginCommandInput,
+ CreateContainerServiceRegistryLoginCommandOutput,
+} from "./commands/CreateContainerServiceRegistryLoginCommand";
import { CreateDiskCommandInput, CreateDiskCommandOutput } from "./commands/CreateDiskCommand";
import {
CreateDiskFromSnapshotCommandInput,
@@ -70,6 +82,14 @@ import {
DeleteContactMethodCommandInput,
DeleteContactMethodCommandOutput,
} from "./commands/DeleteContactMethodCommand";
+import {
+ DeleteContainerImageCommandInput,
+ DeleteContainerImageCommandOutput,
+} from "./commands/DeleteContainerImageCommand";
+import {
+ DeleteContainerServiceCommandInput,
+ DeleteContainerServiceCommandOutput,
+} from "./commands/DeleteContainerServiceCommand";
import { DeleteDiskCommandInput, DeleteDiskCommandOutput } from "./commands/DeleteDiskCommand";
import { DeleteDiskSnapshotCommandInput, DeleteDiskSnapshotCommandOutput } from "./commands/DeleteDiskSnapshotCommand";
import { DeleteDistributionCommandInput, DeleteDistributionCommandOutput } from "./commands/DeleteDistributionCommand";
@@ -126,6 +146,28 @@ import {
GetCloudFormationStackRecordsCommandOutput,
} from "./commands/GetCloudFormationStackRecordsCommand";
import { GetContactMethodsCommandInput, GetContactMethodsCommandOutput } from "./commands/GetContactMethodsCommand";
+import {
+ GetContainerAPIMetadataCommandInput,
+ GetContainerAPIMetadataCommandOutput,
+} from "./commands/GetContainerAPIMetadataCommand";
+import { GetContainerImagesCommandInput, GetContainerImagesCommandOutput } from "./commands/GetContainerImagesCommand";
+import { GetContainerLogCommandInput, GetContainerLogCommandOutput } from "./commands/GetContainerLogCommand";
+import {
+ GetContainerServiceDeploymentsCommandInput,
+ GetContainerServiceDeploymentsCommandOutput,
+} from "./commands/GetContainerServiceDeploymentsCommand";
+import {
+ GetContainerServiceMetricDataCommandInput,
+ GetContainerServiceMetricDataCommandOutput,
+} from "./commands/GetContainerServiceMetricDataCommand";
+import {
+ GetContainerServicePowersCommandInput,
+ GetContainerServicePowersCommandOutput,
+} from "./commands/GetContainerServicePowersCommand";
+import {
+ GetContainerServicesCommandInput,
+ GetContainerServicesCommandOutput,
+} from "./commands/GetContainerServicesCommand";
import { GetDiskCommandInput, GetDiskCommandOutput } from "./commands/GetDiskCommand";
import { GetDiskSnapshotCommandInput, GetDiskSnapshotCommandOutput } from "./commands/GetDiskSnapshotCommand";
import { GetDiskSnapshotsCommandInput, GetDiskSnapshotsCommandOutput } from "./commands/GetDiskSnapshotsCommand";
@@ -258,6 +300,10 @@ import {
RebootRelationalDatabaseCommandInput,
RebootRelationalDatabaseCommandOutput,
} from "./commands/RebootRelationalDatabaseCommand";
+import {
+ RegisterContainerImageCommandInput,
+ RegisterContainerImageCommandOutput,
+} from "./commands/RegisterContainerImageCommand";
import { ReleaseStaticIpCommandInput, ReleaseStaticIpCommandOutput } from "./commands/ReleaseStaticIpCommand";
import {
ResetDistributionCacheCommandInput,
@@ -281,6 +327,10 @@ import { TagResourceCommandInput, TagResourceCommandOutput } from "./commands/Ta
import { TestAlarmCommandInput, TestAlarmCommandOutput } from "./commands/TestAlarmCommand";
import { UnpeerVpcCommandInput, UnpeerVpcCommandOutput } from "./commands/UnpeerVpcCommand";
import { UntagResourceCommandInput, UntagResourceCommandOutput } from "./commands/UntagResourceCommand";
+import {
+ UpdateContainerServiceCommandInput,
+ UpdateContainerServiceCommandOutput,
+} from "./commands/UpdateContainerServiceCommand";
import {
UpdateDistributionBundleCommandInput,
UpdateDistributionBundleCommandOutput,
@@ -360,6 +410,9 @@ export type ServiceInputTypes =
| CreateCertificateCommandInput
| CreateCloudFormationStackCommandInput
| CreateContactMethodCommandInput
+ | CreateContainerServiceCommandInput
+ | CreateContainerServiceDeploymentCommandInput
+ | CreateContainerServiceRegistryLoginCommandInput
| CreateDiskCommandInput
| CreateDiskFromSnapshotCommandInput
| CreateDiskSnapshotCommandInput
@@ -379,6 +432,8 @@ export type ServiceInputTypes =
| DeleteAutoSnapshotCommandInput
| DeleteCertificateCommandInput
| DeleteContactMethodCommandInput
+ | DeleteContainerImageCommandInput
+ | DeleteContainerServiceCommandInput
| DeleteDiskCommandInput
| DeleteDiskSnapshotCommandInput
| DeleteDistributionCommandInput
@@ -408,6 +463,13 @@ export type ServiceInputTypes =
| GetCertificatesCommandInput
| GetCloudFormationStackRecordsCommandInput
| GetContactMethodsCommandInput
+ | GetContainerAPIMetadataCommandInput
+ | GetContainerImagesCommandInput
+ | GetContainerLogCommandInput
+ | GetContainerServiceDeploymentsCommandInput
+ | GetContainerServiceMetricDataCommandInput
+ | GetContainerServicePowersCommandInput
+ | GetContainerServicesCommandInput
| GetDiskCommandInput
| GetDiskSnapshotCommandInput
| GetDiskSnapshotsCommandInput
@@ -459,6 +521,7 @@ export type ServiceInputTypes =
| PutInstancePublicPortsCommandInput
| RebootInstanceCommandInput
| RebootRelationalDatabaseCommandInput
+ | RegisterContainerImageCommandInput
| ReleaseStaticIpCommandInput
| ResetDistributionCacheCommandInput
| SendContactMethodVerificationCommandInput
@@ -470,6 +533,7 @@ export type ServiceInputTypes =
| TestAlarmCommandInput
| UnpeerVpcCommandInput
| UntagResourceCommandInput
+ | UpdateContainerServiceCommandInput
| UpdateDistributionBundleCommandInput
| UpdateDistributionCommandInput
| UpdateDomainEntryCommandInput
@@ -489,6 +553,9 @@ export type ServiceOutputTypes =
| CreateCertificateCommandOutput
| CreateCloudFormationStackCommandOutput
| CreateContactMethodCommandOutput
+ | CreateContainerServiceCommandOutput
+ | CreateContainerServiceDeploymentCommandOutput
+ | CreateContainerServiceRegistryLoginCommandOutput
| CreateDiskCommandOutput
| CreateDiskFromSnapshotCommandOutput
| CreateDiskSnapshotCommandOutput
@@ -508,6 +575,8 @@ export type ServiceOutputTypes =
| DeleteAutoSnapshotCommandOutput
| DeleteCertificateCommandOutput
| DeleteContactMethodCommandOutput
+ | DeleteContainerImageCommandOutput
+ | DeleteContainerServiceCommandOutput
| DeleteDiskCommandOutput
| DeleteDiskSnapshotCommandOutput
| DeleteDistributionCommandOutput
@@ -537,6 +606,13 @@ export type ServiceOutputTypes =
| GetCertificatesCommandOutput
| GetCloudFormationStackRecordsCommandOutput
| GetContactMethodsCommandOutput
+ | GetContainerAPIMetadataCommandOutput
+ | GetContainerImagesCommandOutput
+ | GetContainerLogCommandOutput
+ | GetContainerServiceDeploymentsCommandOutput
+ | GetContainerServiceMetricDataCommandOutput
+ | GetContainerServicePowersCommandOutput
+ | GetContainerServicesCommandOutput
| GetDiskCommandOutput
| GetDiskSnapshotCommandOutput
| GetDiskSnapshotsCommandOutput
@@ -588,6 +664,7 @@ export type ServiceOutputTypes =
| PutInstancePublicPortsCommandOutput
| RebootInstanceCommandOutput
| RebootRelationalDatabaseCommandOutput
+ | RegisterContainerImageCommandOutput
| ReleaseStaticIpCommandOutput
| ResetDistributionCacheCommandOutput
| SendContactMethodVerificationCommandOutput
@@ -599,6 +676,7 @@ export type ServiceOutputTypes =
| TestAlarmCommandOutput
| UnpeerVpcCommandOutput
| UntagResourceCommandOutput
+ | UpdateContainerServiceCommandOutput
| UpdateDistributionBundleCommandOutput
| UpdateDistributionCommandOutput
| UpdateDomainEntryCommandOutput
@@ -721,10 +799,10 @@ export type LightsailClientResolvedConfig = __SmithyResolvedConfiguration<__Http
/**
*
Amazon Lightsail is the easiest way to get started with Amazon Web Services (AWS) for developers * who need to build websites or web applications. It includes everything you need to launch your - * project quickly – instances (virtual private servers), managed databases, SSD-based block - * storage, static IP addresses, load balancers, content delivery network (CDN) distributions, - * DNS management of registered domains, and snapshots (backups) – for a low, predictable monthly - * price.
+ * project quickly - instances (virtual private servers), container services, managed databases, + * SSD-based block storage, static IP addresses, load balancers, content delivery network (CDN) + * distributions, DNS management of registered domains, and resource snapshots (backups) - for a + * low, predictable monthly price. * *You can manage your Lightsail resources using the Lightsail console, Lightsail API, * AWS Command Line Interface (AWS CLI), or SDKs. For more information about Lightsail concepts @@ -732,7 +810,7 @@ export type LightsailClientResolvedConfig = __SmithyResolvedConfiguration<__Http * *
This API Reference provides detailed information about the actions, data types, * parameters, and errors of the Lightsail service. For more information about the supported - * AWS Regions, endpoints, and service quotas for the Lightsail service, see Amazon Lightsail Endpoints and + * AWS Regions, endpoints, and service quotas of the Lightsail service, see Amazon Lightsail Endpoints and * Quotas in the AWS General Reference.
*/ export class LightsailClient extends __Client< diff --git a/clients/client-lightsail/commands/CreateContainerServiceCommand.ts b/clients/client-lightsail/commands/CreateContainerServiceCommand.ts new file mode 100644 index 0000000000000..43cbf3d2f9de0 --- /dev/null +++ b/clients/client-lightsail/commands/CreateContainerServiceCommand.ts @@ -0,0 +1,82 @@ +import { LightsailClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LightsailClient"; +import { CreateContainerServiceRequest, CreateContainerServiceResult } from "../models/models_0"; +import { + deserializeAws_json1_1CreateContainerServiceCommand, + serializeAws_json1_1CreateContainerServiceCommand, +} from "../protocols/Aws_json1_1"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + MiddlewareStack, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +export type CreateContainerServiceCommandInput = CreateContainerServiceRequest; +export type CreateContainerServiceCommandOutput = CreateContainerServiceResult & __MetadataBearer; + +export class CreateContainerServiceCommand extends $Command< + CreateContainerServiceCommandInput, + CreateContainerServiceCommandOutput, + LightsailClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: CreateContainerServiceCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + resolveMiddleware( + clientStack: MiddlewareStackThe status of the add-on.
+ *The daily time when an automatic snapshot is created.
+ *The time shown is in HH:00
format, and in Coordinated Universal Time
+ * (UTC).
The snapshot is automatically created between the time shown and up to 45 minutes + * after.
*/ - status?: string; + snapshotTimeOfDay?: string; /** *The next daily time an automatic snapshot will be created.
@@ -63,13 +67,9 @@ export interface AddOn { nextSnapshotTimeOfDay?: string; /** - *The daily time when an automatic snapshot is created.
- *The time shown is in HH:00
format, and in Coordinated Universal Time
- * (UTC).
The snapshot is automatically created between the time shown and up to 45 minutes - * after.
+ *The status of the add-on.
*/ - snapshotTimeOfDay?: string; + status?: string; /** *The name of the add-on.
@@ -210,14 +210,14 @@ export enum RegionName { */ export interface ResourceLocation { /** - *The AWS Region name.
+ *The Availability Zone. Follows the format us-east-2a
(case-sensitive).
The Availability Zone. Follows the format us-east-2a
(case-sensitive).
The AWS Region name.
*/ - availabilityZone?: string; + regionName?: RegionName | string; } export namespace ResourceLocation { @@ -259,6 +259,7 @@ export enum ResourceType { Certificate = "Certificate", CloudFormationStackRecord = "CloudFormationStackRecord", ContactMethod = "ContactMethod", + ContainerService = "ContainerService", Disk = "Disk", DiskSnapshot = "DiskSnapshot", Distribution = "Distribution", @@ -282,13 +283,6 @@ export enum ResourceType { * in Amazon Lightsail. */ export interface MonitoredResourceInfo { - /** - *The Lightsail resource type of the resource being monitored.
- *Instances, load balancers, and relational databases are the only Lightsail resources - * that can currently be monitored by alarms.
- */ - resourceType?: ResourceType | string; - /** *The name of the Lightsail resource being monitored.
*/ @@ -298,6 +292,13 @@ export interface MonitoredResourceInfo { *The Amazon Resource Name (ARN) of the resource being monitored.
*/ arn?: string; + + /** + *The Lightsail resource type of the resource being monitored.
+ *Instances, load balancers, and relational databases are the only Lightsail resources + * that can currently be monitored by alarms.
+ */ + resourceType?: ResourceType | string; } export namespace MonitoredResourceInfo { @@ -365,30 +366,106 @@ export enum MetricUnit { */ export interface Alarm { /** - *The alarm states that trigger a notification.
+ *The value against which the specified statistic is compared.
*/ - notificationTriggers?: (AlarmState | string)[]; + threshold?: number; /** - *The timestamp when the alarm was created.
+ *The current state of the alarm.
+ *An alarm has the following possible states:
+ *
+ * ALARM
- The metric is outside of the defined threshold.
+ * INSUFFICIENT_DATA
- The alarm has just started, the metric is not
+ * available, or not enough data is available for the metric to determine the alarm
+ * state.
+ * OK
- The metric is within the defined threshold.
The Lightsail resource type (e.g., Alarm
).
The alarm states that trigger a notification.
*/ - resourceType?: ResourceType | string; + notificationTriggers?: (AlarmState | string)[]; /** *The unit of the metric associated with the alarm.
*/ unit?: MetricUnit | string; + /** + *The contact protocols for the alarm, such as Email
, SMS
(text
+ * messaging), or both.
The arithmetic operation used when comparing the specified statistic and threshold.
+ */ + comparisonOperator?: ComparisonOperator | string; + + /** + *The name of the metric associated with the alarm.
+ */ + metricName?: MetricName | string; + + /** + *The number of data points that must not within the specified threshold to trigger the + * alarm.
+ */ + datapointsToAlarm?: number; + /** *The name of the alarm.
*/ name?: string; + /** + *The Amazon Resource Name (ARN) of the alarm.
+ */ + arn?: string; + + /** + *Indicates whether the alarm is enabled.
+ */ + notificationEnabled?: boolean; + + /** + *The number of periods over which data is compared to the specified threshold.
+ */ + evaluationPeriods?: number; + + /** + *The support code. Include this code in your email to support when you have questions about + * your Lightsail alarm. This code enables our support team to look up your Lightsail + * information more easily.
+ */ + supportCode?: string; + + /** + *The timestamp when the alarm was created.
+ */ + createdAt?: Date; + + /** + *An object that lists information about the resource monitored by the alarm.
+ */ + monitoredResourceInfo?: MonitoredResourceInfo; + + /** + *The Lightsail resource type (e.g., Alarm
).
Specifies how the alarm handles missing data points.
*An alarm can treat missing data in the following ways:
@@ -418,9 +495,9 @@ export interface Alarm { treatMissingData?: TreatMissingData | string; /** - *The period, in seconds, over which the statistic is applied.
+ *An object that lists information about the location of the alarm.
*/ - period?: number; + location?: ResourceLocation; /** *The statistic for the metric associated with the alarm.
@@ -458,85 +535,9 @@ export interface Alarm { statistic?: MetricStatistic | string; /** - *An object that lists information about the location of the alarm.
- */ - location?: ResourceLocation; - - /** - *The number of periods over which data is compared to the specified threshold.
- */ - evaluationPeriods?: number; - - /** - *The arithmetic operation used when comparing the specified statistic and threshold.
- */ - comparisonOperator?: ComparisonOperator | string; - - /** - *Indicates whether the alarm is enabled.
- */ - notificationEnabled?: boolean; - - /** - *An object that lists information about the resource monitored by the alarm.
- */ - monitoredResourceInfo?: MonitoredResourceInfo; - - /** - *The support code. Include this code in your email to support when you have questions about - * your Lightsail alarm. This code enables our support team to look up your Lightsail - * information more easily.
- */ - supportCode?: string; - - /** - *The Amazon Resource Name (ARN) of the alarm.
- */ - arn?: string; - - /** - *The current state of the alarm.
- *An alarm has the following possible states:
- *
- * ALARM
- The metric is outside of the defined threshold.
- * INSUFFICIENT_DATA
- The alarm has just started, the metric is not
- * available, or not enough data is available for the metric to determine the alarm
- * state.
- * OK
- The metric is within the defined threshold.
The value against which the specified statistic is compared.
- */ - threshold?: number; - - /** - *The number of data points that must not within the specified threshold to trigger the - * alarm.
- */ - datapointsToAlarm?: number; - - /** - *The contact protocols for the alarm, such as Email
, SMS
(text
- * messaging), or both.
The name of the metric associated with the alarm.
+ *The period, in seconds, over which the statistic is applied.
*/ - metricName?: MetricName | string; + period?: number; } export namespace Alarm { @@ -568,6 +569,9 @@ export enum OperationType { CloseInstancePublicPorts = "CloseInstancePublicPorts", CreateCertificate = "CreateCertificate", CreateContactMethod = "CreateContactMethod", + CreateContainerService = "CreateContainerService", + CreateContainerServiceDeployment = "CreateContainerServiceDeployment", + CreateContainerServiceRegistryLogin = "CreateContainerServiceRegistryLogin", CreateDisk = "CreateDisk", CreateDiskFromSnapshot = "CreateDiskFromSnapshot", CreateDiskSnapshot = "CreateDiskSnapshot", @@ -584,6 +588,8 @@ export enum OperationType { DeleteAlarm = "DeleteAlarm", DeleteCertificate = "DeleteCertificate", DeleteContactMethod = "DeleteContactMethod", + DeleteContainerImage = "DeleteContainerImage", + DeleteContainerService = "DeleteContainerService", DeleteDisk = "DeleteDisk", DeleteDiskSnapshot = "DeleteDiskSnapshot", DeleteDistribution = "DeleteDistribution", @@ -609,6 +615,7 @@ export enum OperationType { PutInstancePublicPorts = "PutInstancePublicPorts", RebootInstance = "RebootInstance", RebootRelationalDatabase = "RebootRelationalDatabase", + RegisterContainerImage = "RegisterContainerImage", ReleaseStaticIp = "ReleaseStaticIp", ResetDistributionCache = "ResetDistributionCache", SendContactMethodVerification = "SendContactMethodVerification", @@ -617,6 +624,7 @@ export enum OperationType { StopInstance = "StopInstance", StopRelationalDatabase = "StopRelationalDatabase", TestAlarm = "TestAlarm", + UpdateContainerService = "UpdateContainerService", UpdateDistribution = "UpdateDistribution", UpdateDistributionBundle = "UpdateDistributionBundle", UpdateDomainEntry = "UpdateDomainEntry", @@ -638,9 +646,15 @@ export enum OperationStatus { */ export interface Operation { /** - *A Boolean value indicating whether the operation is terminal.
+ *The timestamp when the operation was initialized (e.g.,
+ * 1479816991.349
).
The resource type.
+ */ + resourceType?: ResourceType | string; /** *The error code.
@@ -648,14 +662,14 @@ export interface Operation { errorCode?: string; /** - *The type of operation.
+ *A Boolean value indicating whether the operation is terminal.
*/ - operationType?: OperationType | string; + isTerminal?: boolean; /** - *The resource name.
+ *The ID of the operation.
*/ - resourceName?: string; + id?: string; /** *The AWS Region and Availability Zone.
@@ -663,15 +677,9 @@ export interface Operation { location?: ResourceLocation; /** - *The ID of the operation.
- */ - id?: string; - - /** - *The timestamp when the operation was initialized (e.g.,
- * 1479816991.349
).
The type of operation.
*/ - createdAt?: Date; + operationType?: OperationType | string; /** *The timestamp when the status was changed (e.g., 1479816991.349
).
The resource type.
+ *The resource name.
*/ - resourceType?: ResourceType | string; + resourceName?: string; /** *Details about the operation (e.g., Debian-1GB-Ohio-1
).
The name of the distribution that the certificate will be attached to.
+ *Use the GetDistributions
action to get a list of distribution names that you
+ * can specify.
The name of the certificate to attach to a distribution.
- * *Only certificates with a status of ISSUED
can be attached to a
* distribution.
Use the GetCertificates
action to get a list of certificate names that you
* can specify.
This is the name of the certificate resource type and is used only to reference the * certificate in other API actions. It can be different than the domain name of the @@ -833,14 +845,6 @@ export interface AttachCertificateToDistributionRequest { *
The name of the distribution that the certificate will be attached to.
- * - *Use the GetDistributions
action to get a list of distribution names that you
- * can specify.
The size of the disk in GB.
+ *The path of the disk (e.g., /dev/xvdf
).
The path of the disk (e.g., /dev/xvdf
).
The size of the disk in GB.
*/ - path?: string; + sizeInGb?: number; } export namespace AttachedDisk { @@ -984,15 +988,15 @@ export namespace AttachInstancesToLoadBalancerResult { export interface AttachLoadBalancerTlsCertificateRequest { /** - *The name of the load balancer to which you want to associate the SSL/TLS - * certificate.
+ *The name of your SSL/TLS certificate.
*/ - loadBalancerName: string | undefined; + certificateName: string | undefined; /** - *The name of your SSL/TLS certificate.
+ *The name of the load balancer to which you want to associate the SSL/TLS + * certificate.
*/ - certificateName: string | undefined; + loadBalancerName: string | undefined; } export namespace AttachLoadBalancerTlsCertificateRequest { @@ -1019,14 +1023,14 @@ export namespace AttachLoadBalancerTlsCertificateResult { export interface AttachStaticIpRequest { /** - *The instance name to which you want to attach the static IP address.
+ *The name of the static IP.
*/ - instanceName: string | undefined; + staticIpName: string | undefined; /** - *The name of the static IP.
+ *The instance name to which you want to attach the static IP address.
*/ - staticIpName: string | undefined; + instanceName: string | undefined; } export namespace AttachStaticIpRequest { @@ -1067,14 +1071,14 @@ export interface AutoSnapshotDetails { fromAttachedDisks?: AttachedDisk[]; /** - *The status of the automatic snapshot.
+ *The date of the automatic snapshot in YYYY-MM-DD
format.
The date of the automatic snapshot in YYYY-MM-DD
format.
The status of the automatic snapshot.
*/ - date?: string; + status?: AutoSnapshotStatus | string; /** *The timestamp when the automatic snapshot was created.
@@ -1129,11 +1133,41 @@ export enum BlueprintType { *Describes a blueprint (a virtual private server image).
*/ export interface Blueprint { + /** + *The ID for the virtual private server image (e.g., app_wordpress_4_4
or
+ * app_lamp_7_0
).
The version code.
+ */ + versionCode?: string; + + /** + *The product URL to learn more about the image or blueprint.
+ */ + productUrl?: string; + + /** + *The version number of the operating system, application, or stack (e.g.,
+ * 2016.03.0
).
The type of the blueprint (e.g., os
or app
).
A Boolean value indicating whether the blueprint is active. Inactive blueprints are listed + * to support customers with existing instances but are not necessarily available for launch of + * new instances. Blueprints are marked inactive when they become outdated due to operating + * system updates or new application releases.
+ */ + isActive?: boolean; + /** *The minimum bundle power required to run this blueprint. For example, you need a bundle * with a power value of 500 or more to create an instance that uses a blueprint with a minimum @@ -1142,17 +1176,6 @@ export interface Blueprint { */ minPower?: number; - /** - *
The version code.
- */ - versionCode?: string; - - /** - *The ID for the virtual private server image (e.g., app_wordpress_4_4
or
- * app_lamp_7_0
).
The description of the blueprint.
*/ @@ -1169,30 +1192,11 @@ export interface Blueprint { */ group?: string; - /** - *The product URL to learn more about the image or blueprint.
- */ - productUrl?: string; - /** *The friendly name of the blueprint (e.g., Amazon Linux
).
A Boolean value indicating whether the blueprint is active. Inactive blueprints are listed - * to support customers with existing instances but are not necessarily available for launch of - * new instances. Blueprints are marked inactive when they become outdated due to operating - * system updates or new application releases.
- */ - isActive?: boolean; - - /** - *The version number of the operating system, application, or stack (e.g.,
- * 2016.03.0
).
The end-user license agreement URL for the image or blueprint.
*/ @@ -1211,19 +1215,14 @@ export namespace Blueprint { */ export interface Bundle { /** - *A friendly name for the bundle (e.g., Micro
).
The Amazon EC2 instance type (e.g., t2.micro
).
The amount of RAM in GB (e.g., 2.0
).
The bundle ID (e.g., micro_1_0
).
The number of vCPUs included in the bundle (e.g., 2
).
A numeric value that represents the power of the bundle (e.g., 500
). You can
@@ -1235,14 +1234,14 @@ export interface Bundle {
power?: number;
/**
- *
The number of vCPUs included in the bundle (e.g., 2
).
The bundle ID (e.g., micro_1_0
).
The amount of RAM in GB (e.g., 2.0
).
A friendly name for the bundle (e.g., Micro
).
The price in US dollars (e.g., 5.0
) of the bundle.
The data transfer rate per month in GB (e.g., 2000
).
The Amazon EC2 instance type (e.g., t2.micro
).
A Boolean value indicating whether the bundle is active.
+ */ + isActive?: boolean; /** *The size of the SSD (e.g., 30
).
A Boolean value indicating whether the bundle is active.
+ *The data transfer rate per month in GB (e.g., 2000
).
The operating system platform (Linux/Unix-based or Windows Server-based) that the bundle @@ -1286,9 +1290,7 @@ export namespace Bundle { export interface CacheBehavior { /** *
The cache behavior of the distribution.
- * *The following cache behaviors can be specified:
- * *@@ -1325,51 +1327,20 @@ export namespace CacheBehavior { /** *
Describes the per-path cache behavior of an Amazon Lightsail content delivery network (CDN) * distribution.
- * *A per-path cache behavior is used to override, or add an exception to, the default cache
* behavior of a distribution. For example, if the cacheBehavior
is set to
* cache
, then a per-path cache behavior can be used to specify a directory, file,
* or file type that your distribution will cache. Alternately, if the distribution's
* cacheBehavior
is dont-cache
, then a per-path cache behavior can be
* used to specify a directory, file, or file type that your distribution will not cache.
if the cacheBehavior's behavior is set to 'cache', then
*/ export interface CacheBehaviorPerPath { - /** - *The cache behavior for the specified path.
- * - *You can specify one of the following per-path cache behaviors:
- * - *
- *
- * cache
- * - This behavior caches the
- * specified path.
- *
- *
- * dont-cache
- * - This behavior doesn't cache
- * the specified path.
- *
The path to a directory or file to cached, or not cache. Use an asterisk symbol to specify
* wildcard directories (path/to/assets/*
), and file types (*.html, *jpg,
* *js
). Directories and file paths are case-sensitive.
Examples:
- * *Specify the following to cache all files in the document root of an Apache web server @@ -1404,7 +1375,6 @@ export interface CacheBehaviorPerPath { *
* var/www/html/images/*.gif
*
Specify the following to cache all files in the images sub-directory of the document * root of an Apache web server.
*@@ -1414,6 +1384,30 @@ export interface CacheBehaviorPerPath { *
The cache behavior for the specified path.
+ *You can specify one of the following per-path cache behaviors:
+ *
+ *
+ * cache
+ * - This behavior caches the
+ * specified path.
+ *
+ *
+ * dont-cache
+ * - This behavior doesn't cache
+ * the specified path.
+ *
Describes whether an Amazon Lightsail content delivery network (CDN) distribution forwards * cookies to the origin and, if so, which ones.
- * *For the cookies that you specify, your distribution caches separate versions of the * specified content based on the cookie values in viewer * requests.
@@ -1476,9 +1469,6 @@ export enum HeaderEnum { /** *Describes the request headers that a Lightsail distribution bases caching on.
- * - * - * *For the headers that you specify, your distribution caches separate versions of the
* specified content based on the header values in viewer requests. For example, suppose viewer
* requests for logo.jpg
contain a custom product
header that has a
@@ -1489,10 +1479,14 @@ export enum HeaderEnum {
*
The specific headers to forward to your distribution's origin.
+ */ + headersAllowList?: (HeaderEnum | string)[]; + /** *The headers that you want your distribution to forward to your origin and base caching * on.
- * *You can configure your distribution to do one of the following:
*The specific headers to forward to your distribution's origin.
- */ - headersAllowList?: (HeaderEnum | string)[]; } export namespace HeaderObject { @@ -1535,7 +1524,6 @@ export namespace HeaderObject { /** *Describes the query string parameters that an Amazon Lightsail content delivery network * (CDN) distribution to bases caching on.
- * *For the query strings that you specify, your distribution caches separate versions of the * specified content based on the query string values in viewer * requests.
@@ -1548,9 +1536,7 @@ export interface QueryStringObject { /** *The specific query strings that the distribution forwards to the origin.
- * *Your distribution will cache content based on the specified query strings.
- * *If the option
parameter is true, then your distribution forwards all query
* strings, regardless of what you specify using the queryStringsAllowList
* parameter.
Describes the cache settings of an Amazon Lightsail content delivery network (CDN) * distribution.
- * *These settings apply only to your distribution's cacheBehaviors
(including
* the defaultCacheBehavior
) that have a behavior
of
* cache
.
An object that describes the query strings that are forwarded to the origin. Your content - * is cached based on the query strings that are forwarded.
- */ - forwardedQueryStrings?: QueryStringObject; - - /** - *The HTTP method responses that are cached by your distribution.
- * + *The HTTP methods that are processed and forwarded to the distribution's origin.
*You can specify the following options:
- * *
- * GET,HEAD
- The distribution caches responses to the GET
and
+ * GET,HEAD
- The distribution forwards the GET
and
* HEAD
methods.
- * GET,HEAD,OPTIONS
- The distribution caches responses to the
- * GET
, HEAD
, and OPTIONS
methods.
GET,HEAD,OPTIONS
- The distribution forwards the GET
,
+ * HEAD
, and OPTIONS
methods.
+ *
+ * GET,HEAD,OPTIONS,PUT,PATCH,POST,DELETE
- The distribution forwards the
+ * GET
, HEAD
, OPTIONS
, PUT
,
+ * PATCH
, POST
, and DELETE
methods.
If you specify the third option, you might need to restrict access to your distribution's + * origin so users can't perform operations that you don't want them to. For example, you might + * not want users to have permission to delete objects from your origin.
*/ - cachedHTTPMethods?: string; - - /** - *An object that describes the headers that are forwarded to the origin. Your content is - * cached based on the headers that are forwarded.
- */ - forwardedHeaders?: HeaderObject; - - /** - *An object that describes the cookies that are forwarded to the origin. Your content is - * cached based on the cookies that are forwarded.
- */ - forwardedCookies?: CookieObject; + allowedHTTPMethods?: string; /** *The default amount of time that objects stay in the distribution's cache before the * distribution forwards another request to the origin to determine whether the content has been * updated.
- * *The value specified applies only when the origin does not add HTTP headers such as
* Cache-Control max-age
, Cache-Control s-maxage
, and
@@ -1628,7 +1601,6 @@ export interface CacheSettings {
*
The maximum amount of time that objects stay in the distribution's cache before the * distribution forwards another request to the origin to determine whether the object has been * updated.
- * *The value specified applies only when the origin adds HTTP headers such as
* Cache-Control max-age
, Cache-Control s-maxage
, and
* Expires
to objects.
The minimum amount of time that objects stay in the distribution's cache before the - * distribution forwards another request to the origin to determine whether the object has been - * updated.
- * - *A value of 0
must be specified for minimumTTL
if the
- * distribution is configured to forward all headers to the origin.
An object that describes the cookies that are forwarded to the origin. Your content is + * cached based on the cookies that are forwarded.
*/ - minimumTTL?: number; + forwardedCookies?: CookieObject; /** - *The HTTP methods that are processed and forwarded to the distribution's origin.
- * + *The HTTP method responses that are cached by your distribution.
*You can specify the following options:
- * *
- * GET,HEAD
- The distribution forwards the GET
and
+ * GET,HEAD
- The distribution caches responses to the GET
and
* HEAD
methods.
- * GET,HEAD,OPTIONS
- The distribution forwards the GET
,
- * HEAD
, and OPTIONS
methods.
- * GET,HEAD,OPTIONS,PUT,PATCH,POST,DELETE
- The distribution forwards the
- * GET
, HEAD
, OPTIONS
, PUT
,
- * PATCH
, POST
, and DELETE
methods.
GET,HEAD,OPTIONS
- The distribution caches responses to the
+ * GET
, HEAD
, and OPTIONS
methods.
* If you specify the third option, you might need to restrict access to your distribution's - * origin so users can't perform operations that you don't want them to. For example, you might - * not want users to have permission to delete objects from your origin.
*/ - allowedHTTPMethods?: string; + cachedHTTPMethods?: string; + + /** + *The minimum amount of time that objects stay in the distribution's cache before the + * distribution forwards another request to the origin to determine whether the object has been + * updated.
+ *A value of 0
must be specified for minimumTTL
if the
+ * distribution is configured to forward all headers to the origin.
An object that describes the query strings that are forwarded to the origin. Your content + * is cached based on the query strings that are forwarded.
+ */ + forwardedQueryStrings?: QueryStringObject; + + /** + *An object that describes the headers that are forwarded to the origin. Your content is + * cached based on the headers that are forwarded.
+ */ + forwardedHeaders?: HeaderObject; } export namespace CacheSettings { @@ -1688,9 +1665,9 @@ export namespace CacheSettings { */ export interface ResourceRecord { /** - *The name of the record.
+ *The value for the DNS record.
*/ - name?: string; + value?: string; /** *The DNS record type.
@@ -1698,9 +1675,9 @@ export interface ResourceRecord { type?: string; /** - *The value for the DNS record.
+ *The name of the record.
*/ - value?: string; + name?: string; } export namespace ResourceRecord { @@ -1744,15 +1721,13 @@ export enum RenewalStatus { */ export interface RenewalSummary { /** - *The reason for the renewal status of the certificate.
+ *An array of objects that describe the domain validation records of the certificate.
*/ - renewalStatusReason?: string; + domainValidationRecords?: DomainValidationRecord[]; /** *The renewal status of the certificate.
- * *The following renewal status are possible:
- * *@@ -1794,14 +1769,14 @@ export interface RenewalSummary { renewalStatus?: RenewalStatus | string; /** - *
The timestamp when the certificate was last updated.
+ *The reason for the renewal status of the certificate.
*/ - updatedAt?: Date; + renewalStatusReason?: string; /** - *An array of objects that describe the domain validation records of the certificate.
+ *The timestamp when the certificate was last updated.
*/ - domainValidationRecords?: DomainValidationRecord[]; + updatedAt?: Date; } export namespace RenewalSummary { @@ -1827,18 +1802,18 @@ export enum CertificateStatus { */ export interface Tag { /** - *The key of the tag.
- *Constraints: Tag keys accept a maximum of 128 letters, numbers, spaces in UTF-8, or the + *
The value of the tag.
+ *Constraints: Tag values accept a maximum of 256 letters, numbers, spaces in UTF-8, or the * following characters: + - = . _ : / @
*/ - key?: string; + value?: string; /** - *The value of the tag.
- *Constraints: Tag values accept a maximum of 256 letters, numbers, spaces in UTF-8, or the + *
The key of the tag.
+ *Constraints: Tag keys accept a maximum of 128 letters, numbers, spaces in UTF-8, or the * following characters: + - = . _ : / @
*/ - value?: string; + key?: string; } export namespace Tag { @@ -1849,7 +1824,6 @@ export namespace Tag { /** *Describes the full details of an Amazon Lightsail SSL/TLS certificate.
- * *To get a summary of a certificate, use the GetCertificates
action and ommit
* includeCertificateDetails
from your request. The response will include only
@@ -1857,48 +1831,11 @@ export namespace Tag {
*
The timestamp when the certificate is first valid.
- */ - notBefore?: Date; - - /** - *The name of the certificate (e.g., my-certificate
).
The renewal eligibility of the certificate.
- */ - eligibleToRenew?: string; - /** *The certificate authority that issued the certificate.
*/ issuerCA?: string; - /** - *An array of objects that describe the domain validation records of the certificate.
- */ - domainValidationRecords?: DomainValidationRecord[]; - - /** - *The timestamp when the certificate expires.
- */ - notAfter?: Date; - - /** - *The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
- */ - tags?: Tag[]; - - /** - *The validation status of the certificate.
- */ - status?: CertificateStatus | string; - /** *The reason the certificate was revoked. This value is present only when the certificate
* status is REVOKED
.
The serial number of the certificate.
+ *The validation status of the certificate.
*/ - serialNumber?: string; + status?: CertificateStatus | string; /** *The timestamp when the certificate was revoked. This value is present only when the @@ -1916,24 +1853,6 @@ export interface Certificate { */ revokedAt?: Date; - /** - *
The support code. Include this code in your email to support when you have questions about - * your Lightsail certificate. This code enables our support team to look up your Lightsail - * information more easily.
- */ - supportCode?: string; - - /** - *An object that describes the status of the certificate renewal managed by - * Lightsail.
- */ - renewalSummary?: RenewalSummary; - - /** - *The Amazon Resource Name (ARN) of the certificate.
- */ - arn?: string; - /** *The domain name of the certificate.
*/ @@ -1950,14 +1869,8 @@ export interface Certificate { */ subjectAlternativeNames?: string[]; - /** - *The timestamp when the certificate was issued.
- */ - issuedAt?: Date; - /** *The validation failure reason, if any, of the certificate.
- * *The following failure reasons are possible:
*The timestamp when the certificate was issued.
+ */ + issuedAt?: Date; + + /** + *An object that describes the status of the certificate renewal managed by + * Lightsail.
+ */ + renewalSummary?: RenewalSummary; + /** *The timestamp when the certificate was created.
*/ @@ -2033,6 +1957,55 @@ export interface Certificate { * certificate. */ keyAlgorithm?: string; + + /** + *The support code. Include this code in your email to support when you have questions about + * your Lightsail certificate. This code enables our support team to look up your Lightsail + * information more easily.
+ */ + supportCode?: string; + + /** + *The Amazon Resource Name (ARN) of the certificate.
+ */ + arn?: string; + + /** + *An array of objects that describe the domain validation records of the certificate.
+ */ + domainValidationRecords?: DomainValidationRecord[]; + + /** + *The name of the certificate (e.g., my-certificate
).
The timestamp when the certificate is first valid.
+ */ + notBefore?: Date; + + /** + *The serial number of the certificate.
+ */ + serialNumber?: string; + + /** + *The renewal eligibility of the certificate.
+ */ + eligibleToRenew?: string; + + /** + *The tag keys and optional values for the resource. For more information about tags in + * Lightsail, see the Lightsail + * Dev Guide.
+ */ + tags?: Tag[]; + + /** + *The timestamp when the certificate expires.
+ */ + notAfter?: Date; } export namespace Certificate { @@ -2046,9 +2019,9 @@ export namespace Certificate { */ export interface CertificateSummary { /** - *An object that describes a certificate in detail.
+ *The name of the certificate.
*/ - certificateDetail?: Certificate; + certificateName?: string; /** *The tag keys and optional values for the resource. For more information about tags in @@ -2058,14 +2031,14 @@ export interface CertificateSummary { tags?: Tag[]; /** - *
The domain name of the certificate.
+ *An object that describes a certificate in detail.
*/ - domainName?: string; + certificateDetail?: Certificate; /** - *The name of the certificate.
+ *The domain name of the certificate.
*/ - certificateName?: string; + domainName?: string; /** *The Amazon Resource Name (ARN) of the certificate.
@@ -2092,7 +2065,7 @@ export enum NetworkProtocol { */ export interface PortInfo { /** - *The first port in a range of open ports on an instance.
+ *The last port in a range of open ports on an instance.
*Allowed ports:
*ICMP - The ICMP type. For example, specify 8
as the fromPort
+ *
ICMP - The ICMP code. For example, specify 8
as the fromPort
* (ICMP type), and -1
as the toPort
(ICMP code), to enable ICMP
* Ping. For more information, see Control Messages on Wikipedia.
The IP protocol name.
- *The name can be one of the following:
+ *The IP address, or range of IP addresses in CIDR notation, that are allowed to connect to + * an instance through the ports, and the protocol. Lightsail supports IPv4 addresses.
+ *Examples:
*
- * tcp
- Transmission Control Protocol (TCP) provides reliable, ordered, and
+ *
To allow the IP address 192.0.2.44
, specify 192.0.2.44
or
+ * 192.0.2.44/32
.
To allow the IP addresses 192.0.2.0
to 192.0.2.255
, specify
+ * 192.0.2.0/24
.
For more information about CIDR block notation, see Classless + * Inter-Domain Routing on Wikipedia.
+ */ + cidrs?: string[]; + + /** + *The IP protocol name.
+ *The name can be one of the following:
+ *
+ * tcp
- Transmission Control Protocol (TCP) provides reliable, ordered, and
* error-checked delivery of streamed data between applications running on hosts
* communicating by an IP network. If you have an application that doesn't require reliable
* data stream service, use UDP instead.
The IP address, or range of IP addresses in CIDR notation, that are allowed to connect to - * an instance through the ports, and the protocol. Lightsail supports IPv4 addresses.
- *Examples:
- *To allow the IP address 192.0.2.44
, specify 192.0.2.44
or
- * 192.0.2.44/32
.
To allow the IP addresses 192.0.2.0
to 192.0.2.255
, specify
- * 192.0.2.0/24
.
For more information about CIDR block notation, see Classless - * Inter-Domain Routing on Wikipedia.
+ *An alias that defines access for a preconfigured range of IP addresses.
+ *The only alias currently supported is lightsail-connect
, which allows IP
+ * addresses of the browser-based RDP/SSH client in the Lightsail console to connect to your
+ * instance.
The last port in a range of open ports on an instance.
+ *The first port in a range of open ports on an instance.
*Allowed ports:
*ICMP - The ICMP code. For example, specify 8
as the fromPort
+ *
ICMP - The ICMP type. For example, specify 8
as the fromPort
* (ICMP type), and -1
as the toPort
(ICMP code), to enable ICMP
* Ping. For more information, see Control Messages on Wikipedia.
An alias that defines access for a preconfigured range of IP addresses.
- *The only alias currently supported is lightsail-connect
, which allows IP
- * addresses of the browser-based RDP/SSH client in the Lightsail console to connect to your
- * instance.
An object to describe the ports to close for the specified instance.
+ *The name of the instance for which to close ports.
*/ - portInfo: PortInfo | undefined; + instanceName: string | undefined; /** - *The name of the instance for which to close ports.
+ *An object to describe the ports to close for the specified instance.
*/ - instanceName: string | undefined; + portInfo: PortInfo | undefined; } export namespace CloseInstancePublicPortsRequest { @@ -2235,14 +2208,14 @@ export namespace CloseInstancePublicPortsResult { */ export interface DestinationInfo { /** - *The ID of the resource created at the destination.
+ *The destination service of the record.
*/ - id?: string; + service?: string; /** - *The destination service of the record.
+ *The ID of the resource created at the destination.
*/ - service?: string; + id?: string; } export namespace DestinationInfo { @@ -2261,9 +2234,9 @@ export enum CloudFormationStackRecordSourceType { */ export interface CloudFormationStackRecordSourceInfo { /** - *The Amazon Resource Name (ARN) of the export snapshot record.
+ *The name of the record.
*/ - arn?: string; + name?: string; /** *The Lightsail resource type (e.g., ExportSnapshotRecord
).
The name of the record.
+ *The Amazon Resource Name (ARN) of the export snapshot record.
*/ - name?: string; + arn?: string; } export namespace CloudFormationStackRecordSourceInfo { @@ -2296,31 +2269,31 @@ export enum RecordState { */ export interface CloudFormationStackRecord { /** - *A list of objects describing the source of the CloudFormation stack record.
+ *The current state of the CloudFormation stack record.
*/ - sourceInfo?: CloudFormationStackRecordSourceInfo[]; + state?: RecordState | string; /** - *The date when the CloudFormation stack record was created.
+ *A list of objects describing the Availability Zone and AWS Region of the CloudFormation + * stack record.
*/ - createdAt?: Date; + location?: ResourceLocation; /** - *A list of objects describing the destination service, which is AWS CloudFormation, and the Amazon - * Resource Name (ARN) of the AWS CloudFormation stack.
+ *The date when the CloudFormation stack record was created.
*/ - destinationInfo?: DestinationInfo; + createdAt?: Date; /** - *A list of objects describing the Availability Zone and AWS Region of the CloudFormation - * stack record.
+ *A list of objects describing the source of the CloudFormation stack record.
*/ - location?: ResourceLocation; + sourceInfo?: CloudFormationStackRecordSourceInfo[]; /** - *The current state of the CloudFormation stack record.
+ *A list of objects describing the destination service, which is AWS CloudFormation, and the Amazon + * Resource Name (ARN) of the AWS CloudFormation stack.
*/ - state?: RecordState | string; + destinationInfo?: DestinationInfo; /** *The Lightsail resource type (e.g., CloudFormationStackRecord
).
The name of the CloudFormation stack record. It starts with
- * CloudFormationStackRecord
followed by a GUID.
The Amazon Resource Name (ARN) of the CloudFormation stack record.
*/ - name?: string; + arn?: string; /** - *The Amazon Resource Name (ARN) of the CloudFormation stack record.
+ *The name of the CloudFormation stack record. It starts with
+ * CloudFormationStackRecord
followed by a GUID.
A contact method is a way to send you notifications. For more information, see Notifications in Amazon Lightsail.
*/ export interface ContactMethod { + /** + *The Lightsail resource type (e.g., ContactMethod
).
The protocol of the contact method, such as email or SMS (text messaging).
+ */ + protocol?: ContactProtocol | string; + + /** + *The destination of the contact method, such as an email address or a mobile phone + * number.
+ */ + contactEndpoint?: string; + /** *Describes the resource location.
*/ location?: ResourceLocation; + /** + *The timestamp when the contact method was created.
+ */ + createdAt?: Date; + + /** + *The name of the contact method.
+ */ + name?: string; + + /** + *The support code. Include this code in your email to support when you have questions about + * your Lightsail contact method. This code enables our support team to look up your + * Lightsail information more easily.
+ */ + supportCode?: string; + + /** + *The Amazon Resource Name (ARN) of the contact method.
+ */ + arn?: string; + /** *The current status of the contact method.
*A contact method has the following possible status:
@@ -2382,437 +2393,606 @@ export interface ContactMethod { *Describes the settings of a container that will be launched, or that is launched, to an + * Amazon Lightsail container service.
+ */ +export interface Container { /** - *The destination of the contact method, such as an email address or a mobile phone - * number.
+ *The launch command for the container.
*/ - contactEndpoint?: string; + command?: string[]; /** - *The timestamp when the contact method was created.
+ *The environment variables of the container.
*/ - createdAt?: Date; + environment?: { [key: string]: string }; /** - *The protocol of the contact method, such as email or SMS (text messaging).
+ *The open firewall ports of the container.
*/ - protocol?: ContactProtocol | string; + ports?: { [key: string]: ContainerServiceProtocol | string }; /** - *The Lightsail resource type (e.g., ContactMethod
).
The name of the image used for the container.
+ * + *Container images sourced from your Lightsail container service, that are registered and
+ * stored on your service, start with a colon (:
). For example,
+ * :container-service-1.mystaticwebsite.1
. Container images sourced from a public
+ * registry like Docker Hub don't start with a colon. For example, nginx:latest
or
+ * nginx
.
Describes a container image that is registered to an Amazon Lightsail container + * service.
+ */ +export interface ContainerImage { /** - *The name of the contact method.
+ *The name of the container image.
*/ - name?: string; + image?: string; /** - *The Amazon Resource Name (ARN) of the contact method.
+ *The timestamp when the container image was created.
*/ - arn?: string; + createdAt?: Date; /** - *The support code. Include this code in your email to support when you have questions about - * your Lightsail contact method. This code enables our support team to look up your - * Lightsail information more easily.
+ *The digest of the container image.
*/ - supportCode?: string; + digest?: string; } -export namespace ContactMethod { - export const filterSensitiveLog = (obj: ContactMethod): any => ({ +export namespace ContainerImage { + export const filterSensitiveLog = (obj: ContainerImage): any => ({ ...obj, }); } -export enum ContactMethodVerificationProtocol { - Email = "Email", -} - -export interface CopySnapshotRequest { +/** + *Describes the health check configuration of an Amazon Lightsail container service.
+ */ +export interface ContainerServiceHealthCheckConfig { /** - *The name of the source manual snapshot to copy.
- *Constraint:
- *Define this parameter only when copying a manual snapshot as another manual - * snapshot.
- *The number of consecutive health checks successes required before moving the container to
+ * the Healthy
state.
A Boolean value to indicate whether to use the latest available automatic snapshot of the - * specified source instance or disk.
- *Constraints:
- *This parameter cannot be defined together with the restore date
- * parameter. The use latest restorable auto snapshot
and restore
- * date
parameters are mutually exclusive.
Define this parameter only when copying an automatic snapshot as a manual snapshot. - * For more information, see the Lightsail Dev Guide.
- *The number of consecutive health check failures required before moving the container to
+ * the Unhealthy
state.
The date of the source automatic snapshot to copy. Use the get auto snapshots
- * operation to identify the dates of the available automatic snapshots.
Constraints:
- *Must be specified in YYYY-MM-DD
format.
This parameter cannot be defined together with the use latest restorable auto
- * snapshot
parameter. The restore date
and use latest restorable
- * auto snapshot
parameters are mutually exclusive.
Define this parameter only when copying an automatic snapshot as a manual snapshot. - * For more information, see the Lightsail Dev Guide.
- *The amount of time, in seconds, during which no response means a failed health check. You + * may specify between 2 and 60 seconds.
*/ - restoreDate?: string; + timeoutSeconds?: number; /** - *The AWS Region where the source manual or automatic snapshot is located.
+ *The HTTP codes to use when checking for a successful response from a container. You can + * specify values between 200 and 499.
*/ - sourceRegion: RegionName | string | undefined; + successCodes?: string; /** - *The name of the new manual snapshot to be created as a copy.
+ *The path on the container on which to perform the health check.
*/ - targetSnapshotName: string | undefined; + path?: string; /** - *The name of the source instance or disk from which the source automatic snapshot was - * created.
- *Constraint:
- *Define this parameter only when copying an automatic snapshot as a manual snapshot. - * For more information, see the Lightsail Dev Guide.
- *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.
+ *The approximate interval, in seconds, between health checks of an individual container. + * You may specify between 5 and 300 seconds.
*/ - operations?: Operation[]; + intervalSeconds?: number; } -export namespace CopySnapshotResult { - export const filterSensitiveLog = (obj: CopySnapshotResult): any => ({ +export namespace ContainerServiceHealthCheckConfig { + export const filterSensitiveLog = (obj: ContainerServiceHealthCheckConfig): any => ({ ...obj, }); } -export interface CreateCertificateRequest { - /** - *The domain name (e.g., example.com
) for the certificate.
An array of strings that specify the alternate domains (e.g., example2.com
)
- * and subdomains (e.g., blog.example.com
) for the certificate.
You can specify a maximum of nine alternate domains (in addition to the primary domain - * name).
- * - *Wildcard domain entries (e.g., *.example.com
) are not supported.
The name for the certificate.
- */ - certificateName: string | undefined; - +/** + *Describes the public endpoint configuration of a deployment of an Amazon Lightsail + * container service.
+ */ +export interface ContainerServiceEndpoint { /** - *The tag keys and optional values to add to the certificate during create.
- * - *Use the TagResource
action to tag a resource after it's created.
An object that describes the health check configuration of the container.
*/ - tags?: Tag[]; -} + healthCheck?: ContainerServiceHealthCheckConfig; -export namespace CreateCertificateRequest { - export const filterSensitiveLog = (obj: CreateCertificateRequest): any => ({ - ...obj, - }); -} - -export interface CreateCertificateResult { /** - *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.
+ *The name of the container entry of the deployment that the endpoint configuration applies + * to.
*/ - operations?: Operation[]; + containerName?: string; /** - *An object that describes the certificate created.
+ *The port of the specified container to which traffic is forwarded to.
*/ - certificate?: CertificateSummary; + containerPort?: number; } -export namespace CreateCertificateResult { - export const filterSensitiveLog = (obj: CreateCertificateResult): any => ({ +export namespace ContainerServiceEndpoint { + export const filterSensitiveLog = (obj: ContainerServiceEndpoint): any => ({ ...obj, }); } -export enum PortInfoSourceType { - Closed = "CLOSED", - Default = "DEFAULT", - Instance = "INSTANCE", - None = "NONE", +export enum ContainerServiceDeploymentState { + ACTIVATING = "ACTIVATING", + ACTIVE = "ACTIVE", + FAILED = "FAILED", + INACTIVE = "INACTIVE", } /** - *Describes the Amazon Elastic Compute Cloud instance and related resources to be created using the
- * create cloud formation stack
operation.
Describes a container deployment configuration of an Amazon Lightsail container + * service.
+ * + *A deployment specifies the settings, such as the ports and launch command, of containers + * that are deployed to your container service.
*/ -export interface InstanceEntry { - /** - *The Availability Zone for the new Amazon EC2 instance.
- */ - availabilityZone: string | undefined; - - /** - *The name of the export snapshot record, which contains the exported Lightsail instance - * snapshot that will be used as the source of the new Amazon EC2 instance.
- *Use the get export snapshot records
operation to get a list of export
- * snapshot records that you can use to create a CloudFormation stack.
The instance type (e.g., t2.micro
) to use for the new Amazon EC2 instance.
The port configuration to use for the new Amazon EC2 instance.
- *The following configuration options are available:
+ *The state of the deployment.
+ * + *A deployment can be in one of the following states:
*
- * DEFAULT
- Use the default firewall settings from the Lightsail instance
- * blueprint.
Activating
- The deployment is being created.
*
- * INSTANCE
- Use the configured firewall settings from the source
- * Lightsail instance.
Active
- The deployment was successfully created, and it's currently
+ * running on the container service. The container service can have only one deployment in an
+ * active state at a time.
*
- * NONE
- Use the default Amazon EC2 security group.
Inactive
- The deployment was previously successfully created, but it is
+ * not currently running on the container service.
*
- * CLOSED
- All ports closed.
Failed
- The deployment failed. Use the GetContainerLog
+ * action to view the log events for the containers in the deployment to try to determine the
+ * reason for the failure.
* If you configured lightsail-connect
as a cidrListAliases
on
- * your instance, or if you chose to allow the Lightsail browser-based SSH or RDP clients to
- * connect to your instance, that configuration is not carried over to your new Amazon EC2
- * instance.
A launch script you can create that configures a server with additional user data. For
- * example, you might want to run 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
.
An object that describes the configuration for the containers of the deployment.
*/ - userData?: string; -} + containers?: { [key: string]: Container }; -export namespace InstanceEntry { - export const filterSensitiveLog = (obj: InstanceEntry): any => ({ - ...obj, - }); -} + /** + *The version number of the deployment.
+ */ + version?: number; -export interface CreateCloudFormationStackRequest { /** - *An array of parameters that will be used to create the new Amazon EC2 instance. You can only - * pass one instance entry at a time in this array. You will get an invalid parameter error if - * you pass more than one instance entry in this array.
+ *An object that describes the endpoint of the deployment.
*/ - instances: InstanceEntry[] | undefined; + publicEndpoint?: ContainerServiceEndpoint; + + /** + *The timestamp when the deployment was created.
+ */ + createdAt?: Date; } -export namespace CreateCloudFormationStackRequest { - export const filterSensitiveLog = (obj: CreateCloudFormationStackRequest): any => ({ +export namespace ContainerServiceDeployment { + export const filterSensitiveLog = (obj: ContainerServiceDeployment): any => ({ ...obj, }); } -export interface CreateCloudFormationStackResult { - /** - *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.
- */ - operations?: Operation[]; +export enum ContainerServicePowerName { + large = "large", + medium = "medium", + micro = "micro", + nano = "nano", + small = "small", + xlarge = "xlarge", } -export namespace CreateCloudFormationStackResult { - export const filterSensitiveLog = (obj: CreateCloudFormationStackResult): any => ({ - ...obj, - }); +export enum ContainerServiceState { + DELETING = "DELETING", + DISABLED = "DISABLED", + PENDING = "PENDING", + READY = "READY", + RUNNING = "RUNNING", + UPDATING = "UPDATING", } -export interface CreateContactMethodRequest { +/** + *Describes an Amazon Lightsail container service.
+ */ +export interface ContainerService { /** - *The protocol of the contact method, such as Email
or SMS
(text
- * messaging).
The SMS
protocol is supported only in the following AWS Regions.
A Boolean value indicating whether the container service is disabled.
+ */ + isDisabled?: boolean; + + /** + *The scale specification of the container service.
+ * + *The scale specifies the allocated compute nodes of the container service.
+ */ + scale?: number; + + /** + *The current state of the container service.
+ *The state can be:
*US East (N. Virginia) (us-east-1
)
+ * Pending
- The container service is being created.
US West (Oregon) (us-west-2
)
+ * Ready
- The container service is created but does not have a container
+ * deployment.
Europe (Ireland) (eu-west-1
)
+ * Disabled
- The container service is disabled.
Asia Pacific (Tokyo) (ap-northeast-1
)
+ * Updating
- The container service capacity or other setting is being
+ * updated.
Asia Pacific (Singapore) (ap-southeast-1
)
+ * Deploying
- The container service is launching a container
+ * deployment.
Asia Pacific (Sydney) (ap-southeast-2
)
+ * Running
- The container service is created and it has a container
+ * deployment.
For a list of countries/regions where SMS text messages can be sent, and the latest AWS - * Regions where SMS text messaging is supported, see Supported Regions and Countries in the Amazon SNS Developer - * Guide.
- *For more information about notifications in Amazon Lightsail, see Notifications in Amazon Lightsail.
*/ - protocol: ContactProtocol | string | undefined; + state?: ContainerServiceState | string; /** - *The destination of the contact method, such as an email address or a mobile phone - * number.
- *Use the E.164 format when specifying a mobile phone number. E.164 is a standard for the - * phone number structure used for international telecommunication. Phone numbers that follow - * this format can have a maximum of 15 digits, and they are prefixed with the plus character (+) - * and the country code. For example, a U.S. phone number in E.164 format would be specified as - * +1XXX5550100. For more information, see E.164 on Wikipedia.
+ *An object that describes the next deployment of the container service.
+ * + *This value is null
when there is no deployment in a pending
+ * state.
The power specification of the container service.
+ * + *The power specifies the amount of RAM, the number of vCPUs, and the base price of the + * container service.
+ */ + power?: ContainerServicePowerName | string; -export interface CreateContactMethodResult { /** - *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.
+ *The private domain name of the container service.
+ * + *The private domain name is accessible only by other resources within the default virtual + * private cloud (VPC) of your Lightsail account.
*/ - operations?: Operation[]; -} + privateDomainName?: string; -export namespace CreateContactMethodResult { - export const filterSensitiveLog = (obj: CreateContactMethodResult): any => ({ - ...obj, - }); -} + /** + *An object that describes the location of the container service, such as the AWS Region + * and Availability Zone.
+ */ + location?: ResourceLocation; -export interface CreateDiskRequest { /** - *The unique Lightsail disk name (e.g., my-disk
).
The principal ARN of the container service.
+ * + *The principal ARN can be used to create a trust relationship between your standard AWS + * account and your Lightsail container service. This allows you to give your service + * permission to access resources in your standard AWS account.
*/ - diskName: string | undefined; + principalArn?: string; /** - *An array of objects that represent the add-ons to enable for the new disk.
+ *The name of the container service.
*/ - addOns?: AddOnRequest[]; + containerServiceName?: string; /** - *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.
The publicly accessible URL of the container service.
+ * + *If no public endpoint is specified in the currentDeployment
, this URL returns
+ * a 404 response.
The tag keys and optional values for the resource. For more information about tags in + * Lightsail, see the Lightsail + * Dev Guide.
*/ tags?: Tag[]; /** - *The Availability Zone where you want to create the disk (e.g., us-east-2a
).
- * Use the same Availability Zone as the Lightsail instance to which you want to attach the
- * disk.
Use the get regions
operation to list the Availability Zones where
- * Lightsail is currently available.
An object that describes the current container deployment of the container service.
*/ - availabilityZone: string | undefined; + currentDeployment?: ContainerServiceDeployment; /** - *The size of the disk in GB (e.g., 32
).
The timestamp when the container service was created.
*/ - sizeInGb: number | undefined; -} + createdAt?: Date; -export namespace CreateDiskRequest { - export const filterSensitiveLog = (obj: CreateDiskRequest): any => ({ - ...obj, - }); -} + /** + *The ID of the power of the container service.
+ */ + powerId?: string; -export interface CreateDiskResult { /** - *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.
+ *The public domain name of the container service, such as example.com
and
+ * www.example.com
.
You can specify up to four public domain names for a container service. The domain names + * that you specify are used when you create a deployment with a container configured as the + * public endpoint of your container service.
+ * + *If you don't specify public domain names, then you can use the default domain of the + * container service.
+ * + *You must create and validate an SSL/TLS certificate before you can use public domain
+ * names with your container service. Use the CreateCertificate
action to create a
+ * certificate for the public domain names you want to use with your container service.
See CreateContainerService
or UpdateContainerService
for
+ * information about how to specify public domain names for your Lightsail container
+ * service.
The Amazon Resource Name (ARN) of the container service.
+ */ + arn?: string; + + /** + *The Lightsail resource type of the container service (i.e.,
+ * ContainerService
).
The date of the automatic snapshot to use for the new disk. Use the get auto
- * snapshots
operation to identify the dates of the available automatic
- * snapshots.
Describes the settings of a public endpoint for an Amazon Lightsail container + * service.
+ */ +export interface EndpointRequest { + /** + *The name of the container for the endpoint.
+ */ + containerName: string | undefined; + + /** + *The port of the container to which traffic is forwarded to.
+ */ + containerPort: number | undefined; + + /** + *An object that describes the health check configuration of the container.
+ */ + healthCheck?: ContainerServiceHealthCheckConfig; +} + +export namespace EndpointRequest { + export const filterSensitiveLog = (obj: EndpointRequest): any => ({ + ...obj, + }); +} + +/** + *Describes a container deployment configuration of an Amazon Lightsail container + * service.
+ * + *A deployment specifies the settings, such as the ports and launch command, of containers + * that are deployed to your container service.
+ */ +export interface ContainerServiceDeploymentRequest { + /** + *An object that describes the endpoint of the deployment.
+ */ + publicEndpoint?: EndpointRequest; + + /** + *An object that describes the configuration for the containers of the deployment.
+ */ + containers?: { [key: string]: Container }; +} + +export namespace ContainerServiceDeploymentRequest { + export const filterSensitiveLog = (obj: ContainerServiceDeploymentRequest): any => ({ + ...obj, + }); +} + +/** + *Describes the log events of a container of an Amazon Lightsail container service.
+ */ +export interface ContainerServiceLogEvent { + /** + *The timestamp when the container service log event was created.
+ */ + createdAt?: Date; + + /** + *The message of the container service log event.
+ */ + message?: string; +} + +export namespace ContainerServiceLogEvent { + export const filterSensitiveLog = (obj: ContainerServiceLogEvent): any => ({ + ...obj, + }); +} + +export enum ContainerServiceMetricName { + CPUUtilization = "CPUUtilization", + MemoryUtilization = "MemoryUtilization", +} + +/** + *Describes the powers that can be specified for an Amazon Lightsail container + * service.
+ * + *The power specifies the amount of RAM, the number of vCPUs, and the base price of the + * container service.
+ */ +export interface ContainerServicePower { + /** + *The monthly price of the power in USD.
+ */ + price?: number; + + /** + *A Boolean value indicating whether the power is active and can be specified for container + * services.
+ */ + isActive?: boolean; + + /** + *The friendly name of the power (e.g., nano
).
The amount of RAM (in GB) of the power.
+ */ + ramSizeInGb?: number; + + /** + *The ID of the power (e.g., nano-1
).
The number of vCPUs included in the power.
+ */ + cpuCount?: number; +} + +export namespace ContainerServicePower { + export const filterSensitiveLog = (obj: ContainerServicePower): any => ({ + ...obj, + }); +} + +/** + *Describes the login information for the container image registry of an Amazon Lightsail + * account.
+ */ +export interface ContainerServiceRegistryLogin { + /** + *The timestamp of when the container image registry username and password expire.
+ * + *The log in credentials expire 12 hours after they are created, at which point you will
+ * need to create a new set of log in credentials using the
+ * CreateContainerServiceRegistryLogin
action.
The container service registry username to use to push container images to the container + * image registry of a Lightsail account.
+ */ + username?: string; + + /** + *The container service registry password to use to push container images to the container + * image registry of a Lightsail account
+ */ + password?: string; + + /** + *The address to use to push container images to the container image registry of a + * Lightsail account.
+ */ + registry?: string; +} + +export namespace ContainerServiceRegistryLogin { + export const filterSensitiveLog = (obj: ContainerServiceRegistryLogin): any => ({ + ...obj, + }); +} + +export interface ContainerServicesListResult { + /** + *An array of objects that describe one or more container services.
+ */ + containerServices?: ContainerService[]; +} + +export namespace ContainerServicesListResult { + export const filterSensitiveLog = (obj: ContainerServicesListResult): any => ({ + ...obj, + }); +} + +export interface CopySnapshotRequest { + /** + *The name of the new manual snapshot to be created as a copy.
+ */ + targetSnapshotName: string | undefined; + + /** + *The date of the source automatic snapshot to copy. Use the get auto snapshots
+ * operation to identify the dates of the available automatic snapshots.
Constraints:
*Define this parameter only when creating a new disk from an automatic snapshot. For - * more information, see the Lightsail Dev Guide.
+ *Define this parameter only when copying an automatic snapshot as a manual snapshot. + * For more information, see the Lightsail Dev Guide.
*The size of the disk in GB (e.g., 32
).
The name of the source disk from which the source automatic snapshot was created.
- *Constraints:
- *This parameter cannot be defined together with the disk snapshot name
- * parameter. The source disk name
and disk snapshot name
- * parameters are mutually exclusive.
Define this parameter only when creating a new disk from an automatic snapshot. For - * more information, see the Lightsail Dev Guide.
- *The unique Lightsail disk name (e.g., my-disk
).
A Boolean value to indicate whether to use the latest available automatic snapshot.
+ *A Boolean value to indicate whether to use the latest available automatic snapshot of the + * specified source instance or disk.
*Constraints:
*Define this parameter only when creating a new disk from an automatic snapshot. For - * more information, see the Lightsail Dev Guide.
+ *Define this parameter only when copying an automatic snapshot as a manual snapshot. + * For more information, see the Lightsail Dev Guide.
*The Availability Zone where you want to create the disk (e.g., us-east-2a
).
- * Choose the same Availability Zone as the Lightsail instance where you want to create the
- * disk.
Use the GetRegions operation to list the Availability Zones where Lightsail is currently - * available.
- */ - availabilityZone: string | undefined; - - /** - *An array of objects that represent the add-ons to enable for the new disk.
+ *The name of the source manual snapshot to copy.
+ *Constraint:
+ *Define this parameter only when copying a manual snapshot as another manual + * snapshot.
+ *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.
The AWS Region where the source manual or automatic snapshot is located.
*/ - tags?: Tag[]; + sourceRegion: RegionName | string | undefined; /** - *The name of the disk snapshot (e.g., my-snapshot
) from which to create the
- * new storage disk.
The name of the source instance or disk from which the source automatic snapshot was + * created.
*Constraint:
*This parameter cannot be defined together with the source disk name
- * parameter. The disk snapshot name
and source disk name
- * parameters are mutually exclusive.
Define this parameter only when copying an automatic snapshot as a manual snapshot. + * For more information, see the Lightsail Dev Guide.
*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.
@@ -2924,338 +3074,590 @@ export interface CreateDiskFromSnapshotResult { operations?: Operation[]; } -export namespace CreateDiskFromSnapshotResult { - export const filterSensitiveLog = (obj: CreateDiskFromSnapshotResult): any => ({ +export namespace CopySnapshotResult { + export const filterSensitiveLog = (obj: CopySnapshotResult): any => ({ ...obj, }); } -export interface CreateDiskSnapshotRequest { +export interface CreateCertificateRequest { /** - *The name of the destination disk snapshot (e.g., my-disk-snapshot
) based on
- * the source disk.
An array of strings that specify the alternate domains (e.g., example2.com
)
+ * and subdomains (e.g., blog.example.com
) for the certificate.
You can specify a maximum of nine alternate domains (in addition to the primary domain + * name).
+ *Wildcard domain entries (e.g., *.example.com
) are not supported.
The unique name of the source instance (e.g., Amazon_Linux-512MB-Virginia-1
).
- * When this is defined, a snapshot of the instance's system volume is created.
This parameter cannot be defined together with the disk name
parameter. The
- * instance name
and disk name
parameters are mutually
- * exclusive.
The domain name (e.g., example.com
) for the certificate.
The tag keys and optional values to add to the resource during create.
+ *The tag keys and optional values to add to the certificate during create.
*Use the TagResource
action to tag a resource after it's created.
The unique name of the source disk (e.g., Disk-Virginia-1
).
This parameter cannot be defined together with the instance name
parameter.
- * The disk name
and instance name
parameters are mutually
- * exclusive.
The name for the certificate.
*/ - diskName?: string; + certificateName: string | undefined; } -export namespace CreateDiskSnapshotRequest { - export const filterSensitiveLog = (obj: CreateDiskSnapshotRequest): any => ({ +export namespace CreateCertificateRequest { + export const filterSensitiveLog = (obj: CreateCertificateRequest): any => ({ ...obj, }); } -export interface CreateDiskSnapshotResult { +export interface CreateCertificateResult { /** *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.
*/ operations?: Operation[]; + + /** + *An object that describes the certificate created.
+ */ + certificate?: CertificateSummary; } -export namespace CreateDiskSnapshotResult { - export const filterSensitiveLog = (obj: CreateDiskSnapshotResult): any => ({ +export namespace CreateCertificateResult { + export const filterSensitiveLog = (obj: CreateCertificateResult): any => ({ ...obj, }); } -export enum OriginProtocolPolicyEnum { - HTTPOnly = "http-only", - HTTPSOnly = "https-only", +export enum PortInfoSourceType { + Closed = "CLOSED", + Default = "DEFAULT", + Instance = "INSTANCE", + None = "NONE", } /** - *Describes the origin resource of an Amazon Lightsail content delivery network (CDN) - * distribution.
- * - *An origin can be a Lightsail instance or load balancer. A distribution pulls content - * from an origin, caches it, and serves it to viewers via a worldwide network of edge - * servers.
+ *Describes the Amazon Elastic Compute Cloud instance and related resources to be created using the
+ * create cloud formation stack
operation.
The protocol that your Amazon Lightsail distribution uses when establishing a connection - * with your origin to pull content.
+ *The port configuration to use for the new Amazon EC2 instance.
+ *The following configuration options are available:
+ *
+ * DEFAULT
- Use the default firewall settings from the Lightsail instance
+ * blueprint.
+ * INSTANCE
- Use the configured firewall settings from the source
+ * Lightsail instance.
+ * NONE
- Use the default Amazon EC2 security group.
+ * CLOSED
- All ports closed.
If you configured lightsail-connect
as a cidrListAliases
on
+ * your instance, or if you chose to allow the Lightsail browser-based SSH or RDP clients to
+ * connect to your instance, that configuration is not carried over to your new Amazon EC2
+ * instance.
The name of the origin resource.
+ *The Availability Zone for the new Amazon EC2 instance.
*/ - name?: string; + availabilityZone: string | undefined; /** - *The AWS Region name of the origin resource.
+ *The name of the export snapshot record, which contains the exported Lightsail instance + * snapshot that will be used as the source of the new Amazon EC2 instance.
+ *Use the get export snapshot records
operation to get a list of export
+ * snapshot records that you can use to create a CloudFormation stack.
A launch script you can create that configures a server with additional user data. For
+ * example, you might want to run 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
.
The instance type (e.g., t2.micro
) to use for the new Amazon EC2 instance.
An object that describes the cache behavior settings for the distribution.
+ *An array of parameters that will be used to create the new Amazon EC2 instance. You can only + * pass one instance entry at a time in this array. You will get an invalid parameter error if + * you pass more than one instance entry in this array.
*/ - cacheBehaviorSettings?: CacheSettings; + instances: InstanceEntry[] | undefined; +} + +export namespace CreateCloudFormationStackRequest { + export const filterSensitiveLog = (obj: CreateCloudFormationStackRequest): any => ({ + ...obj, + }); +} +export interface CreateCloudFormationStackResult { /** - *The bundle ID to use for the distribution.
- * - *A distribution bundle describes the specifications of your distribution, such as the - * monthly cost and monthly network transfer quota.
- * - *Use the GetDistributionBundles
action to get a list of distribution bundle
- * IDs that you can specify.
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.
*/ - bundleId: string | undefined; + operations?: Operation[]; +} + +export namespace CreateCloudFormationStackResult { + export const filterSensitiveLog = (obj: CreateCloudFormationStackResult): any => ({ + ...obj, + }); +} +export interface CreateContactMethodRequest { /** - *An object that describes the default cache behavior for the distribution.
+ *The destination of the contact method, such as an email address or a mobile phone + * number.
+ *Use the E.164 format when specifying a mobile phone number. E.164 is a standard for the + * phone number structure used for international telecommunication. Phone numbers that follow + * this format can have a maximum of 15 digits, and they are prefixed with the plus character (+) + * and the country code. For example, a U.S. phone number in E.164 format would be specified as + * +1XXX5550100. For more information, see E.164 on Wikipedia.
*/ - defaultCacheBehavior: CacheBehavior | undefined; + contactEndpoint: string | undefined; /** - *The name for the distribution.
+ *The protocol of the contact method, such as Email
or SMS
(text
+ * messaging).
The SMS
protocol is supported only in the following AWS Regions.
US East (N. Virginia) (us-east-1
)
US West (Oregon) (us-west-2
)
Europe (Ireland) (eu-west-1
)
Asia Pacific (Tokyo) (ap-northeast-1
)
Asia Pacific (Singapore) (ap-southeast-1
)
Asia Pacific (Sydney) (ap-southeast-2
)
For a list of countries/regions where SMS text messages can be sent, and the latest AWS + * Regions where SMS text messaging is supported, see Supported Regions and Countries in the Amazon SNS Developer + * Guide.
+ *For more information about notifications in Amazon Lightsail, see Notifications in Amazon Lightsail.
*/ - distributionName: string | undefined; + protocol: ContactProtocol | string | undefined; +} + +export namespace CreateContactMethodRequest { + export const filterSensitiveLog = (obj: CreateContactMethodRequest): any => ({ + ...obj, + }); +} +export interface CreateContactMethodResult { /** - *An array of objects that describe the per-path cache behavior for the distribution.
+ *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.
*/ - cacheBehaviors?: CacheBehaviorPerPath[]; + operations?: Operation[]; +} + +export namespace CreateContactMethodResult { + export const filterSensitiveLog = (obj: CreateContactMethodResult): any => ({ + ...obj, + }); +} +export interface CreateContainerServiceRequest { /** - *An object that describes the origin resource for the distribution, such as a Lightsail - * instance or load balancer.
+ *The power specification for the container service.
* - *The distribution pulls, caches, and serves content from the origin.
+ *The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the
+ * container service. The power
and scale
of a container service makes
+ * up its configured capacity. To determine the monthly price of your container service, multiply
+ * the base price of the power
with the scale
(the number of nodes) of
+ * the service.
Use the GetContainerServicePowers
action to get a list of power options that
+ * you can specify using this parameter, and their base monthly cost.
The tag keys and optional values to add to the distribution during create.
+ *The scale specification for the container service.
* - *Use the TagResource
action to tag a resource after it's created.
The scale specifies the allocated compute nodes of the container service. The
+ * power
and scale
of a container service makes up its configured
+ * capacity. To determine the monthly price of your container service, multiply the base price of
+ * the power
with the scale
(the number of nodes) of the
+ * service.
Describes the origin resource of an Amazon Lightsail content delivery network (CDN) - * distribution.
- * - *An origin can be a Lightsail instance or load balancer. A distribution pulls content - * from an origin, caches it, and serves it to viewers via a worldwide network of edge - * servers.
- */ -export interface Origin { /** - *The protocol that your Amazon Lightsail distribution uses when establishing a connection - * with your origin to pull content.
+ *The tag keys and optional values for the container service.
+ * + *For more information about tags in Lightsail, see the Lightsail + * Dev Guide.
*/ - protocolPolicy?: OriginProtocolPolicyEnum | string; + tags?: Tag[]; /** - *The AWS Region name of the origin resource.
+ *The public domain names to use with the container service, such as
+ * example.com
and www.example.com
.
You can specify up to four public domain names for a container service. The domain names + * that you specify are used when you create a deployment with a container configured as the + * public endpoint of your container service.
+ * + *If you don't specify public domain names, then you can use the default domain of the + * container service.
+ * + *You must create and validate an SSL/TLS certificate before you can use public domain
+ * names with your container service. Use the CreateCertificate
action to create a
+ * certificate for the public domain names you want to use with your container service.
You can specify public domain names using a string to array map as shown in the example + * later on this page.
*/ - regionName?: RegionName | string; + publicDomainNames?: { [key: string]: string[] }; /** - *The name of the origin resource.
+ *An object that describes a deployment for the container service.
+ * + *A deployment specifies the containers that will be launched on the container service and + * their settings, such as the ports to open, the environment variables to apply, and the launch + * command to run. It also specifies the container that will serve as the public endpoint of the + * deployment and its settings, such as the HTTP or HTTPS port to use, and the health check + * configuration.
*/ - name?: string; + deployment?: ContainerServiceDeploymentRequest; /** - *The resource type of the origin resource (e.g., Instance).
+ *The name for the container service.
+ * + *The name that you specify for your container service will make up part of its default
+ * domain. The default domain of a container service is typically
+ * https://
.
+ * If the name of your container service is container-service-1
, and it's located in
+ * the US East (Ohio) AWS region (us-east-2
), then the domain for your container
+ * service will be like the following example:
+ * https://container-service-1.ur4EXAMPLE2uq.us-east-2.cs.amazonlightsail.com
+ *
The following are the requirements for container service names:
+ * + *Must be unique within each AWS Region in your Lightsail account.
+ *Must contain 1 to 63 characters.
+ *Must contain only alphanumeric characters and hyphens.
+ *A hyphen (-) can separate words but cannot be at the start or end of the name.
+ *Describes an Amazon Lightsail content delivery network (CDN) distribution.
- */ -export interface LightsailDistribution { +export interface CreateContainerServiceResult { /** - *The public DNS of the origin.
+ *An object that describes a container service.
*/ - originPublicDNS?: string; + containerService?: ContainerService; +} + +export namespace CreateContainerServiceResult { + export const filterSensitiveLog = (obj: CreateContainerServiceResult): any => ({ + ...obj, + }); +} +export interface CreateContainerServiceDeploymentRequest { /** - *The timestamp when the distribution was created.
+ *An object that describes the settings of the public endpoint for the container + * service.
*/ - createdAt?: Date; + publicEndpoint?: EndpointRequest; /** - *The alternate domain names of the distribution.
+ *The name of the container service for which to create the deployment.
*/ - alternativeDomainNames?: string[]; + serviceName: string | undefined; /** - *Indicates whether the distribution is enabled.
+ *An object that describes the settings of the containers that will be launched on the + * container service.
*/ - isEnabled?: boolean; + containers?: { [key: string]: Container }; +} +export namespace CreateContainerServiceDeploymentRequest { + export const filterSensitiveLog = (obj: CreateContainerServiceDeploymentRequest): any => ({ + ...obj, + }); +} + +export interface CreateContainerServiceDeploymentResult { /** - *The domain name of the distribution.
+ *An object that describes a container service.
*/ - domainName?: string; + containerService?: ContainerService; +} - /** - *Indicates whether the bundle that is currently applied to your distribution, specified
- * using the distributionName
parameter, can be changed to another bundle.
Use the UpdateDistributionBundle
action to change your distribution's
- * bundle.
An object that describes the log in information for the container service registry of your + * Lightsail account.
*/ - ableToUpdateBundle?: boolean; + registryLogin?: ContainerServiceRegistryLogin; +} + +export namespace CreateContainerServiceRegistryLoginResult { + export const filterSensitiveLog = (obj: CreateContainerServiceRegistryLoginResult): any => ({ + ...obj, + }); +} +export interface CreateDiskRequest { /** - *The ID of the bundle currently applied to the distribution.
+ *The size of the disk in GB (e.g., 32
).
The name of the SSL/TLS certificate attached to the distribution, if any.
+ *The Availability Zone where you want to create the disk (e.g., us-east-2a
).
+ * Use the same Availability Zone as the Lightsail instance to which you want to attach the
+ * disk.
Use the get regions
operation to list the Availability Zones where
+ * Lightsail is currently available.
The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
+ *The unique Lightsail disk name (e.g., my-disk
).
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.
An object that describes the default cache behavior of the distribution.
+ *An array of objects that represent the add-ons to enable for the new disk.
*/ - defaultCacheBehavior?: CacheBehavior; + addOns?: AddOnRequest[]; +} + +export namespace CreateDiskRequest { + export const filterSensitiveLog = (obj: CreateDiskRequest): any => ({ + ...obj, + }); +} +export interface CreateDiskResult { /** - *An object that describes the origin resource of the distribution, such as a Lightsail - * instance or load balancer.
- * - *The distribution pulls, caches, and serves content from the origin.
+ *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.
*/ - origin?: Origin; + operations?: Operation[]; +} + +export namespace CreateDiskResult { + export const filterSensitiveLog = (obj: CreateDiskResult): any => ({ + ...obj, + }); +} +export interface CreateDiskFromSnapshotRequest { /** - *An object that describes the location of the distribution, such as the AWS Region and - * Availability Zone.
- *Lightsail distributions are global resources that can reference an origin in any AWS
- * Region, and distribute its content globally. However, all distributions are located in the
- * us-east-1
Region.
A Boolean value to indicate whether to use the latest available automatic snapshot.
+ *Constraints:
+ *This parameter cannot be defined together with the restore date
+ * parameter. The use latest restorable auto snapshot
and restore
+ * date
parameters are mutually exclusive.
Define this parameter only when creating a new disk from an automatic snapshot. For + * more information, see the Lightsail Dev Guide.
+ *An array of objects that describe the per-path cache behavior of the distribution.
+ *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.
The name of the distribution.
+ *The unique Lightsail disk name (e.g., my-disk
).
An object that describes the cache behavior settings of the distribution.
+ *The name of the source disk from which the source automatic snapshot was created.
+ *Constraints:
+ *This parameter cannot be defined together with the disk snapshot name
+ * parameter. The source disk name
and disk snapshot name
+ * parameters are mutually exclusive.
Define this parameter only when creating a new disk from an automatic snapshot. For + * more information, see the Lightsail Dev Guide.
+ *The support code. Include this code in your email to support when you have questions about - * your Lightsail distribution. This code enables our support team to look up your Lightsail - * information more easily.
+ *The size of the disk in GB (e.g., 32
).
The status of the distribution.
+ *The date of the automatic snapshot to use for the new disk. Use the get auto
+ * snapshots
operation to identify the dates of the available automatic
+ * snapshots.
Constraints:
+ *Must be specified in YYYY-MM-DD
format.
This parameter cannot be defined together with the use latest restorable auto
+ * snapshot
parameter. The restore date
and use latest restorable
+ * auto snapshot
parameters are mutually exclusive.
Define this parameter only when creating a new disk from an automatic snapshot. For + * more information, see the Lightsail Dev Guide.
+ *The Amazon Resource Name (ARN) of the distribution.
+ *An array of objects that represent the add-ons to enable for the new disk.
*/ - arn?: string; + addOns?: AddOnRequest[]; /** - *The Lightsail resource type (e.g., Distribution
).
The Availability Zone where you want to create the disk (e.g., us-east-2a
).
+ * Choose the same Availability Zone as the Lightsail instance where you want to create the
+ * disk.
Use the GetRegions operation to list the Availability Zones where Lightsail is currently + * available.
*/ - resourceType?: ResourceType | string; + availabilityZone: string | undefined; + + /** + *The name of the disk snapshot (e.g., my-snapshot
) from which to create the
+ * new storage disk.
Constraint:
+ *This parameter cannot be defined together with the source disk name
+ * parameter. The disk snapshot name
and source disk name
+ * parameters are mutually exclusive.
An object that describes the distribution created.
- */ - distribution?: LightsailDistribution; - +export interface CreateDiskFromSnapshotResult { /** *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.
*/ - operation?: Operation; + operations?: Operation[]; } -export namespace CreateDistributionResult { - export const filterSensitiveLog = (obj: CreateDistributionResult): any => ({ +export namespace CreateDiskFromSnapshotResult { + export const filterSensitiveLog = (obj: CreateDiskFromSnapshotResult): any => ({ ...obj, }); } -export interface CreateDomainRequest { +export interface CreateDiskSnapshotRequest { /** *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.
The domain name to manage (e.g., example.com
).
The unique name of the source disk (e.g., Disk-Virginia-1
).
You cannot register a new domain name using Lightsail. You must register a domain name - * using Amazon Route 53 or another domain name registrar. If you have already registered your - * domain, you can enter its name in this parameter to manage the DNS records for that - * domain.
+ *This parameter cannot be defined together with the instance name
parameter.
+ * The disk name
and instance name
parameters are mutually
+ * exclusive.
The name of the destination disk snapshot (e.g., my-disk-snapshot
) based on
+ * the source disk.
The unique name of the source instance (e.g., Amazon_Linux-512MB-Virginia-1
).
+ * When this is defined, a snapshot of the instance's system volume is created.
This parameter cannot be defined together with the disk name
parameter. The
+ * instance name
and disk name
parameters are mutually
+ * exclusive.
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.
*/ - operation?: Operation; + operations?: Operation[]; } -export namespace CreateDomainResult { - export const filterSensitiveLog = (obj: CreateDomainResult): any => ({ +export namespace CreateDiskSnapshotResult { + export const filterSensitiveLog = (obj: CreateDiskSnapshotResult): any => ({ ...obj, }); } +export enum OriginProtocolPolicyEnum { + HTTPOnly = "http-only", + HTTPSOnly = "https-only", +} + /** - *Describes a domain recordset entry.
+ *Describes the origin resource of an Amazon Lightsail content delivery network (CDN) + * distribution.
+ *An origin can be a Lightsail instance or load balancer. A distribution pulls content + * from an origin, caches it, and serves it to viewers via a worldwide network of edge + * servers.
*/ -export interface DomainEntry { +export interface InputOrigin { /** - *The name of the domain.
+ *The AWS Region name of the origin resource.
*/ - name?: string; + regionName?: RegionName | string; /** - *(Deprecated) The options for the domain entry.
- *In releases prior to November 29, 2017, this parameter was not included in the API - * response. It is now deprecated.
- *The name of the origin resource.
*/ - options?: { [key: string]: string }; + name?: string; /** - *The ID of the domain recordset entry.
+ *The protocol that your Amazon Lightsail distribution uses when establishing a connection + * with your origin to pull content.
*/ - id?: string; + protocolPolicy?: OriginProtocolPolicyEnum | string; +} + +export namespace InputOrigin { + export const filterSensitiveLog = (obj: InputOrigin): any => ({ + ...obj, + }); +} +export interface CreateDistributionRequest { /** - *When true
, specifies whether the domain entry is an alias used by the
- * Lightsail load balancer. You can include an alias (A type) record in your request, which
- * points to a load balancer DNS name and routes traffic to your load balancer
An array of objects that describe the per-path cache behavior for the distribution.
*/ - isAlias?: boolean; + cacheBehaviors?: CacheBehaviorPerPath[]; /** - *The target AWS name server (e.g., ns-111.awsdns-22.com.
).
For Lightsail load balancers, the value looks like
- * ab1234c56789c6b86aba6fb203d443bc-123456789.us-east-2.elb.amazonaws.com
. Be sure
- * to also set isAlias
to true
when setting up an A record for a load
- * balancer.
The name for the distribution.
*/ - target?: string; + distributionName: string | undefined; /** - *The type of domain entry, such as address (A), canonical name (CNAME), mail exchanger - * (MX), name server (NS), start of authority (SOA), service locator (SRV), or text (TXT).
- *The following domain entry types can be used:
- *
- * A
- *
- * CNAME
- *
- * MX
- *
- * NS
- *
- * SOA
- *
- * SRV
- *
- * TXT
- *
An object that describes the cache behavior settings for the distribution.
*/ - type?: string; -} - -export namespace DomainEntry { - export const filterSensitiveLog = (obj: DomainEntry): any => ({ - ...obj, - }); -} + cacheBehaviorSettings?: CacheSettings; -export interface CreateDomainEntryRequest { /** - *The domain name (e.g., example.com
) for which you want to create the domain
- * entry.
An object that describes the origin resource for the distribution, such as a Lightsail + * instance or load balancer.
+ *The distribution pulls, caches, and serves content from the origin.
*/ - domainName: string | undefined; + origin: InputOrigin | undefined; /** - *An array of key-value pairs containing information about the domain entry request.
+ *The tag keys and optional values to add to the distribution during create.
+ *Use the TagResource
action to tag a resource after it's created.
An object that describes the default cache behavior for the distribution.
+ */ + defaultCacheBehavior: CacheBehavior | undefined; -export interface CreateDomainEntryResult { /** - *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.
+ *The bundle ID to use for the distribution.
+ *A distribution bundle describes the specifications of your distribution, such as the + * monthly cost and monthly network transfer quota.
+ *Use the GetDistributionBundles
action to get a list of distribution bundle
+ * IDs that you can specify.
Describes the origin resource of an Amazon Lightsail content delivery network (CDN) + * distribution.
+ *An origin can be a Lightsail instance or load balancer. A distribution pulls content + * from an origin, caches it, and serves it to viewers via a worldwide network of edge + * servers.
+ */ +export interface Origin { /** - *The names to use for your new Lightsail instances. Separate multiple values using
- * quotation marks and commas, for example:
- * ["MyFirstInstance","MySecondInstance"]
- *
The AWS Region name of the origin resource.
*/ - instanceNames: string[] | undefined; + regionName?: RegionName | string; /** - *The bundle of specification information for your virtual private server (or
- * instance), including the pricing plan (e.g.,
- * micro_1_0
).
The protocol that your Amazon Lightsail distribution uses when establishing a connection + * with your origin to pull content.
*/ - bundleId: string | undefined; + protocolPolicy?: OriginProtocolPolicyEnum | string; /** - *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.
The resource type of the origin resource (e.g., Instance).
*/ - tags?: Tag[]; + resourceType?: ResourceType | string; /** - *The name of your key pair.
+ *The name of the origin resource.
*/ - keyPairName?: string; + name?: string; +} + +export namespace Origin { + export const filterSensitiveLog = (obj: Origin): any => ({ + ...obj, + }); +} +/** + *Describes an Amazon Lightsail content delivery network (CDN) distribution.
+ */ +export interface LightsailDistribution { /** - *The Availability Zone in which to create your instance. Use the following format:
- * 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.
The ID of the bundle currently applied to the distribution.
*/ - availabilityZone: string | undefined; + bundleId?: string; /** - *(Deprecated) The name for your custom image.
+ *An object that describes the location of the distribution, such as the AWS Region and + * Availability Zone.
*In releases prior to June 12, 2017, this parameter was ignored by the API. It is now - * deprecated.
+ *Lightsail distributions are global resources that can reference an origin in any AWS
+ * Region, and distribute its content globally. However, all distributions are located in the
+ * us-east-1
Region.
The ID for a virtual private server image (e.g., app_wordpress_4_4
or
- * app_lamp_7_0
). Use the get blueprints
operation to return a list
- * of available images (or blueprints).
Use active blueprints when creating new instances. Inactive blueprints are listed to - * support customers with existing instances and are not necessarily available to create new - * instances. Blueprints are marked inactive when they become outdated due to operating system - * updates or new application releases.
- *An array of objects that describe the per-path cache behavior of the distribution.
*/ - blueprintId: string | undefined; + cacheBehaviors?: CacheBehaviorPerPath[]; /** - *A launch script you can create that configures a server with additional user data. For
- * example, you might want to run 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.
An object that describes the cache behavior settings of the distribution.
*/ - userData?: string; + cacheBehaviorSettings?: CacheSettings; /** - *An array of objects representing the add-ons to enable for the new instance.
+ *An object that describes the origin resource of the distribution, such as a Lightsail + * instance or load balancer.
+ *The distribution pulls, caches, and serves content from the origin.
*/ - addOns?: AddOnRequest[]; -} + origin?: Origin; -export namespace CreateInstancesRequest { - export const filterSensitiveLog = (obj: CreateInstancesRequest): any => ({ - ...obj, - }); -} + /** + *An object that describes the default cache behavior of the distribution.
+ */ + defaultCacheBehavior?: CacheBehavior; -export interface CreateInstancesResult { /** - *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.
+ *The timestamp when the distribution was created.
*/ - operations?: Operation[]; -} + createdAt?: Date; -export namespace CreateInstancesResult { - export const filterSensitiveLog = (obj: CreateInstancesResult): any => ({ - ...obj, - }); -} + /** + *The public DNS of the origin.
+ */ + originPublicDNS?: string; -export interface CreateInstancesFromSnapshotRequest { /** - *A Boolean value to indicate whether to use the latest available automatic snapshot.
- *Constraints:
- *This parameter cannot be defined together with the restore date
- * parameter. The use latest restorable auto snapshot
and restore
- * date
parameters are mutually exclusive.
Define this parameter only when creating a new instance from an automatic snapshot. - * For more information, see the Lightsail Dev Guide.
- *The status of the distribution.
*/ - useLatestRestorableAutoSnapshot?: boolean; + status?: string; /** - *The names for your new instances.
+ *The Amazon Resource Name (ARN) of the distribution.
*/ - instanceNames: string[] | undefined; + arn?: string; /** - *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.
The name of the distribution.
*/ - tags?: Tag[]; + name?: string; /** - *The name of the source instance from which the source automatic snapshot was - * created.
- *Constraints:
- *This parameter cannot be defined together with the instance snapshot name
- * parameter. The source instance name
and instance snapshot name
- * parameters are mutually exclusive.
Define this parameter only when creating a new instance from an automatic snapshot. - * For more information, see the Lightsail Dev Guide.
- *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.
The Lightsail resource type (e.g., Distribution
).
An object containing information about one or more disk mappings.
+ *The support code. Include this code in your email to support when you have questions about + * your Lightsail distribution. This code enables our support team to look up your Lightsail + * information more easily.
*/ - attachedDiskMapping?: { [key: string]: DiskMap[] }; + supportCode?: string; /** - *The date of the automatic snapshot to use for the new instance. Use the get auto
- * snapshots
operation to identify the dates of the available automatic
- * snapshots.
Constraints:
- *Must be specified in YYYY-MM-DD
format.
This parameter cannot be defined together with the use latest restorable auto
- * snapshot
parameter. The restore date
and use latest restorable
- * auto snapshot
parameters are mutually exclusive.
Define this parameter only when creating a new instance from an automatic snapshot. - * For more information, see the Lightsail Dev Guide.
- *Indicates whether the distribution is enabled.
*/ - restoreDate?: string; + isEnabled?: boolean; /** - *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.
The domain name of the distribution.
*/ - availabilityZone: string | undefined; + domainName?: string; /** - *The name for your key pair.
+ *The alternate domain names of the distribution.
*/ - keyPairName?: string; + alternativeDomainNames?: string[]; /** - *The bundle of specification information for your virtual private server (or
- * instance), including the pricing plan (e.g.,
- * micro_1_0
).
Indicates whether the bundle that is currently applied to your distribution, specified
+ * using the distributionName
parameter, can be changed to another bundle.
Use the UpdateDistributionBundle
action to change your distribution's
+ * bundle.
An array of objects representing the add-ons to enable for the new instance.
+ *The name of the SSL/TLS certificate attached to the distribution, if any.
*/ - addOns?: AddOnRequest[]; + certificateName?: string; /** - *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.
- *Constraint:
- *This parameter cannot be defined together with the source instance name
- * parameter. The instance snapshot name
and source instance name
- * parameters are mutually exclusive.
The tag keys and optional values for the resource. For more information about tags in + * Lightsail, see the Lightsail + * Dev Guide.
*/ - instanceSnapshotName?: string; + tags?: Tag[]; } -export namespace CreateInstancesFromSnapshotRequest { - export const filterSensitiveLog = (obj: CreateInstancesFromSnapshotRequest): any => ({ +export namespace LightsailDistribution { + export const filterSensitiveLog = (obj: LightsailDistribution): any => ({ ...obj, }); } -export interface CreateInstancesFromSnapshotResult { +export interface CreateDistributionResult { + /** + *An object that describes the distribution created.
+ */ + distribution?: LightsailDistribution; + /** *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.
*/ - operations?: Operation[]; + operation?: Operation; } -export namespace CreateInstancesFromSnapshotResult { - export const filterSensitiveLog = (obj: CreateInstancesFromSnapshotResult): any => ({ +export namespace CreateDistributionResult { + export const filterSensitiveLog = (obj: CreateDistributionResult): any => ({ ...obj, }); } -export interface CreateInstanceSnapshotRequest { - /** - *The Lightsail instance on which to base your snapshot.
- */ - instanceName: string | undefined; - - /** - *The name for your new snapshot.
- */ - instanceSnapshotName: string | undefined; - +export interface CreateDomainRequest { /** *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.
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.
+ *The domain name to manage (e.g., example.com
).
You cannot register a new domain name using Lightsail. You must register a domain name + * using Amazon Route 53 or another domain name registrar. If you have already registered your + * domain, you can enter its name in this parameter to manage the DNS records for that + * domain.
+ *The name for your new key pair.
- */ - keyPairName: string | undefined; - +export interface CreateDomainResult { /** - *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.
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.
*/ - tags?: Tag[]; + operation?: Operation; } -export namespace CreateKeyPairRequest { - export const filterSensitiveLog = (obj: CreateKeyPairRequest): any => ({ +export namespace CreateDomainResult { + export const filterSensitiveLog = (obj: CreateDomainResult): any => ({ ...obj, }); } /** - *Describes the SSH key pair.
+ *Describes a domain recordset entry.
*/ -export interface KeyPair { +export interface DomainEntry { /** - *The timestamp when the key pair was created (e.g., 1479816991.349
).
The target AWS name server (e.g., ns-111.awsdns-22.com.
).
For Lightsail load balancers, the value looks like
+ * ab1234c56789c6b86aba6fb203d443bc-123456789.us-east-2.elb.amazonaws.com
. Be sure
+ * to also set isAlias
to true
when setting up an A record for a load
+ * balancer.
The resource type (usually KeyPair
).
When true
, specifies whether the domain entry is an alias used by the
+ * Lightsail load balancer. You can include an alias (A type) record in your request, which
+ * points to a load balancer DNS name and routes traffic to your load balancer.
The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
+ *The ID of the domain recordset entry.
*/ - tags?: Tag[]; + id?: string; /** - *The support code. Include this code in your email to support when you have questions about - * an instance or another resource in Lightsail. This code enables our support team to look up - * your Lightsail information more easily.
+ *(Deprecated) The options for the domain entry.
+ *In releases prior to November 29, 2017, this parameter was not included in the API + * response. It is now deprecated.
+ *The friendly name of the SSH key pair.
+ *The name of the domain.
*/ name?: string; /** - *The Amazon Resource Name (ARN) of the key pair (e.g.,
- * arn:aws:lightsail:us-east-2:123456789101:KeyPair/05859e3d-331d-48ba-9034-12345EXAMPLE
).
The type of domain entry, such as address (A), canonical name (CNAME), mail exchanger + * (MX), name server (NS), start of authority (SOA), service locator (SRV), or text (TXT).
+ *The following domain entry types can be used:
+ *
+ * A
+ *
+ * CNAME
+ *
+ * MX
+ *
+ * NS
+ *
+ * SOA
+ *
+ * SRV
+ *
+ * TXT
+ *
The region name and Availability Zone where the key pair was created.
+ *An array of key-value pairs containing information about the domain entry request.
*/ - location?: ResourceLocation; + domainEntry: DomainEntry | undefined; /** - *The RSA fingerprint of the key pair.
+ *The domain name (e.g., example.com
) for which you want to create the domain
+ * entry.
An array of key-value pairs containing information about the new key pair you just - * created.
+ *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.
*/ - keyPair?: KeyPair; + operation?: Operation; +} + +export namespace CreateDomainEntryResult { + export const filterSensitiveLog = (obj: CreateDomainEntryResult): any => ({ + ...obj, + }); +} +export interface CreateInstancesRequest { /** - *A base64-encoded public key of the ssh-rsa
type.
An array of objects representing the add-ons to enable for the new instance.
*/ - publicKeyBase64?: string; + addOns?: AddOnRequest[]; /** - *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.
+ *(Deprecated) The name for your custom image.
+ *In releases prior to June 12, 2017, this parameter was ignored by the API. It is now + * deprecated.
+ *A base64-encoded RSA private key.
+ *The Availability Zone in which to create your instance. Use the following format:
+ * 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.
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.
+ *A launch script you can create that configures a server with additional user data. For
+ * example, you might want to run 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.
The name of your load balancer.
+ *The ID for a virtual private server image (e.g., app_wordpress_4_4
or
+ * app_lamp_7_0
). Use the get blueprints
operation to return a list
+ * of available images (or blueprints).
Use active blueprints when creating new instances. Inactive blueprints are listed to + * support customers with existing instances and are not necessarily available to create new + * instances. Blueprints are marked inactive when they become outdated due to operating system + * updates or new application releases.
+ *The domain name with which your certificate is associated (e.g.,
- * example.com
).
If you specify certificateDomainName
, then certificateName
is
- * required (and vice-versa).
The bundle of specification information for your virtual private server (or
+ * instance), including the pricing plan (e.g.,
+ * micro_1_0
).
The tag keys and optional values to add to the resource during create.
@@ -3833,32 +4199,26 @@ export interface CreateLoadBalancerRequest { tags?: Tag[]; /** - *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
).
The instance port where you're creating your load balancer.
+ *The name of your key pair.
*/ - instancePort: number | undefined; + keyPairName?: string; /** - *The name of the SSL/TLS certificate.
- *If you specify certificateName
, then certificateDomainName
is
- * required (and vice-versa).
The names to use for your new Lightsail instances. Separate multiple values using
+ * quotation marks and commas, for example:
+ * ["MyFirstInstance","MySecondInstance"]
+ *
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.
@@ -3866,117 +4226,88 @@ export interface CreateLoadBalancerResult { operations?: Operation[]; } -export namespace CreateLoadBalancerResult { - export const filterSensitiveLog = (obj: CreateLoadBalancerResult): any => ({ +export namespace CreateInstancesResult { + export const filterSensitiveLog = (obj: CreateInstancesResult): any => ({ ...obj, }); } -export interface CreateLoadBalancerTlsCertificateRequest { - /** - *The load balancer name where you want to create the SSL/TLS certificate.
- */ - loadBalancerName: string | undefined; - - /** - *The domain name (e.g., example.com
) for your SSL/TLS certificate.
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 (e.g.,
- * *.example.com
).
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.
+ *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.
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.
An array of objects representing the add-ons to enable for the new instance.
*/ - tags?: Tag[]; -} - -export namespace CreateLoadBalancerTlsCertificateRequest { - export const filterSensitiveLog = (obj: CreateLoadBalancerTlsCertificateRequest): any => ({ - ...obj, - }); -} + addOns?: AddOnRequest[]; -export interface CreateLoadBalancerTlsCertificateResult { /** - *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.
+ *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.
The master user name for your new database.
+ *The date of the automatic snapshot to use for the new instance. Use the get auto
+ * snapshots
operation to identify the dates of the available automatic
+ * snapshots.
Constraints:
*Master user name is required.
- *Must contain from 1 to 16 alphanumeric characters.
+ *Must be specified in YYYY-MM-DD
format.
The first character must be a letter.
+ *This parameter cannot be defined together with the use latest restorable auto
+ * snapshot
parameter. The restore date
and use latest restorable
+ * auto snapshot
parameters are mutually exclusive.
Cannot be a reserved word for the database engine you choose.
- *For more information about reserved words in MySQL 5.6 or 5.7, see the Keywords and - * Reserved Words articles for MySQL 5.6 or MySQL 5.7 - * respectively.
+ *Define this parameter only when creating a new instance from an automatic snapshot. + * For more information, see the Lightsail Dev Guide.
*The weekly time range during which system maintenance can occur on your new - * database.
- *The default is a 30-minute window selected at random from an 8-hour block of time for each - * AWS Region, occurring on a random day of the week.
+ *The name for your key pair.
+ */ + keyPairName?: string; + + /** + *An object containing information about one or more disk mappings.
+ */ + attachedDiskMapping?: { [key: string]: DiskMap[] }; + + /** + *The name of the source instance from which the source automatic snapshot was + * created.
*Constraints:
*Must be in the ddd:hh24:mi-ddd:hh24:mi
format.
Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun.
- *Must be at least 30 minutes.
- *Specified in Coordinated Universal Time (UTC).
+ *This parameter cannot be defined together with the instance snapshot name
+ * parameter. The source instance name
and instance snapshot name
+ * parameters are mutually exclusive.
Example: Tue:17:00-Tue:17:30
- *
Define this parameter only when creating a new instance from an automatic snapshot. + * For more information, see the Lightsail Dev Guide.
*The tag keys and optional values to add to the resource during create.
@@ -3985,109 +4316,94 @@ export interface CreateRelationalDatabaseRequest { tags?: Tag[]; /** - *The name of the master database created when the Lightsail database resource is - * created.
- *Constraints:
+ *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.
+ *Constraint:
*Must contain from 1 to 64 alphanumeric characters.
- *Cannot be a word reserved by the specified database engine
+ *This parameter cannot be defined together with the source instance name
+ * parameter. The instance snapshot name
and source instance name
+ * parameters are mutually exclusive.
The password for the master user of your new database. The password can include any - * printable ASCII character except "/", """, or "@".
- *Constraints: Must contain 8 to 41 characters.
+ *A Boolean value to indicate whether to use the latest available automatic snapshot.
+ *Constraints:
+ *This parameter cannot be defined together with the restore date
+ * parameter. The use latest restorable auto snapshot
and restore
+ * date
parameters are mutually exclusive.
Define this parameter only when creating a new instance from an automatic snapshot. + * For more information, see the Lightsail Dev Guide.
+ *The blueprint ID for your new database. A blueprint describes the major engine version of - * a database.
- *You can get a list of database blueprints IDs by using the get relational database
- * blueprints
operation.
The bundle of specification information for your virtual private server (or
+ * instance), including the pricing plan (e.g.,
+ * micro_1_0
).
The bundle ID for your new database. A bundle describes the performance specifications for - * your database.
- *You can get a list of database bundle IDs by using the get relational database
- * bundles
operation.
The names for your new instances.
*/ - relationalDatabaseBundleId: string | undefined; + instanceNames: string[] | undefined; +} + +export namespace CreateInstancesFromSnapshotRequest { + export const filterSensitiveLog = (obj: CreateInstancesFromSnapshotRequest): any => ({ + ...obj, + }); +} +export interface CreateInstancesFromSnapshotResult { /** - *The daily time range during which automated backups are created for your new database if - * automated backups are enabled.
- *The default is a 30-minute window selected at random from an 8-hour block of time for each - * AWS Region. For more information about the preferred backup window time blocks for each - * region, see the Working With Backups guide in the Amazon Relational Database Service (Amazon RDS) documentation.
- *Constraints:
- *Must be in the hh24:mi-hh24:mi
format.
Example: 16:00-16:30
- *
Specified in Coordinated Universal Time (UTC).
- *Must not conflict with the preferred maintenance window.
- *Must be at least 30 minutes.
- *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.
*/ - preferredBackupWindow?: string; + operations?: Operation[]; +} + +export namespace CreateInstancesFromSnapshotResult { + export const filterSensitiveLog = (obj: CreateInstancesFromSnapshotResult): any => ({ + ...obj, + }); +} +export interface CreateInstanceSnapshotRequest { /** - *Specifies the accessibility options for your new database. A value of true
- * specifies a database that is available to resources outside of your Lightsail account. A
- * value of false
specifies a database that is available only to your Lightsail
- * resources in the same region as your database.
The Lightsail instance on which to base your snapshot.
*/ - publiclyAccessible?: boolean; + instanceName: string | undefined; /** - *The Availability Zone in which to create your new database. Use the
- * us-east-2a
case-sensitive format.
You can get a list of Availability Zones by using the get regions
operation.
- * Be sure to add the include relational database Availability Zones
parameter to
- * your request.
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.
The name to use for your new database.
- *Constraints:
- *Must contain from 2 to 255 alphanumeric characters, or hyphens.
- *The first and last character must be a letter or number.
- *The name for your new snapshot.
*/ - relationalDatabaseName: string | undefined; + instanceSnapshotName: string | undefined; } -export namespace CreateRelationalDatabaseRequest { - export const filterSensitiveLog = (obj: CreateRelationalDatabaseRequest): any => ({ +export namespace CreateInstanceSnapshotRequest { + export const filterSensitiveLog = (obj: CreateInstanceSnapshotRequest): any => ({ ...obj, - ...(obj.masterUserPassword && { masterUserPassword: SENSITIVE_STRING }), }); } -export interface CreateRelationalDatabaseResult { +export interface CreateInstanceSnapshotResult { /** *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.
@@ -4095,125 +4411,118 @@ export interface CreateRelationalDatabaseResult { operations?: Operation[]; } -export namespace CreateRelationalDatabaseResult { - export const filterSensitiveLog = (obj: CreateRelationalDatabaseResult): any => ({ +export namespace CreateInstanceSnapshotResult { + export const filterSensitiveLog = (obj: CreateInstanceSnapshotResult): any => ({ ...obj, }); } -export interface CreateRelationalDatabaseFromSnapshotRequest { +export interface CreateKeyPairRequest { /** - *The date and time to restore your database from.
- *Constraints:
- *Must be before the latest restorable time for the database.
- *Cannot be specified if the use latest restorable time
parameter is
- * true
.
Specified in Coordinated Universal Time (UTC).
- *Specified in the Unix time format.
- *For example, if you wish to use a restore time of October 1, 2018, at 8 PM UTC, then
- * you input 1538424000
as the restore time.
The name for your new key pair.
*/ - restoreTime?: Date; + keyPairName: string | undefined; /** - *The bundle ID for your new database. A bundle describes the performance specifications for - * your database.
- *You can get a list of database bundle IDs by using the get relational database
- * bundles
operation.
When creating a new database from a snapshot, you cannot choose a bundle that is smaller - * than the bundle of the source database.
+ *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.
Describes the SSH key pair.
+ */ +export interface KeyPair { /** - *The name of the source database.
+ *The support code. Include this code in your email to support when you have questions about + * an instance or another resource in Lightsail. This code enables our support team to look up + * your Lightsail information more easily.
*/ - sourceRelationalDatabaseName?: string; + supportCode?: string; /** - *Specifies the accessibility options for your new database. A value of true
- * specifies a database that is available to resources outside of your Lightsail account. A
- * value of false
specifies a database that is available only to your Lightsail
- * resources in the same region as your database.
The friendly name of the SSH key pair.
*/ - publiclyAccessible?: boolean; + name?: string; /** - *The name to use for your new database.
- *Constraints:
- *Must contain from 2 to 255 alphanumeric characters, or hyphens.
- *The first and last character must be a letter or number.
- *The Amazon Resource Name (ARN) of the key pair (e.g.,
+ * arn:aws:lightsail:us-east-2:123456789101:KeyPair/05859e3d-331d-48ba-9034-12345EXAMPLE
).
Specifies whether your database is restored from the latest backup time. A value of
- * true
restores from the latest backup time.
Default: false
- *
Constraints: Cannot be specified if the restore time
parameter is
- * provided.
The tag keys and optional values for the resource. For more information about tags in + * Lightsail, see the Lightsail + * Dev Guide.
*/ - useLatestRestorableTime?: boolean; + tags?: Tag[]; /** - *The name of the database snapshot from which to create your new database.
+ *The resource type (usually KeyPair
).
The Availability Zone in which to create your new database. Use the
- * us-east-2a
case-sensitive format.
You can get a list of Availability Zones by using the get regions
operation.
- * Be sure to add the include relational database Availability Zones
parameter to
- * your request.
The timestamp when the key pair was created (e.g., 1479816991.349
).
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.
The RSA fingerprint of the key pair.
*/ - tags?: Tag[]; + fingerprint?: string; + + /** + *The region name and Availability Zone where the key pair was created.
+ */ + location?: ResourceLocation; } -export namespace CreateRelationalDatabaseFromSnapshotRequest { - export const filterSensitiveLog = (obj: CreateRelationalDatabaseFromSnapshotRequest): any => ({ +export namespace KeyPair { + export const filterSensitiveLog = (obj: KeyPair): any => ({ ...obj, }); } -export interface CreateRelationalDatabaseFromSnapshotResult { +export interface CreateKeyPairResult { /** *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.
*/ - operations?: Operation[]; + operation?: Operation; + + /** + *A base64-encoded public key of the ssh-rsa
type.
An array of key-value pairs containing information about the new key pair you just + * created.
+ */ + keyPair?: KeyPair; + + /** + *A base64-encoded RSA private key.
+ */ + privateKeyBase64?: string; } -export namespace CreateRelationalDatabaseFromSnapshotResult { - export const filterSensitiveLog = (obj: CreateRelationalDatabaseFromSnapshotResult): any => ({ +export namespace CreateKeyPairResult { + export const filterSensitiveLog = (obj: CreateKeyPairResult): any => ({ ...obj, }); } -export interface CreateRelationalDatabaseSnapshotRequest { +export interface CreateLoadBalancerRequest { /** *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.
The name for your new database snapshot.
- *Constraints:
- *Must contain from 2 to 255 alphanumeric characters, or hyphens.
- *The first and last character must be a letter or number.
- *The domain name with which your certificate is associated (e.g.,
+ * example.com
).
If you specify certificateDomainName
, then certificateName
is
+ * required (and vice-versa).
The name of the database on which to base your new snapshot.
+ *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
).
The name of your load balancer.
+ */ + loadBalancerName: string | undefined; -export interface CreateRelationalDatabaseSnapshotResult { /** - *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.
+ *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.
*/ - operations?: Operation[]; -} + healthCheckPath?: string; -export namespace CreateRelationalDatabaseSnapshotResult { - export const filterSensitiveLog = (obj: CreateRelationalDatabaseSnapshotResult): any => ({ - ...obj, - }); -} + /** + *The instance port where you're creating your load balancer.
+ */ + instancePort: number | undefined; -export interface DeleteAlarmRequest { /** - *The name of the alarm to delete.
+ *The name of the SSL/TLS certificate.
+ *If you specify certificateName
, then certificateDomainName
is
+ * required (and vice-versa).
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.
@@ -4281,64 +4585,54 @@ export interface DeleteAlarmResult { operations?: Operation[]; } -export namespace DeleteAlarmResult { - export const filterSensitiveLog = (obj: DeleteAlarmResult): any => ({ +export namespace CreateLoadBalancerResult { + export const filterSensitiveLog = (obj: CreateLoadBalancerResult): any => ({ ...obj, }); } -export interface DeleteAutoSnapshotRequest { +export interface CreateLoadBalancerTlsCertificateRequest { /** - *The date of the automatic snapshot to delete in YYYY-MM-DD
format. Use the
- * get auto snapshots
operation to get the available automatic snapshots for a
- * resource.
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.
The name of the source instance or disk from which to delete the automatic - * snapshot.
+ *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 (e.g.,
+ * *.example.com
).
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.
+ *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.
*/ - operations?: Operation[]; -} + certificateName: string | undefined; -export namespace DeleteAutoSnapshotResult { - export const filterSensitiveLog = (obj: DeleteAutoSnapshotResult): any => ({ - ...obj, - }); -} + /** + *The domain name (e.g., example.com
) for your SSL/TLS certificate.
The name of the certificate to delete.
- * - *Use the GetCertificates
action to get a list of certificate names that you
- * can specify.
The load balancer name where you want to create the SSL/TLS certificate.
*/ - certificateName: string | undefined; + loadBalancerName: string | undefined; } -export namespace DeleteCertificateRequest { - export const filterSensitiveLog = (obj: DeleteCertificateRequest): any => ({ +export namespace CreateLoadBalancerTlsCertificateRequest { + export const filterSensitiveLog = (obj: CreateLoadBalancerTlsCertificateRequest): any => ({ ...obj, }); } -export interface DeleteCertificateResult { +export interface CreateLoadBalancerTlsCertificateResult { /** *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.
@@ -4346,92 +4640,173 @@ export interface DeleteCertificateResult { operations?: Operation[]; } -export namespace DeleteCertificateResult { - export const filterSensitiveLog = (obj: DeleteCertificateResult): any => ({ +export namespace CreateLoadBalancerTlsCertificateResult { + export const filterSensitiveLog = (obj: CreateLoadBalancerTlsCertificateResult): any => ({ ...obj, }); } -export interface DeleteContactMethodRequest { +export interface CreateRelationalDatabaseRequest { /** - *The protocol that will be deleted, such as Email
or SMS
(text
- * messaging).
To delete an Email
and an SMS
contact method if you added
- * both, you must run separate DeleteContactMethod
actions to delete each
- * protocol.
Specifies the accessibility options for your new database. A value of true
+ * specifies a database that is available to resources outside of your Lightsail account. A
+ * value of false
specifies a database that is available only to your Lightsail
+ * resources in the same region as your database.
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.
+ *The weekly time range during which system maintenance can occur on your new + * database.
+ *The default is a 30-minute window selected at random from an 8-hour block of time for each + * AWS Region, occurring on a random day of the week.
+ *Constraints:
+ *Must be in the ddd:hh24:mi-ddd:hh24:mi
format.
Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun.
+ *Must be at least 30 minutes.
+ *Specified in Coordinated Universal Time (UTC).
+ *Example: Tue:17:00-Tue:17:30
+ *
A Boolean value to indicate whether to delete the enabled add-ons for the disk.
+ *The daily time range during which automated backups are created for your new database if + * automated backups are enabled.
+ *The default is a 30-minute window selected at random from an 8-hour block of time for each + * AWS Region. For more information about the preferred backup window time blocks for each + * region, see the Working With Backups guide in the Amazon Relational Database Service (Amazon RDS) documentation.
+ *Constraints:
+ *Must be in the hh24:mi-hh24:mi
format.
Example: 16:00-16:30
+ *
Specified in Coordinated Universal Time (UTC).
+ *Must not conflict with the preferred maintenance window.
+ *Must be at least 30 minutes.
+ *The unique name of the disk you want to delete (e.g., my-disk
).
The blueprint ID for your new database. A blueprint describes the major engine version of + * a database.
+ *You can get a list of database blueprints IDs by using the get relational database
+ * blueprints
operation.
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.
+ *The name of the master database created when the Lightsail database resource is + * created.
+ *Constraints:
+ *Must contain from 1 to 64 alphanumeric characters.
+ *Cannot be a word reserved by the specified database engine
+ *The name of the disk snapshot you want to delete (e.g.,
- * my-disk-snapshot
).
The bundle ID for your new database. A bundle describes the performance specifications for + * your database.
+ *You can get a list of database bundle IDs by using the get relational database
+ * bundles
operation.
The password for the master user of your new database. The password can include any + * printable ASCII character except "/", """, or "@".
+ *Constraints: Must contain 8 to 41 characters.
+ */ + masterUserPassword?: string; + + /** + *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.
The Availability Zone in which to create your new database. Use the
+ * us-east-2a
case-sensitive format.
You can get a list of Availability Zones by using the get regions
operation.
+ * Be sure to add the include relational database Availability Zones
parameter to
+ * your request.
The master user name for your new database.
+ *Constraints:
+ *Master user name is required.
+ *Must contain from 1 to 16 alphanumeric characters.
+ *The first character must be a letter.
+ *Cannot be a reserved word for the database engine you choose.
+ *For more information about reserved words in MySQL 5.6 or 5.7, see the Keywords and + * Reserved Words articles for MySQL 5.6 or MySQL 5.7 + * respectively.
+ *The name to use for your new database.
+ *Constraints:
+ *Must contain from 2 to 255 alphanumeric characters, or hyphens.
+ *The first and last character must be a letter or number.
+ *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.
@@ -4439,120 +4814,158 @@ export interface DeleteDiskSnapshotResult { operations?: Operation[]; } -export namespace DeleteDiskSnapshotResult { - export const filterSensitiveLog = (obj: DeleteDiskSnapshotResult): any => ({ +export namespace CreateRelationalDatabaseResult { + export const filterSensitiveLog = (obj: CreateRelationalDatabaseResult): any => ({ ...obj, }); } -export interface DeleteDistributionRequest { +export interface CreateRelationalDatabaseFromSnapshotRequest { /** - *The name of the distribution to delete.
- * - *Use the GetDistributions
action to get a list of distribution names that you
- * can specify.
The name of the source database.
*/ - distributionName?: string; -} - -export namespace DeleteDistributionRequest { - export const filterSensitiveLog = (obj: DeleteDistributionRequest): any => ({ - ...obj, - }); -} + sourceRelationalDatabaseName?: string; -export interface DeleteDistributionResult { /** - *An object that describes the result of the action, such as the status of the request, the - * timestamp of the request, and the resources affected by the request.
+ *The name to use for your new database.
+ *Constraints:
+ *Must contain from 2 to 255 alphanumeric characters, or hyphens.
+ *The first and last character must be a letter or number.
+ *The bundle ID for your new database. A bundle describes the performance specifications for + * your database.
+ *You can get a list of database bundle IDs by using the get relational database
+ * bundles
operation.
When creating a new database from a snapshot, you cannot choose a bundle that is smaller + * than the bundle of the source database.
+ */ + relationalDatabaseBundleId?: string; -export interface DeleteDomainRequest { /** - *The specific domain name to delete.
+ *The date and time to restore your database from.
+ *Constraints:
+ *Must be before the latest restorable time for the database.
+ *Cannot be specified if the use latest restorable time
parameter is
+ * true
.
Specified in Coordinated Universal Time (UTC).
+ *Specified in the Unix time format.
+ *For example, if you wish to use a restore time of October 1, 2018, at 8 PM UTC, then
+ * you input 1538424000
as the restore time.
Specifies whether your database is restored from the latest backup time. A value of
+ * true
restores from the latest backup time.
Default: false
+ *
Constraints: Cannot be specified if the restore time
parameter is
+ * provided.
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.
+ *The Availability Zone in which to create your new database. Use the
+ * us-east-2a
case-sensitive format.
You can get a list of Availability Zones by using the get regions
operation.
+ * Be sure to add the include relational database Availability Zones
parameter to
+ * your request.
Specifies the accessibility options for your new database. A value of true
+ * specifies a database that is available to resources outside of your Lightsail account. A
+ * value of false
specifies a database that is available only to your Lightsail
+ * resources in the same region as your database.
The name of the domain entry to delete.
+ *The name of the database snapshot from which to create your new database.
*/ - domainName: string | undefined; + relationalDatabaseSnapshotName?: string; /** - *An array of key-value pairs containing information about your domain entries.
+ *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.
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.
*/ - operation?: Operation; + operations?: Operation[]; } -export namespace DeleteDomainEntryResult { - export const filterSensitiveLog = (obj: DeleteDomainEntryResult): any => ({ +export namespace CreateRelationalDatabaseFromSnapshotResult { + export const filterSensitiveLog = (obj: CreateRelationalDatabaseFromSnapshotResult): any => ({ ...obj, }); } -export interface DeleteInstanceRequest { +export interface CreateRelationalDatabaseSnapshotRequest { /** - *A Boolean value to indicate whether to delete the enabled add-ons for the disk.
+ *The name for your new database snapshot.
+ *Constraints:
+ *Must contain from 2 to 255 alphanumeric characters, or hyphens.
+ *The first and last character must be a letter or number.
+ *The name of the instance to delete.
+ *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.
The name of the database on which to base your new snapshot.
+ */ + relationalDatabaseName: string | undefined; } -export namespace DeleteInstanceRequest { - export const filterSensitiveLog = (obj: DeleteInstanceRequest): any => ({ +export namespace CreateRelationalDatabaseSnapshotRequest { + export const filterSensitiveLog = (obj: CreateRelationalDatabaseSnapshotRequest): any => ({ ...obj, }); } -export interface DeleteInstanceResult { +export interface CreateRelationalDatabaseSnapshotResult { /** *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.
@@ -4560,26 +4973,26 @@ export interface DeleteInstanceResult { operations?: Operation[]; } -export namespace DeleteInstanceResult { - export const filterSensitiveLog = (obj: DeleteInstanceResult): any => ({ +export namespace CreateRelationalDatabaseSnapshotResult { + export const filterSensitiveLog = (obj: CreateRelationalDatabaseSnapshotResult): any => ({ ...obj, }); } -export interface DeleteInstanceSnapshotRequest { +export interface DeleteAlarmRequest { /** - *The name of the snapshot to delete.
+ *The name of the alarm to delete.
*/ - instanceSnapshotName: string | undefined; + alarmName: string | undefined; } -export namespace DeleteInstanceSnapshotRequest { - export const filterSensitiveLog = (obj: DeleteInstanceSnapshotRequest): any => ({ +export namespace DeleteAlarmRequest { + export const filterSensitiveLog = (obj: DeleteAlarmRequest): any => ({ ...obj, }); } -export interface DeleteInstanceSnapshotResult { +export interface DeleteAlarmResult { /** *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.
@@ -4587,53 +5000,63 @@ export interface DeleteInstanceSnapshotResult { operations?: Operation[]; } -export namespace DeleteInstanceSnapshotResult { - export const filterSensitiveLog = (obj: DeleteInstanceSnapshotResult): any => ({ +export namespace DeleteAlarmResult { + export const filterSensitiveLog = (obj: DeleteAlarmResult): any => ({ ...obj, }); } -export interface DeleteKeyPairRequest { +export interface DeleteAutoSnapshotRequest { /** - *The name of the key pair to delete.
+ *The name of the source instance or disk from which to delete the automatic + * snapshot.
*/ - keyPairName: string | undefined; + resourceName: string | undefined; + + /** + *The date of the automatic snapshot to delete in YYYY-MM-DD
format. Use the
+ * get auto snapshots
operation to get the available automatic snapshots for a
+ * resource.
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.
*/ - operation?: Operation; + operations?: Operation[]; } -export namespace DeleteKeyPairResult { - export const filterSensitiveLog = (obj: DeleteKeyPairResult): any => ({ +export namespace DeleteAutoSnapshotResult { + export const filterSensitiveLog = (obj: DeleteAutoSnapshotResult): any => ({ ...obj, }); } -export interface DeleteKnownHostKeysRequest { +export interface DeleteCertificateRequest { /** - *The name of the instance for which you want to reset the host key or certificate.
+ *The name of the certificate to delete.
+ *Use the GetCertificates
action to get a list of certificate names that you
+ * can specify.
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.
@@ -4641,26 +5064,32 @@ export interface DeleteKnownHostKeysResult { operations?: Operation[]; } -export namespace DeleteKnownHostKeysResult { - export const filterSensitiveLog = (obj: DeleteKnownHostKeysResult): any => ({ +export namespace DeleteCertificateResult { + export const filterSensitiveLog = (obj: DeleteCertificateResult): any => ({ ...obj, }); } -export interface DeleteLoadBalancerRequest { +export interface DeleteContactMethodRequest { /** - *The name of the load balancer you want to delete.
+ *The protocol that will be deleted, such as Email
or SMS
(text
+ * messaging).
To delete an Email
and an SMS
contact method if you added
+ * both, you must run separate DeleteContactMethod
actions to delete each
+ * protocol.
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.
@@ -4668,96 +5097,89 @@ export interface DeleteLoadBalancerResult { operations?: Operation[]; } -export namespace DeleteLoadBalancerResult { - export const filterSensitiveLog = (obj: DeleteLoadBalancerResult): any => ({ +export namespace DeleteContactMethodResult { + export const filterSensitiveLog = (obj: DeleteContactMethodResult): any => ({ ...obj, }); } -export interface DeleteLoadBalancerTlsCertificateRequest { +export interface DeleteContainerImageRequest { /** - *When true
, forces the deletion of an SSL/TLS certificate.
There can be two certificates associated with a Lightsail load balancer: the primary and
- * the backup. The force
parameter is required when the primary SSL/TLS certificate
- * is in use by an instance attached to the load balancer.
The name of the container image to delete from the container service.
+ * + *Use the GetContainerImages
action to get the name of the container images
+ * that are registered to a container service.
Container images sourced from your Lightsail container service, that are registered
+ * and stored on your service, start with a colon (:
). For example,
+ * :container-service-1.mystaticwebsite.1
. Container images sourced from a
+ * public registry like Docker Hub don't start with a colon. For example,
+ * nginx:latest
or nginx
.
The load balancer name.
+ *The name of the container service for which to delete a registered container image.
*/ - loadBalancerName: string | undefined; + serviceName: string | undefined; +} - /** - *The SSL/TLS certificate name.
- */ - certificateName: string | undefined; +export namespace DeleteContainerImageRequest { + export const filterSensitiveLog = (obj: DeleteContainerImageRequest): any => ({ + ...obj, + }); } -export namespace DeleteLoadBalancerTlsCertificateRequest { - export const filterSensitiveLog = (obj: DeleteLoadBalancerTlsCertificateRequest): any => ({ +export interface DeleteContainerImageResult {} + +export namespace DeleteContainerImageResult { + export const filterSensitiveLog = (obj: DeleteContainerImageResult): any => ({ ...obj, }); } -export interface DeleteLoadBalancerTlsCertificateResult { +export interface DeleteContainerServiceRequest { /** - *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.
+ *The name of the container service to delete.
*/ - operations?: Operation[]; + serviceName: string | undefined; } -export namespace DeleteLoadBalancerTlsCertificateResult { - export const filterSensitiveLog = (obj: DeleteLoadBalancerTlsCertificateResult): any => ({ +export namespace DeleteContainerServiceRequest { + export const filterSensitiveLog = (obj: DeleteContainerServiceRequest): any => ({ ...obj, }); } -export interface DeleteRelationalDatabaseRequest { - /** - *The name of the database snapshot created if skip final snapshot
is
- * false
, which is the default value for that parameter.
Specifying this parameter and also specifying the skip final snapshot
- * parameter to true
results in an error.
Constraints:
- *Must contain from 2 to 255 alphanumeric characters, or hyphens.
- *The first and last character must be a letter or number.
- *Determines whether a final database snapshot is created before your database is deleted.
- * If true
is specified, no database snapshot is created. If false
is
- * specified, a database snapshot is created before your database is deleted.
You must specify the final relational database snapshot name
parameter if the
- * skip final snapshot
parameter is false
.
Default: false
- *
The unique name of the disk you want to delete (e.g., my-disk
).
The name of the database that you are deleting.
+ *A Boolean value to indicate whether to delete the enabled add-ons for the disk.
*/ - relationalDatabaseName: string | undefined; + forceDeleteAddOns?: boolean; } -export namespace DeleteRelationalDatabaseRequest { - export const filterSensitiveLog = (obj: DeleteRelationalDatabaseRequest): any => ({ +export namespace DeleteDiskRequest { + export const filterSensitiveLog = (obj: DeleteDiskRequest): any => ({ ...obj, }); } -export interface DeleteRelationalDatabaseResult { +export interface DeleteDiskResult { /** *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.
@@ -4765,26 +5187,27 @@ export interface DeleteRelationalDatabaseResult { operations?: Operation[]; } -export namespace DeleteRelationalDatabaseResult { - export const filterSensitiveLog = (obj: DeleteRelationalDatabaseResult): any => ({ +export namespace DeleteDiskResult { + export const filterSensitiveLog = (obj: DeleteDiskResult): any => ({ ...obj, }); } -export interface DeleteRelationalDatabaseSnapshotRequest { +export interface DeleteDiskSnapshotRequest { /** - *The name of the database snapshot that you are deleting.
+ *The name of the disk snapshot you want to delete (e.g.,
+ * my-disk-snapshot
).
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.
@@ -4792,29 +5215,28 @@ export interface DeleteRelationalDatabaseSnapshotResult { operations?: Operation[]; } -export namespace DeleteRelationalDatabaseSnapshotResult { - export const filterSensitiveLog = (obj: DeleteRelationalDatabaseSnapshotResult): any => ({ +export namespace DeleteDiskSnapshotResult { + export const filterSensitiveLog = (obj: DeleteDiskSnapshotResult): any => ({ ...obj, }); } -export interface DetachCertificateFromDistributionRequest { +export interface DeleteDistributionRequest { /** - *The name of the distribution from which to detach the certificate.
- * + *The name of the distribution to delete.
*Use the GetDistributions
action to get a list of distribution names that you
* can specify.
An object that describes the result of the action, such as the status of the request, the * timestamp of the request, and the resources affected by the request.
@@ -4822,87 +5244,90 @@ export interface DetachCertificateFromDistributionResult { operation?: Operation; } -export namespace DetachCertificateFromDistributionResult { - export const filterSensitiveLog = (obj: DetachCertificateFromDistributionResult): any => ({ +export namespace DeleteDistributionResult { + export const filterSensitiveLog = (obj: DeleteDistributionResult): any => ({ ...obj, }); } -export interface DetachDiskRequest { +export interface DeleteDomainRequest { /** - *The unique name of the disk you want to detach from your instance (e.g.,
- * my-disk
).
The specific domain name to delete.
*/ - diskName: string | undefined; + domainName: string | undefined; } -export namespace DetachDiskRequest { - export const filterSensitiveLog = (obj: DetachDiskRequest): any => ({ +export namespace DeleteDomainRequest { + export const filterSensitiveLog = (obj: DeleteDomainRequest): any => ({ ...obj, }); } -export interface DetachDiskResult { +export interface DeleteDomainResult { /** *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.
*/ - operations?: Operation[]; + operation?: Operation; } -export namespace DetachDiskResult { - export const filterSensitiveLog = (obj: DetachDiskResult): any => ({ +export namespace DeleteDomainResult { + export const filterSensitiveLog = (obj: DeleteDomainResult): any => ({ ...obj, }); } -export interface DetachInstancesFromLoadBalancerRequest { +export interface DeleteDomainEntryRequest { /** - *An array of strings containing the names of the instances you want to detach from the load - * balancer.
+ *The name of the domain entry to delete.
*/ - instanceNames: string[] | undefined; + domainName: string | undefined; /** - *The name of the Lightsail load balancer.
+ *An array of key-value pairs containing information about your domain entries.
*/ - loadBalancerName: string | undefined; + domainEntry: DomainEntry | undefined; } -export namespace DetachInstancesFromLoadBalancerRequest { - export const filterSensitiveLog = (obj: DetachInstancesFromLoadBalancerRequest): any => ({ +export namespace DeleteDomainEntryRequest { + export const filterSensitiveLog = (obj: DeleteDomainEntryRequest): any => ({ ...obj, }); } -export interface DetachInstancesFromLoadBalancerResult { +export interface DeleteDomainEntryResult { /** *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.
*/ - operations?: Operation[]; + operation?: Operation; } -export namespace DetachInstancesFromLoadBalancerResult { - export const filterSensitiveLog = (obj: DetachInstancesFromLoadBalancerResult): any => ({ +export namespace DeleteDomainEntryResult { + export const filterSensitiveLog = (obj: DeleteDomainEntryResult): any => ({ ...obj, }); } -export interface DetachStaticIpRequest { +export interface DeleteInstanceRequest { /** - *The name of the static IP to detach from the instance.
+ *The name of the instance to delete.
*/ - staticIpName: string | undefined; + instanceName: string | undefined; + + /** + *A Boolean value to indicate whether to delete the enabled add-ons for the disk.
+ */ + forceDeleteAddOns?: boolean; } -export namespace DetachStaticIpRequest { - export const filterSensitiveLog = (obj: DetachStaticIpRequest): any => ({ +export namespace DeleteInstanceRequest { + export const filterSensitiveLog = (obj: DeleteInstanceRequest): any => ({ ...obj, }); } -export interface DetachStaticIpResult { +export interface DeleteInstanceResult { /** *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.
@@ -4910,31 +5335,26 @@ export interface DetachStaticIpResult { operations?: Operation[]; } -export namespace DetachStaticIpResult { - export const filterSensitiveLog = (obj: DetachStaticIpResult): any => ({ +export namespace DeleteInstanceResult { + export const filterSensitiveLog = (obj: DeleteInstanceResult): any => ({ ...obj, }); } -export interface DisableAddOnRequest { - /** - *The add-on type to disable.
- */ - addOnType: AddOnType | string | undefined; - +export interface DeleteInstanceSnapshotRequest { /** - *The name of the source resource for which to disable the add-on.
+ *The name of the snapshot to delete.
*/ - resourceName: string | undefined; + instanceSnapshotName: string | undefined; } -export namespace DisableAddOnRequest { - export const filterSensitiveLog = (obj: DisableAddOnRequest): any => ({ +export namespace DeleteInstanceSnapshotRequest { + export const filterSensitiveLog = (obj: DeleteInstanceSnapshotRequest): any => ({ ...obj, }); } -export interface DisableAddOnResult { +export interface DeleteInstanceSnapshotResult { /** *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.
@@ -4942,329 +5362,419 @@ export interface DisableAddOnResult { operations?: Operation[]; } -export namespace DisableAddOnResult { - export const filterSensitiveLog = (obj: DisableAddOnResult): any => ({ +export namespace DeleteInstanceSnapshotResult { + export const filterSensitiveLog = (obj: DeleteInstanceSnapshotResult): any => ({ ...obj, }); } -export enum DiskState { - Available = "available", - Error = "error", - InUse = "in-use", - Pending = "pending", - Unknown = "unknown", -} - -/** - *Describes a system disk or a block storage disk.
- */ -export interface Disk { +export interface DeleteKeyPairRequest { /** - *An array of objects representing the add-ons enabled on the disk.
+ *The name of the key pair to delete.
*/ - addOns?: AddOn[]; + keyPairName: string | undefined; +} - /** - *The support code. Include this code in your email to support when you have questions about - * an instance or another resource in Lightsail. This code enables our support team to look up - * your Lightsail information more easily.
- */ - supportCode?: string; +export namespace DeleteKeyPairRequest { + export const filterSensitiveLog = (obj: DeleteKeyPairRequest): any => ({ + ...obj, + }); +} +export interface DeleteKeyPairResult { /** - *A Boolean value indicating whether the disk is attached.
+ *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.
*/ - isAttached?: boolean; + operation?: Operation; +} - /** - *The AWS Region and Availability Zone where the disk is located.
- */ - location?: ResourceLocation; +export namespace DeleteKeyPairResult { + export const filterSensitiveLog = (obj: DeleteKeyPairResult): any => ({ + ...obj, + }); +} +export interface DeleteKnownHostKeysRequest { /** - *Describes the status of the disk.
+ *The name of the instance for which you want to reset the host key or certificate.
*/ - state?: DiskState | string; + instanceName: string | undefined; +} - /** - *The input/output operations per second (IOPS) of the disk.
- */ - iops?: number; +export namespace DeleteKnownHostKeysRequest { + export const filterSensitiveLog = (obj: DeleteKnownHostKeysRequest): any => ({ + ...obj, + }); +} +export interface DeleteKnownHostKeysResult { /** - *The Lightsail resource type (e.g., Disk
).
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.
*/ - resourceType?: ResourceType | string; + operations?: Operation[]; +} - /** - *(Deprecated) The number of GB in use by the disk.
- *In releases prior to November 14, 2017, this parameter was not included in the API - * response. It is now deprecated.
- *The unique name of the disk.
+ *The name of the load balancer you want to delete.
*/ - name?: string; + loadBalancerName: string | undefined; +} + +export namespace DeleteLoadBalancerRequest { + export const filterSensitiveLog = (obj: DeleteLoadBalancerRequest): any => ({ + ...obj, + }); +} +export interface DeleteLoadBalancerResult { /** - *The Amazon Resource Name (ARN) of the disk.
+ *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.
*/ - arn?: string; + operations?: Operation[]; +} + +export namespace DeleteLoadBalancerResult { + export const filterSensitiveLog = (obj: DeleteLoadBalancerResult): any => ({ + ...obj, + }); +} +export interface DeleteLoadBalancerTlsCertificateRequest { /** - *The resources to which the disk is attached.
+ *The load balancer name.
*/ - attachedTo?: string; + loadBalancerName: string | undefined; /** - *The disk path.
+ *The SSL/TLS certificate name.
*/ - path?: string; + certificateName: string | undefined; /** - *The size of the disk in GB.
+ *When true
, forces the deletion of an SSL/TLS certificate.
There can be two certificates associated with a Lightsail load balancer: the primary and
+ * the backup. The force
parameter is required when the primary SSL/TLS certificate
+ * is in use by an instance attached to the load balancer.
The date when the disk was created.
+ *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.
*/ - createdAt?: Date; + operations?: Operation[]; +} + +export namespace DeleteLoadBalancerTlsCertificateResult { + export const filterSensitiveLog = (obj: DeleteLoadBalancerTlsCertificateResult): any => ({ + ...obj, + }); +} +export interface DeleteRelationalDatabaseRequest { /** - *(Deprecated) The attachment state of the disk.
+ *The name of the database snapshot created if skip final snapshot
is
+ * false
, which is the default value for that parameter.
In releases prior to November 14, 2017, this parameter returned attached
- * for system disks in the API response. It is now deprecated, but still included in the
- * response. Use isAttached
instead.
Specifying this parameter and also specifying the skip final snapshot
+ * parameter to true
results in an error.
Constraints:
+ *Must contain from 2 to 255 alphanumeric characters, or hyphens.
+ *The first and last character must be a letter or number.
+ *A Boolean value indicating whether this disk is a system disk (has an operating system - * loaded on it).
+ *Determines whether a final database snapshot is created before your database is deleted.
+ * If true
is specified, no database snapshot is created. If false
is
+ * specified, a database snapshot is created before your database is deleted.
You must specify the final relational database snapshot name
parameter if the
+ * skip final snapshot
parameter is false
.
Default: false
+ *
The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
+ *The name of the database that you are deleting.
*/ - tags?: Tag[]; + relationalDatabaseName: string | undefined; } -export namespace Disk { - export const filterSensitiveLog = (obj: Disk): any => ({ +export namespace DeleteRelationalDatabaseRequest { + export const filterSensitiveLog = (obj: DeleteRelationalDatabaseRequest): any => ({ ...obj, }); } -/** - *Describes a disk.
- */ -export interface DiskInfo { +export interface DeleteRelationalDatabaseResult { /** - *The size of the disk in GB (e.g., 32
).
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.
*/ - sizeInGb?: number; + operations?: Operation[]; +} - /** - *The disk path.
- */ - path?: string; +export namespace DeleteRelationalDatabaseResult { + export const filterSensitiveLog = (obj: DeleteRelationalDatabaseResult): any => ({ + ...obj, + }); +} +export interface DeleteRelationalDatabaseSnapshotRequest { /** - *A Boolean value indicating whether this disk is a system disk (has an operating system - * loaded on it).
+ *The name of the database snapshot that you are deleting.
*/ - isSystemDisk?: boolean; + relationalDatabaseSnapshotName: string | undefined; +} + +export namespace DeleteRelationalDatabaseSnapshotRequest { + export const filterSensitiveLog = (obj: DeleteRelationalDatabaseSnapshotRequest): any => ({ + ...obj, + }); +} +export interface DeleteRelationalDatabaseSnapshotResult { /** - *The disk name.
+ *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.
*/ - name?: string; + operations?: Operation[]; } -export namespace DiskInfo { - export const filterSensitiveLog = (obj: DiskInfo): any => ({ +export namespace DeleteRelationalDatabaseSnapshotResult { + export const filterSensitiveLog = (obj: DeleteRelationalDatabaseSnapshotResult): any => ({ ...obj, }); } -export enum DiskSnapshotState { - Completed = "completed", - Error = "error", - Pending = "pending", - Unknown = "unknown", -} - -/** - *Describes a block storage disk snapshot.
- */ -export interface DiskSnapshot { +export interface DetachCertificateFromDistributionRequest { /** - *The status of the disk snapshot operation.
+ *The name of the distribution from which to detach the certificate.
+ *Use the GetDistributions
action to get a list of distribution names that you
+ * can specify.
The size of the disk in GB.
- */ - sizeInGb?: number; +export namespace DetachCertificateFromDistributionRequest { + export const filterSensitiveLog = (obj: DetachCertificateFromDistributionRequest): any => ({ + ...obj, + }); +} +export interface DetachCertificateFromDistributionResult { /** - *The AWS Region and Availability Zone where the disk snapshot was created.
+ *An object that describes the result of the action, such as the status of the request, the + * timestamp of the request, and the resources affected by the request.
*/ - location?: ResourceLocation; + operation?: Operation; +} - /** - *The Amazon Resource Name (ARN) of the source disk from which the disk snapshot was - * created.
- */ - fromDiskArn?: string; +export namespace DetachCertificateFromDistributionResult { + export const filterSensitiveLog = (obj: DetachCertificateFromDistributionResult): any => ({ + ...obj, + }); +} +export interface DetachDiskRequest { /** - *The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
+ *The unique name of the disk you want to detach from your instance (e.g.,
+ * my-disk
).
The name of the disk snapshot (e.g., my-disk-snapshot
).
The progress of the disk snapshot operation.
+ *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.
*/ - progress?: string; + operations?: Operation[]; +} - /** - *The unique name of the source disk from which the disk snapshot was created.
- */ - fromDiskName?: string; +export namespace DetachDiskResult { + export const filterSensitiveLog = (obj: DetachDiskResult): any => ({ + ...obj, + }); +} +export interface DetachInstancesFromLoadBalancerRequest { /** - *The unique name of the source instance from which the disk (system volume) snapshot was - * created.
+ *The name of the Lightsail load balancer.
*/ - fromInstanceName?: string; + loadBalancerName: string | undefined; /** - *The date when the disk snapshot was created.
+ *An array of strings containing the names of the instances you want to detach from the load + * balancer.
*/ - createdAt?: Date; + instanceNames: string[] | undefined; +} + +export namespace DetachInstancesFromLoadBalancerRequest { + export const filterSensitiveLog = (obj: DetachInstancesFromLoadBalancerRequest): any => ({ + ...obj, + }); +} +export interface DetachInstancesFromLoadBalancerResult { /** - *A Boolean value indicating whether the snapshot was created from an automatic - * snapshot.
+ *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.
*/ - isFromAutoSnapshot?: boolean; + operations?: Operation[]; +} +export namespace DetachInstancesFromLoadBalancerResult { + export const filterSensitiveLog = (obj: DetachInstancesFromLoadBalancerResult): any => ({ + ...obj, + }); +} + +export interface DetachStaticIpRequest { /** - *The Amazon Resource Name (ARN) of the source instance from which the disk (system volume) - * snapshot was created.
+ *The name of the static IP to detach from the instance.
*/ - fromInstanceArn?: string; + staticIpName: string | undefined; +} + +export namespace DetachStaticIpRequest { + export const filterSensitiveLog = (obj: DetachStaticIpRequest): any => ({ + ...obj, + }); +} +export interface DetachStaticIpResult { /** - *The Lightsail resource type (e.g., DiskSnapshot
).
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.
*/ - resourceType?: ResourceType | string; + operations?: Operation[]; +} + +export namespace DetachStaticIpResult { + export const filterSensitiveLog = (obj: DetachStaticIpResult): any => ({ + ...obj, + }); +} +export interface DisableAddOnRequest { /** - *The Amazon Resource Name (ARN) of the disk snapshot.
+ *The name of the source resource for which to disable the add-on.
*/ - arn?: string; + resourceName: string | undefined; /** - *The support code. Include this code in your email to support when you have questions about - * an instance or another resource in Lightsail. This code enables our support team to look up - * your Lightsail information more easily.
+ *The add-on type to disable.
*/ - supportCode?: string; + addOnType: AddOnType | string | undefined; } -export namespace DiskSnapshot { - export const filterSensitiveLog = (obj: DiskSnapshot): any => ({ +export namespace DisableAddOnRequest { + export const filterSensitiveLog = (obj: DisableAddOnRequest): any => ({ ...obj, }); } -/** - *Describes a disk snapshot.
- */ -export interface DiskSnapshotInfo { +export interface DisableAddOnResult { /** - *The size of the disk in GB (e.g., 32
).
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.
*/ - sizeInGb?: number; + operations?: Operation[]; } -export namespace DiskSnapshotInfo { - export const filterSensitiveLog = (obj: DiskSnapshotInfo): any => ({ +export namespace DisableAddOnResult { + export const filterSensitiveLog = (obj: DisableAddOnResult): any => ({ ...obj, }); } +export enum DiskState { + Available = "available", + Error = "error", + InUse = "in-use", + Pending = "pending", + Unknown = "unknown", +} + /** - *Describes the specifications of a distribution bundle.
+ *Describes a system disk or a block storage disk.
*/ -export interface DistributionBundle { +export interface Disk { /** - *Indicates whether the bundle is active, and can be specified for a new - * distribution.
+ *The unique name of the disk.
*/ - isActive?: boolean; + name?: string; /** - *The monthly network transfer quota of the bundle.
+ *The input/output operations per second (IOPS) of the disk.
*/ - transferPerMonthInGb?: number; + iops?: number; /** - *The name of the distribution bundle.
+ *A Boolean value indicating whether the disk is attached.
*/ - name?: string; + isAttached?: boolean; /** - *The monthly price, in US dollars, of the bundle.
+ *(Deprecated) The attachment state of the disk.
+ *In releases prior to November 14, 2017, this parameter returned attached
+ * for system disks in the API response. It is now deprecated, but still included in the
+ * response. Use isAttached
instead.
The ID of the bundle.
+ *The date when the disk was created.
*/ - bundleId?: string; -} + createdAt?: Date; -export namespace DistributionBundle { - export const filterSensitiveLog = (obj: DistributionBundle): any => ({ - ...obj, - }); -} + /** + *A Boolean value indicating whether this disk is a system disk (has an operating system + * loaded on it).
+ */ + isSystemDisk?: boolean; -export enum DistributionMetricName { - BytesDownloaded = "BytesDownloaded", - BytesUploaded = "BytesUploaded", - Http4xxErrorRate = "Http4xxErrorRate", - Http5xxErrorRate = "Http5xxErrorRate", - Requests = "Requests", - TotalErrorRate = "TotalErrorRate", -} + /** + *An array of objects representing the add-ons enabled on the disk.
+ */ + addOns?: AddOn[]; -/** - *Describes a domain where you are storing recordsets in Lightsail.
- */ -export interface Domain { /** *The tag keys and optional values for the resource. For more information about tags in
* Lightsail, see the Lightsail
@@ -5273,24 +5783,43 @@ export interface Domain {
tags?: Tag[];
/**
- * The date when the domain recordset was created. Describes the status of the disk. The resource type. The resources to which the disk is attached. The AWS Region and Availability Zones where the domain recordset was created. The size of the disk in GB. The AWS Region and Availability Zone where the disk is located. An array of key-value pairs containing information about the domain entries. The disk path. The Amazon Resource Name (ARN) of the disk. (Deprecated) The number of GB in use by the disk. In releases prior to November 14, 2017, this parameter was not included in the API
+ * response. It is now deprecated. The support code. Include this code in your email to support when you have questions about
@@ -5300,251 +5829,496 @@ export interface Domain {
supportCode?: string;
/**
- * The Amazon Resource Name (ARN) of the domain recordset (e.g.,
- * The name of the domain. The Lightsail resource type (e.g., Describes a disk. The disk name. The size of the disk in GB (e.g., A base64-encoded public key of the The disk path. A base64-encoded RSA private key. A Boolean value indicating whether this disk is a system disk (has an operating system
+ * loaded on it). Describes a block storage disk snapshot. The name of the source resource for which to enable or modify the add-on. The AWS Region and Availability Zone where the disk snapshot was created. An array of strings representing the add-on to enable or modify. The progress of the disk snapshot operation. The name of the disk snapshot (e.g., 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. The size of the disk in GB. The Amazon Resource Name (ARN) of the source instance from which the disk (system volume)
+ * snapshot was created. The name of the instance or disk snapshot to be exported to Amazon EC2. The support code. Include this code in your email to support when you have questions about
+ * an instance or another resource in Lightsail. This code enables our support team to look up
+ * your Lightsail information more easily. The Amazon Resource Name (ARN) of the disk snapshot. 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. The status of the disk snapshot operation. The date when the disk snapshot was created. Describes an instance snapshot. The bundle ID from which the source instance was created (e.g.,
- * The unique name of the source instance from which the disk (system volume) snapshot was
+ * created. A list of objects describing the disks that were attached to the source instance. The Lightsail resource type (e.g., The blueprint ID from which the source instance (e.g., The unique name of the source disk from which the disk snapshot was created. A Boolean value indicating whether the snapshot was created from an automatic
+ * snapshot. The Amazon Resource Name (ARN) of the source disk from which the disk snapshot was
+ * created. The tag keys and optional values for the resource. For more information about tags in
+ * Lightsail, see the Lightsail
+ * Dev Guide. Describes the source of an export snapshot record. Describes a disk snapshot. The Amazon Resource Name (ARN) of the snapshot's source instance or disk. The date when the source instance or disk snapshot was created. The size of the disk in GB (e.g., The name of the snapshot's source instance or disk. Describes the specifications of a distribution bundle. The Amazon Resource Name (ARN) of the source instance or disk snapshot. The name of the distribution bundle. A list of objects describing an instance snapshot. Indicates whether the bundle is active, and can be specified for a new
+ * distribution. A list of objects describing a disk snapshot. The monthly network transfer quota of the bundle. The name of the source instance or disk snapshot. The ID of the bundle. The Lightsail resource type (e.g., The monthly price, in US dollars, of the bundle. Describes an export snapshot record. Describes a domain where you are storing recordsets in Lightsail. The AWS Region and Availability Zone where the export snapshot record is located. The support code. Include this code in your email to support when you have questions about
+ * an instance or another resource in Lightsail. This code enables our support team to look up
+ * your Lightsail information more easily. The state of the export snapshot record. The Amazon Resource Name (ARN) of the domain recordset (e.g.,
+ * The date when the export snapshot record was created. The date when the domain recordset was created. A list of objects describing the destination of the export snapshot record. An array of key-value pairs containing information about the domain entries. A list of objects describing the source of the export snapshot record. The AWS Region and Availability Zones where the domain recordset was created. The Amazon Resource Name (ARN) of the export snapshot record. The tag keys and optional values for the resource. For more information about tags in
+ * Lightsail, see the Lightsail
+ * Dev Guide. The Lightsail resource type (e.g., The resource type. The export snapshot record name. The name of the domain. The token to advance to the next page of results from your request. To get a page token, perform an initial A base64-encoded RSA private key. A base64-encoded public key of the The name of the source resource for which to enable or modify the add-on. An array of strings representing the add-on to enable or modify. 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. The name of the instance or disk snapshot to be exported to Amazon EC2. 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. Describes an instance snapshot. The blueprint ID from which the source instance (e.g., The bundle ID from which the source instance was created (e.g.,
+ * A list of objects describing the disks that were attached to the source instance. Describes the source of an export snapshot record. The name of the snapshot's source instance or disk. The Amazon Resource Name (ARN) of the snapshot's source instance or disk. A list of objects describing an instance snapshot. The date when the source instance or disk snapshot was created. The Lightsail resource type (e.g., A list of objects describing a disk snapshot. The name of the source instance or disk snapshot. The Amazon Resource Name (ARN) of the source instance or disk snapshot. Describes an export snapshot record. A list of objects describing the source of the export snapshot record. A list of objects describing the destination of the export snapshot record. The date when the export snapshot record was created. The state of the export snapshot record. The AWS Region and Availability Zone where the export snapshot record is located. The Amazon Resource Name (ARN) of the export snapshot record. The Lightsail resource type (e.g., The export snapshot record name. The token to advance to the next page of results from your request. To get a page token, perform an initial The token to advance to the next page of resutls from your request. The token to advance to the next page of results from your request. A next page token is not returned if there are no more results to display. To get the next page of results, perform another The token to advance to the next page of results from your request. To get a page token, perform an initial The name of the alarm. Specify an alarm name to return information about a specific alarm.arn:aws:lightsail:global:123456789101:Domain/824cede0-abc7-4f84-8dbc-12345EXAMPLE
).Disk
).32
).ssh-rsa
type.my-disk-snapshot
).micro_1_0
).DiskSnapshot
).os_debian_8_3
).32
).InstanceSnapshot
or
- * DiskSnapshot
).arn:aws:lightsail:global:123456789101:Domain/824cede0-abc7-4f84-8dbc-12345EXAMPLE
).ExportSnapshotRecord
).GetActiveNames
request. If your
- * results are paginated, the response will return a next page token that you can specify as the
- * page token in a subsequent request.ssh-rsa
type.os_debian_8_3
).micro_1_0
).InstanceSnapshot
or
+ * DiskSnapshot
).ExportSnapshotRecord
).GetActiveNames
request. If your
+ * results are paginated, the response will return a next page token that you can specify as the
+ * page token in a subsequent request.GetActiveNames
request and
* specify the next page token using the pageToken
parameter.GetAlarms
request. If your results
- * are paginated, the response will return a next page token that you can specify as the page
- * token in a subsequent request.
The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetAlarms
request. If your results
+ * are paginated, the response will return a next page token that you can specify as the page
+ * token in a subsequent request.
The token to advance to the next page of resutls from your request.
+ *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another GetAlarms
request and
* specify the next page token using the pageToken
parameter.
The name of the source instance or disk for the automatic snapshots.
+ *An array of objects that describe the automatic snapshots that are available for the + * specified source instance or disk.
*/ - resourceName?: string; + autoSnapshots?: AutoSnapshotDetails[]; /** *The resource type (e.g., Instance
or Disk
).
An array of objects that describe the automatic snapshots that are available for the - * specified source instance or disk.
+ *The name of the source instance or disk for the automatic snapshots.
*/ - autoSnapshots?: AutoSnapshotDetails[]; + resourceName?: string; } export namespace GetAutoSnapshotsResult { @@ -5691,7 +6465,7 @@ export interface GetBlueprintsResult { blueprints?: Blueprint[]; /** - *The token to advance to the next page of resutls from your request.
+ *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another GetBlueprints
request and
* specify the next page token using the pageToken
parameter.
A Boolean value that indicates whether to include inactive bundle results in your - * request.
- */ - includeInactive?: boolean; - /** *The token to advance to the next page of results from your request.
*To get a page token, perform an initial GetBundles
request. If your results
@@ -5719,6 +6487,12 @@ export interface GetBundlesRequest {
* token in a subsequent request.
A Boolean value that indicates whether to include inactive bundle results in your + * request.
+ */ + includeInactive?: boolean; } export namespace GetBundlesRequest { @@ -5729,17 +6503,17 @@ export namespace GetBundlesRequest { export interface GetBundlesResult { /** - *The token to advance to the next page of resutls from your request.
+ *An array of key-value pairs that contains information about the available bundles.
+ */ + bundles?: Bundle[]; + + /** + *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another GetBundles
request and
* specify the next page token using the pageToken
parameter.
An array of key-value pairs that contains information about the available bundles.
- */ - bundles?: Bundle[]; } export namespace GetBundlesResult { @@ -5749,21 +6523,9 @@ export namespace GetBundlesResult { } export interface GetCertificatesRequest { - /** - *The status of the certificates for which to return information.
- * - *For example, specify ISSUED
to return only certificates with an
- * ISSUED
status.
When omitted, the response includes all of your certificates in the AWS region where the - * request is made, regardless of their current status.
- */ - certificateStatuses?: (CertificateStatus | string)[]; - /** *The name for the certificate for which to return information.
- * - *When omitted, the response includes all of your certificates in the AWS region where the + *
When omitted, the response includes all of your certificates in the AWS Region where the * request is made.
*/ certificateName?: string; @@ -5771,11 +6533,19 @@ export interface GetCertificatesRequest { /** *Indicates whether to include detailed information about the certificates in the * response.
- * *When omitted, the response includes only the certificate names, Amazon Resource Names * (ARNs), domain names, and tags.
*/ includeCertificateDetails?: boolean; + + /** + *The status of the certificates for which to return information.
+ *For example, specify ISSUED
to return only certificates with an
+ * ISSUED
status.
When omitted, the response includes all of your certificates in the AWS Region where the + * request is made, regardless of their current status.
+ */ + certificateStatuses?: (CertificateStatus | string)[]; } export namespace GetCertificatesRequest { @@ -5815,18 +6585,18 @@ export namespace GetCloudFormationStackRecordsRequest { export interface GetCloudFormationStackRecordsResult { /** - *A list of objects describing the CloudFormation stack records.
- */ - cloudFormationStackRecords?: CloudFormationStackRecord[]; - - /** - *The token to advance to the next page of resutls from your request.
+ *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another
* GetCloudFormationStackRecords
request and specify the next page token using the
* pageToken
parameter.
A list of objects describing the CloudFormation stack records.
+ */ + cloudFormationStackRecords?: CloudFormationStackRecord[]; } export namespace GetCloudFormationStackRecordsResult { @@ -5864,196 +6634,249 @@ export namespace GetContactMethodsResult { }); } -export interface GetDiskRequest { - /** - *The name of the disk (e.g., my-disk
).
An object containing information about the disk.
+ *Metadata about Lightsail containers, such as the current version of the Lightsail + * Control (lightsailctl) plugin.
*/ - disk?: Disk; + metadata?: { [key: string]: string }[]; } -export namespace GetDiskResult { - export const filterSensitiveLog = (obj: GetDiskResult): any => ({ +export namespace GetContainerAPIMetadataResult { + export const filterSensitiveLog = (obj: GetContainerAPIMetadataResult): any => ({ ...obj, }); } -export interface GetDisksRequest { +export interface GetContainerImagesRequest { /** - *The token to advance to the next page of results from your request.
- *To get a page token, perform an initial GetDisks
request. If your results are
- * paginated, the response will return a next page token that you can specify as the page token
- * in a subsequent request.
The name of the container service for which to return registered container images.
*/ - pageToken?: string; + serviceName: string | undefined; } -export namespace GetDisksRequest { - export const filterSensitiveLog = (obj: GetDisksRequest): any => ({ +export namespace GetContainerImagesRequest { + export const filterSensitiveLog = (obj: GetContainerImagesRequest): any => ({ ...obj, }); } -export interface GetDisksResult { - /** - *An array of objects containing information about all block storage disks.
- */ - disks?: Disk[]; - +export interface GetContainerImagesResult { /** - *The token to advance to the next page of resutls from your request.
- *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetDisks
request and specify
- * the next page token using the pageToken
parameter.
An array of objects that describe container images that are registered to the container + * service.
*/ - nextPageToken?: string; + containerImages?: ContainerImage[]; } -export namespace GetDisksResult { - export const filterSensitiveLog = (obj: GetDisksResult): any => ({ +export namespace GetContainerImagesResult { + export const filterSensitiveLog = (obj: GetContainerImagesResult): any => ({ ...obj, }); } -export interface GetDiskSnapshotRequest { +export interface GetContainerLogRequest { /** - *The name of the disk snapshot (e.g., my-disk-snapshot
).
The pattern to use to filter the returned log events to a specific term.
+ * + *The following are a few examples of filter patterns that you can specify:
+ *To return all log events, specify a filter pattern of ""
.
To exclude log events that contain the ERROR
term, and return all other
+ * log events, specify a filter pattern of "-ERROR"
.
To return log events that contain the ERROR
term, specify a filter
+ * pattern of "ERROR"
.
To return log events that contain both the ERROR
and
+ * Exception
terms, specify a filter pattern of "ERROR
+ * Exception"
.
To return log events that contain the ERROR
+ * or the Exception
term, specify a filter pattern of
+ * "?ERROR ?Exception"
.
The token to advance to the next page of results from your request.
+ * + *To get a page token, perform an initial GetContainerLog
request. If your
+ * results are paginated, the response will return a next page token that you can specify as the
+ * page token in a subsequent request.
An object containing information about the disk snapshot.
+ *The end of the time interval for which to get log data.
+ * + *Constraints:
+ * + *Specified in Coordinated Universal Time (UTC).
+ *Specified in the Unix time format.
+ * + *For example, if you wish to use an end time of October 1, 2018, at 9 PM UTC, specify
+ * 1538427600
as the end time.
You can convert a human-friendly time to Unix time format using a converter like Epoch converter.
*/ - diskSnapshot?: DiskSnapshot; -} + endTime?: Date; -export namespace GetDiskSnapshotResult { - export const filterSensitiveLog = (obj: GetDiskSnapshotResult): any => ({ - ...obj, - }); -} + /** + *The name of the container service for which to get a container log.
+ */ + serviceName: string | undefined; -export interface GetDiskSnapshotsRequest { /** - *The token to advance to the next page of results from your request.
- *To get a page token, perform an initial GetDiskSnapshots
request. If your
- * results are paginated, the response will return a next page token that you can specify as the
- * page token in a subsequent request.
The start of the time interval for which to get log data.
+ * + *Constraints:
+ * + *Specified in Coordinated Universal Time (UTC).
+ *Specified in the Unix time format.
+ * + *For example, if you wish to use a start time of October 1, 2018, at 8 PM UTC, specify
+ * 1538424000
as the start time.
You can convert a human-friendly time to Unix time format using a converter like Epoch converter.
*/ - pageToken?: string; + startTime?: Date; + + /** + *The name of the container that is either running or previously ran on the container + * service for which to return a log.
+ */ + containerName: string | undefined; } -export namespace GetDiskSnapshotsRequest { - export const filterSensitiveLog = (obj: GetDiskSnapshotsRequest): any => ({ +export namespace GetContainerLogRequest { + export const filterSensitiveLog = (obj: GetContainerLogRequest): any => ({ ...obj, }); } -export interface GetDiskSnapshotsResult { +export interface GetContainerLogResult { /** - *An array of objects containing information about all block storage disk snapshots.
+ *An array of objects that describe the log events of a container.
*/ - diskSnapshots?: DiskSnapshot[]; + logEvents?: ContainerServiceLogEvent[]; /** - *The token to advance to the next page of resutls from your request.
+ *The token to advance to the next page of results from your request.
+ * *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetDiskSnapshots
request and
+ *
+ *
To get the next page of results, perform another GetContainerLog
request and
* specify the next page token using the pageToken
parameter.
An object that describes a distribution bundle.
+ *The name of the container service for which to return deployments.
*/ - bundles?: DistributionBundle[]; + serviceName: string | undefined; } -export namespace GetDistributionBundlesResult { - export const filterSensitiveLog = (obj: GetDistributionBundlesResult): any => ({ +export namespace GetContainerServiceDeploymentsRequest { + export const filterSensitiveLog = (obj: GetContainerServiceDeploymentsRequest): any => ({ ...obj, }); } -export interface GetDistributionLatestCacheResetRequest { +export interface GetContainerServiceDeploymentsResult { /** - *The name of the distribution for which to return the timestamp of the last cache - * reset.
- * - *Use the GetDistributions
action to get a list of distribution names that you
- * can specify.
When omitted, the response includes the latest cache reset timestamp of all your - * distributions.
+ *An array of objects that describe deployments for a container service.
*/ - distributionName?: string; + deployments?: ContainerServiceDeployment[]; } -export namespace GetDistributionLatestCacheResetRequest { - export const filterSensitiveLog = (obj: GetDistributionLatestCacheResetRequest): any => ({ +export namespace GetContainerServiceDeploymentsResult { + export const filterSensitiveLog = (obj: GetContainerServiceDeploymentsResult): any => ({ ...obj, }); } -export interface GetDistributionLatestCacheResetResult { +export interface GetContainerServiceMetricDataRequest { /** - *The status of the last cache reset.
+ *The name of the container service for which to get metric data.
*/ - status?: string; + serviceName: string | undefined; /** - *The timestamp of the last cache reset (e.g., 1479734909.17
) in Unix time
- * format.
The metric for which you want to return information.
+ * + *Valid container service metric names are listed below, along with the most useful + * statistics to include in your request, and the published unit value.
+ * + *
+ * CPUUtilization
- The average percentage of compute units that are
+ * currently in use across all nodes of the container service. This metric identifies the
+ * processing power required to run containers on each node of the container service.
Statistics: The most useful statistics are Maximum
and
+ * Average
.
Unit: The published unit is Percent
.
+ * MemoryUtilization
- The average percentage of available memory that is
+ * currently in use across all nodes of the container service. This metric identifies the
+ * memory required to run containers on each node of the container service.
Statistics: The most useful statistics are Maximum
and
+ * Average
.
Unit: The published unit is Percent
.
The end time of the time period.
+ */ + endTime: Date | undefined; -export interface GetDistributionMetricDataRequest { /** *The statistic for the metric.
+ * *The following statistics are available:
+ * *@@ -6072,9 +6895,10 @@ export interface GetDistributionMetricDataRequest { *
- * Average
- The value of Sum / SampleCount during the specified period. By
- * comparing this statistic with the Minimum and Maximum values, you can determine the full
- * scope of a metric and how close the average use is to the Minimum and Maximum values. This
+ * Average
- The value of Sum
/ SampleCount
during
+ * the specified period. By comparing this statistic with the Minimum
and
+ * Maximum
values, you can determine the full scope of a metric and how close
+ * the average use is to the Minimum
and Maximum
values. This
* comparison helps you to know when to increase or decrease your resources.
The end of the time interval for which to get metric data.
- *Constraints:
- *Specified in Coordinated Universal Time (UTC).
- *Specified in the Unix time format.
- *For example, if you wish to use an end time of October 1, 2018, at 9 PM UTC, specify
- * 1538427600
as the end time.
You can convert a human-friendly time to Unix time format using a converter like Epoch converter.
- */ - endTime: Date | undefined; - - /** - *The unit for the metric data request.
- * - *Valid units depend on the metric data being requested. For the valid units with each
- * available metric, see the metricName
parameter.
The metric for which you want to return information.
- * - *Valid distribution metric names are listed below, along with the most useful
- * statistics
to include in your request, and the published unit
- * value.
- *
- * Requests
- * - The total number of viewer
- * requests received by your Lightsail distribution, for all HTTP methods, and for both
- * HTTP and HTTPS requests.
- * Statistics
: The most useful statistic is Sum
.
- * Unit
: The published unit is None
.
- *
- * BytesDownloaded
- * - The number of bytes
- * downloaded by viewers for GET, HEAD, and OPTIONS requests.
- * Statistics
: The most useful statistic is Sum
.
- * Unit
: The published unit is None
.
- *
- * BytesUploaded
- * - The number of bytes
- * uploaded to your origin by your Lightsail distribution, using POST and PUT
- * requests.
- * Statistics
: The most useful statistic is Sum
.
- * Unit
: The published unit is None
.
- *
- * TotalErrorRate
- * - The percentage of all
- * viewer requests for which the response's HTTP status code was 4xx or 5xx.
- * Statistics
: The most useful statistic is Average
.
- * Unit
: The published unit is Percent
.
- *
- * 4xxErrorRate
- * - The percentage of all
- * viewer requests for which the response's HTTP status cod was 4xx. In these cases, the
- * client or client viewer may have made an error. For example, a status code of 404 (Not
- * Found) means that the client requested an object that could not be found.
- * Statistics
: The most useful statistic is Average
.
- * Unit
: The published unit is Percent
.
- *
- * 5xxErrorRate
- * - The percentage of all
- * viewer requests for which the response's HTTP status code was 5xx. In these cases, the
- * origin server did not satisfy the requests. For example, a status code of 503 (Service
- * Unavailable) means that the origin server is currently unavailable.
- * Statistics
: The most useful statistic is Average
.
- * Unit
: The published unit is Percent
.
The name of the distribution for which to get metric data.
- * - *Use the GetDistributions
action to get a list of distribution names that you
- * can specify.
The granularity, in seconds, for the metric data points that will be returned.
+ *The granularity, in seconds, of the returned data points.
+ * + *All container service metric data is available in 5-minute (300 seconds) + * granularity.
*/ period: number | undefined; /** - *The start of the time interval for which to get metric data.
- *Constraints:
- *Specified in Coordinated Universal Time (UTC).
- *Specified in the Unix time format.
- *For example, if you wish to use a start time of October 1, 2018, at 8 PM UTC, specify
- * 1538424000
as the start time.
You can convert a human-friendly time to Unix time format using a converter like Epoch converter.
+ *The start time of the time period.
*/ startTime: Date | undefined; } -export namespace GetDistributionMetricDataRequest { - export const filterSensitiveLog = (obj: GetDistributionMetricDataRequest): any => ({ +export namespace GetContainerServiceMetricDataRequest { + export const filterSensitiveLog = (obj: GetContainerServiceMetricDataRequest): any => ({ ...obj, }); } @@ -6237,9 +6935,9 @@ export namespace GetDistributionMetricDataRequest { */ export interface MetricDatapoint { /** - *The sample count.
+ *The sum.
*/ - sampleCount?: number; + sum?: number; /** *The timestamp (e.g., 1479816991.349
).
The sum.
+ *The unit.
*/ - sum?: number; + unit?: MetricUnit | string; /** - *The unit.
+ *The sample count.
*/ - unit?: MetricUnit | string; + sampleCount?: number; /** *The average.
@@ -6278,2881 +6976,1820 @@ export namespace MetricDatapoint { }); } -export interface GetDistributionMetricDataResult { +export interface GetContainerServiceMetricDataResult { /** - *The name of the metric returned.
+ *An array of objects that describe the metric data returned.
*/ - metricName?: DistributionMetricName | string; + metricData?: MetricDatapoint[]; /** - *An array of objects that describe the metric data returned.
+ *The name of the metric returned.
*/ - metricData?: MetricDatapoint[]; + metricName?: ContainerServiceMetricName | string; } -export namespace GetDistributionMetricDataResult { - export const filterSensitiveLog = (obj: GetDistributionMetricDataResult): any => ({ +export namespace GetContainerServiceMetricDataResult { + export const filterSensitiveLog = (obj: GetContainerServiceMetricDataResult): any => ({ ...obj, }); } -export interface GetDistributionsRequest { - /** - *The name of the distribution for which to return information.
- * - *Use the GetDistributions
action to get a list of distribution names that you
- * can specify.
When omitted, the response includes all of your distributions in the AWS Region where - * the request is made.
- */ - distributionName?: string; +export interface GetContainerServicePowersRequest {} + +export namespace GetContainerServicePowersRequest { + export const filterSensitiveLog = (obj: GetContainerServicePowersRequest): any => ({ + ...obj, + }); +} +export interface GetContainerServicePowersResult { /** - *The token to advance to the next page of results from your request.
- * - *To get a page token, perform an initial GetDistributions
request. If your
- * results are paginated, the response will return a next page token that you can specify as the
- * page token in a subsequent request.
An array of objects that describe the powers that can be specified for a container + * service.
*/ - pageToken?: string; + powers?: ContainerServicePower[]; } -export namespace GetDistributionsRequest { - export const filterSensitiveLog = (obj: GetDistributionsRequest): any => ({ +export namespace GetContainerServicePowersResult { + export const filterSensitiveLog = (obj: GetContainerServicePowersResult): any => ({ ...obj, }); } -export interface GetDistributionsResult { - /** - *An array of objects that describe your distributions.
- */ - distributions?: LightsailDistribution[]; - +export interface GetContainerServicesRequest { /** - *The token to advance to the next page of results from your request.
+ *The name of the container service for which to return information.
* - *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetDistributions
request and
- * specify the next page token using the pageToken
parameter.
When omitted, the response includes all of your container services in the AWS Region + * where the request is made.
*/ - nextPageToken?: string; + serviceName?: string; } -export namespace GetDistributionsResult { - export const filterSensitiveLog = (obj: GetDistributionsResult): any => ({ +export namespace GetContainerServicesRequest { + export const filterSensitiveLog = (obj: GetContainerServicesRequest): any => ({ ...obj, }); } -export interface GetDomainRequest { +export interface GetDiskRequest { /** - *The domain name for which your want to return information about.
+ *The name of the disk (e.g., my-disk
).
An array of key-value pairs containing information about your get domain request.
+ *An object containing information about the disk.
*/ - domain?: Domain; + disk?: Disk; } -export namespace GetDomainResult { - export const filterSensitiveLog = (obj: GetDomainResult): any => ({ +export namespace GetDiskResult { + export const filterSensitiveLog = (obj: GetDiskResult): any => ({ ...obj, }); } -export interface GetDomainsRequest { +export interface GetDisksRequest { /** *The token to advance to the next page of results from your request.
- *To get a page token, perform an initial GetDomains
request. If your results
- * are paginated, the response will return a next page token that you can specify as the page
- * token in a subsequent request.
To get a page token, perform an initial GetDisks
request. If your results are
+ * paginated, the response will return a next page token that you can specify as the page token
+ * in a subsequent request.
An array of key-value pairs containing information about each of the domain entries in the - * user's account.
+ *The token to advance to the next page of results from your request.
+ *A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetDisks
request and specify
+ * the next page token using the pageToken
parameter.
The token to advance to the next page of resutls from your request.
- *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetDomains
request and
- * specify the next page token using the pageToken
parameter.
An array of objects containing information about all block storage disks.
*/ - nextPageToken?: string; + disks?: Disk[]; } -export namespace GetDomainsResult { - export const filterSensitiveLog = (obj: GetDomainsResult): any => ({ +export namespace GetDisksResult { + export const filterSensitiveLog = (obj: GetDisksResult): any => ({ ...obj, }); } -export interface GetExportSnapshotRecordsRequest { +export interface GetDiskSnapshotRequest { /** - *The token to advance to the next page of results from your request.
- *To get a page token, perform an initial GetExportSnapshotRecords
request. If
- * your results are paginated, the response will return a next page token that you can specify as
- * the page token in a subsequent request.
The name of the disk snapshot (e.g., my-disk-snapshot
).
The token to advance to the next page of resutls from your request.
- *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetExportSnapshotRecords
- * request and specify the next page token using the pageToken
parameter.
A list of objects describing the export snapshot records.
+ *An object containing information about the disk snapshot.
*/ - exportSnapshotRecords?: ExportSnapshotRecord[]; + diskSnapshot?: DiskSnapshot; } -export namespace GetExportSnapshotRecordsResult { - export const filterSensitiveLog = (obj: GetExportSnapshotRecordsResult): any => ({ +export namespace GetDiskSnapshotResult { + export const filterSensitiveLog = (obj: GetDiskSnapshotResult): any => ({ ...obj, }); } -export interface GetInstanceRequest { +export interface GetDiskSnapshotsRequest { /** - *The name of the instance.
+ *The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetDiskSnapshots
request. If your
+ * results are paginated, the response will return a next page token that you can specify as the
+ * page token in a subsequent request.
Describes the hardware for the instance.
- */ -export interface InstanceHardware { +export interface GetDiskSnapshotsResult { /** - *The amount of RAM in GB on the instance (e.g., 1.0
).
The token to advance to the next page of results from your request.
+ *A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetDiskSnapshots
request and
+ * specify the next page token using the pageToken
parameter.
The number of vCPUs the instance has.
+ *An array of objects containing information about all block storage disk snapshots.
*/ - cpuCount?: number; + diskSnapshots?: DiskSnapshot[]; +} - /** - *The disks attached to the instance.
- */ - disks?: Disk[]; +export namespace GetDiskSnapshotsResult { + export const filterSensitiveLog = (obj: GetDiskSnapshotsResult): any => ({ + ...obj, + }); } -export namespace InstanceHardware { - export const filterSensitiveLog = (obj: InstanceHardware): any => ({ +export interface GetDistributionBundlesRequest {} + +export namespace GetDistributionBundlesRequest { + export const filterSensitiveLog = (obj: GetDistributionBundlesRequest): any => ({ ...obj, }); } -/** - *Describes the monthly data transfer in and out of your virtual private server (or - * instance).
- */ -export interface MonthlyTransfer { +export interface GetDistributionBundlesResult { /** - *The amount allocated per month (in GB).
+ *An object that describes a distribution bundle.
*/ - gbPerMonthAllocated?: number; + bundles?: DistributionBundle[]; } -export namespace MonthlyTransfer { - export const filterSensitiveLog = (obj: MonthlyTransfer): any => ({ +export namespace GetDistributionBundlesResult { + export const filterSensitiveLog = (obj: GetDistributionBundlesResult): any => ({ ...obj, }); } -export enum PortAccessType { - Private = "Private", - Public = "Public", -} - -/** - *Describes information about ports for an Amazon Lightsail instance.
- */ -export interface InstancePortInfo { +export interface GetDistributionLatestCacheResetRequest { /** - *The IP address, or range of IP addresses in CIDR notation, that are allowed to connect to - * an instance through the ports, and the protocol. Lightsail supports IPv4 addresses.
- *For more information about CIDR block notation, see Classless - * Inter-Domain Routing on Wikipedia.
+ *The name of the distribution for which to return the timestamp of the last cache + * reset.
+ *Use the GetDistributions
action to get a list of distribution names that you
+ * can specify.
When omitted, the response includes the latest cache reset timestamp of all your + * distributions.
*/ - cidrs?: string[]; + distributionName?: string; +} - /** - *The common name of the port information.
- */ - commonName?: string; +export namespace GetDistributionLatestCacheResetRequest { + export const filterSensitiveLog = (obj: GetDistributionLatestCacheResetRequest): any => ({ + ...obj, + }); +} +export interface GetDistributionLatestCacheResetResult { /** - *The type of access (Public
or Private
).
The status of the last cache reset.
*/ - accessType?: PortAccessType | string; + status?: string; /** - *An alias that defines access for a preconfigured range of IP addresses.
- *The only alias currently supported is lightsail-connect
, which allows IP
- * addresses of the browser-based RDP/SSH client in the Lightsail console to connect to your
- * instance.
The timestamp of the last cache reset (e.g., 1479734909.17
) in Unix time
+ * format.
The first port in a range of open ports on an instance.
- *Allowed ports:
+ *The end of the time interval for which to get metric data.
+ *Constraints:
*TCP and UDP - 0
to 65535
- *
Specified in Coordinated Universal Time (UTC).
*ICMP - The ICMP type. For example, specify 8
as the fromPort
- * (ICMP type), and -1
as the toPort
(ICMP code), to enable ICMP
- * Ping. For more information, see Control Messages on Wikipedia.
Specified in the Unix time format.
+ *For example, if you wish to use an end time of October 1, 2018, at 9 PM UTC, specify
+ * 1538427600
as the end time.
You can convert a human-friendly time to Unix time format using a converter like Epoch converter.
*/ - fromPort?: number; + endTime: Date | undefined; /** - *The location from which access is allowed. For example, Anywhere (0.0.0.0/0)
,
- * or Custom
if a specific IP address or range of IP addresses is allowed.
The name of the distribution for which to get metric data.
+ *Use the GetDistributions
action to get a list of distribution names that you
+ * can specify.
The last port in a range of open ports on an instance.
- *Allowed ports:
+ *The statistic for the metric.
+ *The following statistics are available:
*TCP and UDP - 0
to 65535
- *
+ * Minimum
- The lowest value observed during the specified period. Use this
+ * value to determine low volumes of activity for your application.
ICMP - The ICMP code. For example, specify 8
as the fromPort
- * (ICMP type), and -1
as the toPort
(ICMP code), to enable ICMP
- * Ping. For more information, see Control Messages on Wikipedia.
+ * Maximum
- The highest value observed during the specified period. Use
+ * this value to determine high volumes of activity for your application.
+ * Sum
- All values submitted for the matching metric added together. You
+ * can use this statistic to determine the total volume of a metric.
+ * Average
- The value of Sum / SampleCount during the specified period. By
+ * comparing this statistic with the Minimum and Maximum values, you can determine the full
+ * scope of a metric and how close the average use is to the Minimum and Maximum values. This
+ * comparison helps you to know when to increase or decrease your resources.
+ * SampleCount
- The count, or number, of data points used for the
+ * statistical calculation.
The access direction (inbound
or outbound
).
Lightsail currently supports only inbound
access direction.
The unit for the metric data request.
+ *Valid units depend on the metric data being requested. For the valid units with each
+ * available metric, see the metricName
parameter.
The IP protocol name.
- *The name can be one of the following:
+ *The metric for which you want to return information.
+ *Valid distribution metric names are listed below, along with the most useful
+ * statistics
to include in your request, and the published unit
+ * value.
- * tcp
- Transmission Control Protocol (TCP) provides reliable, ordered, and
- * error-checked delivery of streamed data between applications running on hosts
- * communicating by an IP network. If you have an application that doesn't require reliable
- * data stream service, use UDP instead.
Requests
+ * - The total number of viewer
+ * requests received by your Lightsail distribution, for all HTTP methods, and for both
+ * HTTP and HTTPS requests.
+ *
+ * Statistics
: The most useful statistic is Sum
.
+ * Unit
: The published unit is None
.
- * all
- All transport layer protocol types. For more general information,
- * see Transport layer on
- * Wikipedia.
BytesDownloaded
+ * - The number of bytes
+ * downloaded by viewers for GET, HEAD, and OPTIONS requests.
+ *
+ * Statistics
: The most useful statistic is Sum
.
+ * Unit
: The published unit is None
.
- * udp
- With User Datagram Protocol (UDP), computer applications can send
- * messages (or datagrams) to other hosts on an Internet Protocol (IP) network. Prior
- * communications are not required to set up transmission channels or data paths.
- * Applications that don't require reliable data stream service can use UDP, which provides a
- * connectionless datagram service that emphasizes reduced latency over reliability. If you
- * do require reliable data stream service, use TCP instead.
BytesUploaded
+ * - The number of bytes
+ * uploaded to your origin by your Lightsail distribution, using POST and PUT
+ * requests.
+ *
+ * Statistics
: The most useful statistic is Sum
.
+ * Unit
: The published unit is None
.
- * icmp
- Internet Control Message Protocol (ICMP) is used to send error
- * messages and operational information indicating success or failure when communicating with
- * an instance. For example, an error is indicated when an instance could not be reached.
- * When you specify icmp
as the protocol
, you must specify the ICMP
- * type using the fromPort
parameter, and ICMP code using the
- * toPort
parameter.
TotalErrorRate
+ * - The percentage of all
+ * viewer requests for which the response's HTTP status code was 4xx or 5xx.
+ *
+ * Statistics
: The most useful statistic is Average
.
+ * Unit
: The published unit is Percent
.
Describes monthly data transfer rates and port information for an instance.
- */ -export interface InstanceNetworking { - /** - *An array of key-value pairs containing information about the ports on the instance.
+ *
+ *
+ * 4xxErrorRate
+ * - The percentage of all
+ * viewer requests for which the response's HTTP status cod was 4xx. In these cases, the
+ * client or client viewer may have made an error. For example, a status code of 404 (Not
+ * Found) means that the client requested an object that could not be found.
+ * Statistics
: The most useful statistic is Average
.
+ * Unit
: The published unit is Percent
.
+ *
+ * 5xxErrorRate
+ * - The percentage of all
+ * viewer requests for which the response's HTTP status code was 5xx. In these cases, the
+ * origin server did not satisfy the requests. For example, a status code of 503 (Service
+ * Unavailable) means that the origin server is currently unavailable.
+ * Statistics
: The most useful statistic is Average
.
+ * Unit
: The published unit is Percent
.
The amount of data in GB allocated for monthly data transfers.
+ *The granularity, in seconds, for the metric data points that will be returned.
*/ - monthlyTransfer?: MonthlyTransfer; + period: number | undefined; + + /** + *The start of the time interval for which to get metric data.
+ *Constraints:
+ *Specified in Coordinated Universal Time (UTC).
+ *Specified in the Unix time format.
+ *For example, if you wish to use a start time of October 1, 2018, at 8 PM UTC, specify
+ * 1538424000
as the start time.
You can convert a human-friendly time to Unix time format using a converter like Epoch converter.
+ */ + startTime: Date | undefined; } -export namespace InstanceNetworking { - export const filterSensitiveLog = (obj: InstanceNetworking): any => ({ +export namespace GetDistributionMetricDataRequest { + export const filterSensitiveLog = (obj: GetDistributionMetricDataRequest): any => ({ ...obj, }); } -/** - *Describes the virtual private server (or instance) status.
- */ -export interface InstanceState { +export interface GetDistributionMetricDataResult { /** - *The state of the instance (e.g., running
or pending
).
The name of the metric returned.
*/ - name?: string; + metricName?: DistributionMetricName | string; /** - *The status code for the instance.
+ *An array of objects that describe the metric data returned.
*/ - code?: number; + metricData?: MetricDatapoint[]; } -export namespace InstanceState { - export const filterSensitiveLog = (obj: InstanceState): any => ({ +export namespace GetDistributionMetricDataResult { + export const filterSensitiveLog = (obj: GetDistributionMetricDataResult): any => ({ ...obj, }); } -/** - *Describes an instance (a virtual private server).
- */ -export interface Instance { - /** - *An array of objects representing the add-ons enabled on the instance.
- */ - addOns?: AddOn[]; - +export interface GetDistributionsRequest { /** - *The support code. Include this code in your email to support when you have questions about - * an instance or another resource in Lightsail. This code enables our support team to look up - * your Lightsail information more easily.
+ *The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetDistributions
request. If your
+ * results are paginated, the response will return a next page token that you can specify as the
+ * page token in a subsequent request.
The IPv6 address of the instance.
+ *The name of the distribution for which to return information.
+ *Use the GetDistributions
action to get a list of distribution names that you
+ * can specify.
When omitted, the response includes all of your distributions in the AWS Region where + * the request is made.
*/ - ipv6Address?: string; + distributionName?: string; +} - /** - *The public IP address of the instance.
- */ - publicIpAddress?: string; +export namespace GetDistributionsRequest { + export const filterSensitiveLog = (obj: GetDistributionsRequest): any => ({ + ...obj, + }); +} +export interface GetDistributionsResult { /** - *Information about the public ports and monthly data transfer rates for the - * instance.
+ *An array of objects that describe your distributions.
*/ - networking?: InstanceNetworking; + distributions?: LightsailDistribution[]; /** - *The private IP address of the instance.
+ *The token to advance to the next page of results from your request.
+ *A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetDistributions
request and
+ * specify the next page token using the pageToken
parameter.
A Boolean value indicating whether this instance has a static IP assigned to it.
- */ - isStaticIp?: boolean; +export namespace GetDistributionsResult { + export const filterSensitiveLog = (obj: GetDistributionsResult): any => ({ + ...obj, + }); +} +export interface GetDomainRequest { /** - *The bundle for the instance (e.g., micro_1_0
).
The domain name for which your want to return information about.
*/ - bundleId?: string; + domainName: string | undefined; +} - /** - *The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
- */ - tags?: Tag[]; +export namespace GetDomainRequest { + export const filterSensitiveLog = (obj: GetDomainRequest): any => ({ + ...obj, + }); +} +export interface GetDomainResult { /** - *The user name for connecting to the instance (e.g., ec2-user
).
An array of key-value pairs containing information about your get domain request.
*/ - username?: string; + domain?: Domain; +} - /** - *The blueprint ID (e.g., os_amlinux_2016_03
).
The name of the SSH key being used to connect to the instance (e.g.,
- * LightsailDefaultKeyPair
).
The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetDomains
request. If your results
+ * are paginated, the response will return a next page token that you can specify as the page
+ * token in a subsequent request.
The timestamp when the instance was created (e.g., 1479734909.17
) in Unix
- * time format.
The region name and Availability Zone where the instance is located.
+ *An array of key-value pairs containing information about each of the domain entries in the + * user's account.
*/ - location?: ResourceLocation; + domains?: Domain[]; /** - *The status code and the state (e.g., running
) for the instance.
The token to advance to the next page of results from your request.
+ *A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetDomains
request and
+ * specify the next page token using the pageToken
parameter.
The friendly name of the blueprint (e.g., Amazon Linux
).
The type of resource (usually Instance
).
The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetExportSnapshotRecords
request. If
+ * your results are paginated, the response will return a next page token that you can specify as
+ * the page token in a subsequent request.
The size of the vCPU and the amount of RAM for the instance.
- */ - hardware?: InstanceHardware; +export namespace GetExportSnapshotRecordsRequest { + export const filterSensitiveLog = (obj: GetExportSnapshotRecordsRequest): any => ({ + ...obj, + }); +} +export interface GetExportSnapshotRecordsResult { /** - *The Amazon Resource Name (ARN) of the instance (e.g.,
- * arn:aws:lightsail:us-east-2:123456789101:Instance/244ad76f-8aad-4741-809f-12345EXAMPLE
).
The token to advance to the next page of results from your request.
+ *A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetExportSnapshotRecords
+ * request and specify the next page token using the pageToken
parameter.
The name the user gave the instance (e.g., Amazon_Linux-1GB-Ohio-1
).
A list of objects describing the export snapshot records.
*/ - name?: string; + exportSnapshotRecords?: ExportSnapshotRecord[]; } -export namespace Instance { - export const filterSensitiveLog = (obj: Instance): any => ({ +export namespace GetExportSnapshotRecordsResult { + export const filterSensitiveLog = (obj: GetExportSnapshotRecordsResult): any => ({ ...obj, }); } -export interface GetInstanceResult { +export interface GetInstanceRequest { /** - *An array of key-value pairs containing information about the specified instance.
+ *The name of the instance.
*/ - instance?: Instance; + instanceName: string | undefined; } -export namespace GetInstanceResult { - export const filterSensitiveLog = (obj: GetInstanceResult): any => ({ +export namespace GetInstanceRequest { + export const filterSensitiveLog = (obj: GetInstanceRequest): any => ({ ...obj, }); } -export enum InstanceAccessProtocol { - rdp = "rdp", - ssh = "ssh", -} +/** + *Describes the hardware for the instance.
+ */ +export interface InstanceHardware { + /** + *The amount of RAM in GB on the instance (e.g., 1.0
).
The protocol to use to connect to your instance. Defaults to ssh
.
The disks attached to the instance.
*/ - protocol?: InstanceAccessProtocol | string; + disks?: Disk[]; /** - *The name of the instance to access.
+ *The number of vCPUs the instance has.
*/ - instanceName: string | undefined; + cpuCount?: number; } -export namespace GetInstanceAccessDetailsRequest { - export const filterSensitiveLog = (obj: GetInstanceAccessDetailsRequest): any => ({ +export namespace InstanceHardware { + export const filterSensitiveLog = (obj: InstanceHardware): any => ({ ...obj, }); } /** - *Describes the public SSH host keys or the RDP certificate.
+ *Describes the monthly data transfer in and out of your virtual private server (or + * instance).
*/ -export interface HostKeyAttributes { +export interface MonthlyTransfer { /** - *The SHA-256 fingerprint of the returned SSH host key or RDP certificate.
+ *The amount allocated per month (in GB).
+ */ + gbPerMonthAllocated?: number; +} + +export namespace MonthlyTransfer { + export const filterSensitiveLog = (obj: MonthlyTransfer): any => ({ + ...obj, + }); +} + +export enum PortAccessType { + Private = "Private", + Public = "Public", +} + +/** + *Describes information about ports for an Amazon Lightsail instance.
+ */ +export interface InstancePortInfo { + /** + *The access direction (inbound
or outbound
).
Lightsail currently supports only inbound
access direction.
The location from which access is allowed. For example, Anywhere (0.0.0.0/0)
,
+ * or Custom
if a specific IP address or range of IP addresses is allowed.
The type of access (Public
or Private
).
An alias that defines access for a preconfigured range of IP addresses.
+ *The only alias currently supported is lightsail-connect
, which allows IP
+ * addresses of the browser-based RDP/SSH client in the Lightsail console to connect to your
+ * instance.
The first port in a range of open ports on an instance.
+ *Allowed ports:
*Example of an SHA-256 SSH fingerprint:
- *
- * SHA256:KTsMnRBh1IhD17HpdfsbzeGA4jOijm5tyXsMjKVbB8o
+ *
TCP and UDP - 0
to 65535
*
Example of an SHA-256 RDP fingerprint:
- *
- * 03:9b:36:9f:4b:de:4e:61:70:fc:7c:c9:78:e7:d2:1a:1c:25:a8:0c:91:f6:7c:e4:d6:a0:85:c8:b4:53:99:68
- *
ICMP - The ICMP type. For example, specify 8
as the fromPort
+ * (ICMP type), and -1
as the toPort
(ICMP code), to enable ICMP
+ * Ping. For more information, see Control Messages on Wikipedia.
The public SSH host key or the RDP certificate.
+ *The common name of the port information.
*/ - publicKey?: string; + commonName?: string; /** - *The returned RDP certificate is valid after this point in time.
- *This value is listed only for RDP certificates.
+ *The last port in a range of open ports on an instance.
+ *Allowed ports:
+ *TCP and UDP - 0
to 65535
+ *
ICMP - The ICMP code. For example, specify 8
as the fromPort
+ * (ICMP type), and -1
as the toPort
(ICMP code), to enable ICMP
+ * Ping. For more information, see Control Messages on Wikipedia.
The SHA-1 fingerprint of the returned SSH host key or RDP certificate.
+ *The IP address, or range of IP addresses in CIDR notation, that are allowed to connect to + * an instance through the ports, and the protocol. Lightsail supports IPv4 addresses.
+ *For more information about CIDR block notation, see Classless + * Inter-Domain Routing on Wikipedia.
+ */ + cidrs?: string[]; + + /** + *The IP protocol name.
+ *The name can be one of the following:
*Example of an SHA-1 SSH fingerprint:
*
- * SHA1:1CHH6FaAaXjtFOsR/t83vf91SR0
- *
tcp
- Transmission Control Protocol (TCP) provides reliable, ordered, and
+ * error-checked delivery of streamed data between applications running on hosts
+ * communicating by an IP network. If you have an application that doesn't require reliable
+ * data stream service, use UDP instead.
* Example of an SHA-1 RDP fingerprint:
*
- * af:34:51:fe:09:f0:e0:da:b8:4e:56:ca:60:c2:10:ff:38:06:db:45
- *
all
- All transport layer protocol types. For more general information,
+ * see Transport layer on
+ * Wikipedia.
+ *
+ * udp
- With User Datagram Protocol (UDP), computer applications can send
+ * messages (or datagrams) to other hosts on an Internet Protocol (IP) network. Prior
+ * communications are not required to set up transmission channels or data paths.
+ * Applications that don't require reliable data stream service can use UDP, which provides a
+ * connectionless datagram service that emphasizes reduced latency over reliability. If you
+ * do require reliable data stream service, use TCP instead.
+ * icmp
- Internet Control Message Protocol (ICMP) is used to send error
+ * messages and operational information indicating success or failure when communicating with
+ * an instance. For example, an error is indicated when an instance could not be reached.
+ * When you specify icmp
as the protocol
, you must specify the ICMP
+ * type using the fromPort
parameter, and ICMP code using the
+ * toPort
parameter.
The returned RDP certificate is not valid after this point in time.
- *This value is listed only for RDP certificates.
- */ - notValidAfter?: Date; +export namespace InstancePortInfo { + export const filterSensitiveLog = (obj: InstancePortInfo): any => ({ + ...obj, + }); +} +/** + *Describes monthly data transfer rates and port information for an instance.
+ */ +export interface InstanceNetworking { /** - *The time that the SSH host key or RDP certificate was recorded by Lightsail.
+ *An array of key-value pairs containing information about the ports on the instance.
*/ - witnessedAt?: Date; + ports?: InstancePortInfo[]; /** - *The SSH host key algorithm or the RDP certificate format.
- *For SSH host keys, the algorithm may be ssh-rsa
,
- * ecdsa-sha2-nistp256
, ssh-ed25519
, etc. For RDP certificates, the
- * algorithm is always x509-cert
.
The amount of data in GB allocated for monthly data transfers.
*/ - algorithm?: string; + monthlyTransfer?: MonthlyTransfer; } -export namespace HostKeyAttributes { - export const filterSensitiveLog = (obj: HostKeyAttributes): any => ({ +export namespace InstanceNetworking { + export const filterSensitiveLog = (obj: InstanceNetworking): any => ({ ...obj, }); } /** - *The password data for the Windows Server-based instance, including the ciphertext and the - * key pair name.
+ *Describes the virtual private server (or instance) status.
*/ -export interface PasswordData { +export interface InstanceState { /** - *The name of the key pair that you used when creating your instance. If no key pair name
- * was specified when creating the instance, Lightsail uses the default key pair
- * (LightsailDefaultKeyPair
).
If you are using a custom key pair, you need to use your own means of decrypting your
- * password using the ciphertext
. Lightsail creates the ciphertext by encrypting
- * your password with the public key part of this key pair.
The status code for the instance.
*/ - keyPairName?: string; + code?: number; /** - *The encrypted password. Ciphertext will be an empty string if access to your new instance - * is not ready yet. When you create an instance, it can take up to 15 minutes for the instance - * to be ready.
- *If you use the default key pair (LightsailDefaultKeyPair
), the decrypted
- * password will be available in the password field.
If you are using a custom key pair, you need to use your own means of decryption.
- *If you change the Administrator password on the instance, Lightsail will continue to - * return the original ciphertext value. When accessing the instance using RDP, you need to - * manually enter the Administrator password after changing it from the default.
- *The state of the instance (e.g., running
or pending
).
The parameters for gaining temporary access to one of your Amazon Lightsail - * instances.
+ *Describes an instance (a virtual private server).
*/ -export interface InstanceAccessDetails { +export interface Instance { /** - *The name of this Amazon Lightsail instance.
+ *The name the user gave the instance (e.g., Amazon_Linux-1GB-Ohio-1
).
For SSH access, the public key to use when accessing your instance For OpenSSH clients
- * (e.g., command line SSH), you should save this value to tempkey-cert.pub
.
Information about the public ports and monthly data transfer rates for the + * instance.
*/ - certKey?: string; + networking?: InstanceNetworking; /** - *Describes the public SSH host keys or the RDP certificate.
+ *The timestamp when the instance was created (e.g., 1479734909.17
) in Unix
+ * time format.
The protocol for these Amazon Lightsail instance access details.
+ *The size of the vCPU and the amount of RAM for the instance.
*/ - protocol?: InstanceAccessProtocol | string; + hardware?: InstanceHardware; /** - *The public IP address of the Amazon Lightsail instance.
+ *The Amazon Resource Name (ARN) of the instance (e.g.,
+ * arn:aws:lightsail:us-east-2:123456789101:Instance/244ad76f-8aad-4741-809f-12345EXAMPLE
).
For SSH access, the date on which the temporary keys expire.
+ *The user name for connecting to the instance (e.g., ec2-user
).
The user name to use when logging in to the Amazon Lightsail instance.
+ *The support code. Include this code in your email to support when you have questions about + * an instance or another resource in Lightsail. This code enables our support team to look up + * your Lightsail information more easily.
*/ - username?: string; + supportCode?: string; /** - *For RDP access, the password for your Amazon Lightsail instance. Password will be an empty - * string if the password for your new instance is not ready yet. When you create an instance, it - * can take up to 15 minutes for the instance to be ready.
- *If you create an instance using any key pair other than the default
- * (LightsailDefaultKeyPair
), password
will always be an empty
- * string.
If you change the Administrator password on the instance, Lightsail will continue to - * return the original password value. When accessing the instance using RDP, you need to - * manually enter the Administrator password after changing it from the default.
- *For a Windows Server-based instance, an object with the data you can use to retrieve your
- * password. This is only needed if password
is empty and the instance is not new
- * (and therefore the password is not ready yet). When you create an instance, it can take up to
- * 15 minutes for the instance to be ready.
For SSH access, the temporary private key. For OpenSSH clients (e.g., command line SSH),
- * you should save this value to tempkey
).
An array of key-value pairs containing information about a get instance access - * request.
- */ - accessDetails?: InstanceAccessDetails; -} - -export namespace GetInstanceAccessDetailsResult { - export const filterSensitiveLog = (obj: GetInstanceAccessDetailsResult): any => ({ - ...obj, - }); -} - -export enum InstanceMetricName { - BurstCapacityPercentage = "BurstCapacityPercentage", - BurstCapacityTime = "BurstCapacityTime", - CPUUtilization = "CPUUtilization", - NetworkIn = "NetworkIn", - NetworkOut = "NetworkOut", - StatusCheckFailed = "StatusCheckFailed", - StatusCheckFailed_Instance = "StatusCheckFailed_Instance", - StatusCheckFailed_System = "StatusCheckFailed_System", -} - -export interface GetInstanceMetricDataRequest { - /** - *The end time of the time period.
- */ - endTime: Date | undefined; - - /** - *The metric for which you want to return information.
- *Valid instance metric names are listed below, along with the most useful
- * statistics
to include in your request, and the published unit
- * value.
- *
- * BurstCapacityPercentage
- * - The percentage
- * of CPU performance available for your instance to burst above its baseline. Your instance
- * continuously accrues and consumes burst capacity. Burst capacity stops accruing when your
- * instance's BurstCapacityPercentage
reaches 100%. For more information, see
- * Viewing instance burst capacity in Amazon Lightsail.
- * Statistics
: The most useful statistics are Maximum
and
- * Average
.
- * Unit
: The published unit is Percent
.
- *
- * BurstCapacityTime
- * - The available amount
- * of time for your instance to burst at 100% CPU utilization. Your instance continuously
- * accrues and consumes burst capacity. Burst capacity time stops accruing when your
- * instance's BurstCapacityPercentage
metric reaches 100%.
Burst capacity time is consumed at the full rate only when your instance operates at - * 100% CPU utilization. For example, if your instance operates at 50% CPU utilization in the - * burstable zone for a 5-minute period, then it consumes CPU burst capacity minutes at a 50% - * rate in that period. Your instance consumed 2 minutes and 30 seconds of CPU burst capacity - * minutes in the 5-minute period. For more information, see Viewing instance burst capacity in Amazon Lightsail.
- *
- * Statistics
: The most useful statistics are Maximum
and
- * Average
.
- * Unit
: The published unit is Seconds
.
- *
- * CPUUtilization
- * - The percentage of
- * allocated compute units that are currently in use on the instance. This metric identifies
- * the processing power to run the applications on the instance. Tools in your operating
- * system can show a lower percentage than Lightsail when the instance is not allocated a
- * full processor core.
- * Statistics
: The most useful statistics are Maximum
and
- * Average
.
- * Unit
: The published unit is Percent
.
- *
- * NetworkIn
- * - The number of bytes received
- * on all network interfaces by the instance. This metric identifies the volume of incoming
- * network traffic to the instance. The number reported is the number of bytes received
- * during the period. Because this metric is reported in 5-minute intervals, divide the
- * reported number by 300 to find Bytes/second.
- * Statistics
: The most useful statistic is Sum
.
- * Unit
: The published unit is Bytes
.
- *
- * NetworkOut
- * - The number of bytes sent
- * out on all network interfaces by the instance. This metric identifies the volume of
- * outgoing network traffic from the instance. The number reported is the number of bytes
- * sent during the period. Because this metric is reported in 5-minute intervals, divide the
- * reported number by 300 to find Bytes/second.
- * Statistics
: The most useful statistic is Sum
.
- * Unit
: The published unit is Bytes
.
- *
- * StatusCheckFailed
- * - Reports whether the
- * instance passed or failed both the instance status check and the system status check. This
- * metric can be either 0 (passed) or 1 (failed). This metric data is available in 1-minute
- * (60 seconds) granularity.
- * Statistics
: The most useful statistic is Sum
.
- * Unit
: The published unit is Count
.
- *
- * StatusCheckFailed_Instance
- * - Reports
- * whether the instance passed or failed the instance status check. This metric can be either
- * 0 (passed) or 1 (failed). This metric data is available in 1-minute (60 seconds)
- * granularity.
- * Statistics
: The most useful statistic is Sum
.
- * Unit
: The published unit is Count
.
- *
- * StatusCheckFailed_System
- * - Reports
- * whether the instance passed or failed the system status check. This metric can be either 0
- * (passed) or 1 (failed). This metric data is available in 1-minute (60 seconds)
- * granularity.
- * Statistics
: The most useful statistic is Sum
.
- * Unit
: The published unit is Count
.
The unit for the metric data request. Valid units depend on the metric data being
- * requested. For the valid units to specify with each available metric, see the
- * metricName
parameter.
The granularity, in seconds, of the returned data points.
- *The StatusCheckFailed
, StatusCheckFailed_Instance
, and
- * StatusCheckFailed_System
instance metric data is available in 1-minute (60
- * seconds) granularity. All other instance metric data is available in 5-minute (300 seconds)
- * granularity.
The start time of the time period.
- */ - startTime: Date | undefined; - - /** - *The name of the instance for which you want to get metrics data.
- */ - instanceName: string | undefined; - - /** - *The statistic for the metric.
- *The following statistics are available:
- *
- * Minimum
- The lowest value observed during the specified period. Use this
- * value to determine low volumes of activity for your application.
- * Maximum
- The highest value observed during the specified period. Use
- * this value to determine high volumes of activity for your application.
- * Sum
- All values submitted for the matching metric added together. You
- * can use this statistic to determine the total volume of a metric.
- * Average
- The value of Sum / SampleCount during the specified period. By
- * comparing this statistic with the Minimum and Maximum values, you can determine the full
- * scope of a metric and how close the average use is to the Minimum and Maximum values. This
- * comparison helps you to know when to increase or decrease your resources.
- * SampleCount
- The count, or number, of data points used for the
- * statistical calculation.
The name of the metric returned.
- */ - metricName?: InstanceMetricName | string; - - /** - *An array of objects that describe the metric data returned.
- */ - metricData?: MetricDatapoint[]; -} - -export namespace GetInstanceMetricDataResult { - export const filterSensitiveLog = (obj: GetInstanceMetricDataResult): any => ({ - ...obj, - }); -} - -export interface GetInstancePortStatesRequest { - /** - *The name of the instance for which to return firewall port states.
- */ - instanceName: string | undefined; -} - -export namespace GetInstancePortStatesRequest { - export const filterSensitiveLog = (obj: GetInstancePortStatesRequest): any => ({ - ...obj, - }); -} - -export enum PortState { - Closed = "closed", - Open = "open", -} - -/** - *Describes open ports on an instance, the IP addresses allowed to connect to the instance - * through the ports, and the protocol.
- */ -export interface InstancePortState { - /** - *The last port in a range of open ports on an instance.
- *Allowed ports:
- *TCP and UDP - 0
to 65535
- *
ICMP - The ICMP code. For example, specify 8
as the fromPort
- * (ICMP type), and -1
as the toPort
(ICMP code), to enable ICMP
- * Ping. For more information, see Control Messages on Wikipedia.
Specifies whether the instance port is open
or closed
.
The port state for Lightsail instances is always open
.
The IP address, or range of IP addresses in CIDR notation, that are allowed to connect to - * an instance through the ports, and the protocol. Lightsail supports IPv4 addresses.
- *For more information about CIDR block notation, see Classless - * Inter-Domain Routing on Wikipedia.
- */ - cidrs?: string[]; - - /** - *An alias that defines access for a preconfigured range of IP addresses.
- *The only alias currently supported is lightsail-connect
, which allows IP
- * addresses of the browser-based RDP/SSH client in the Lightsail console to connect to your
- * instance.
The IP protocol name.
- *The name can be one of the following:
- *
- * tcp
- Transmission Control Protocol (TCP) provides reliable, ordered, and
- * error-checked delivery of streamed data between applications running on hosts
- * communicating by an IP network. If you have an application that doesn't require reliable
- * data stream service, use UDP instead.
- * all
- All transport layer protocol types. For more general information,
- * see Transport layer on
- * Wikipedia.
- * udp
- With User Datagram Protocol (UDP), computer applications can send
- * messages (or datagrams) to other hosts on an Internet Protocol (IP) network. Prior
- * communications are not required to set up transmission channels or data paths.
- * Applications that don't require reliable data stream service can use UDP, which provides a
- * connectionless datagram service that emphasizes reduced latency over reliability. If you
- * do require reliable data stream service, use TCP instead.
- * icmp
- Internet Control Message Protocol (ICMP) is used to send error
- * messages and operational information indicating success or failure when communicating with
- * an instance. For example, an error is indicated when an instance could not be reached.
- * When you specify icmp
as the protocol
, you must specify the ICMP
- * type using the fromPort
parameter, and ICMP code using the
- * toPort
parameter.
The first port in a range of open ports on an instance.
- *Allowed ports:
- *TCP and UDP - 0
to 65535
- *
ICMP - The ICMP type. For example, specify 8
as the fromPort
- * (ICMP type), and -1
as the toPort
(ICMP code), to enable ICMP
- * Ping. For more information, see Control Messages on Wikipedia.
An array of objects that describe the firewall port states for the specified - * instance.
- */ - portStates?: InstancePortState[]; -} - -export namespace GetInstancePortStatesResult { - export const filterSensitiveLog = (obj: GetInstancePortStatesResult): any => ({ - ...obj, - }); -} - -export interface GetInstancesRequest { - /** - *The token to advance to the next page of results from your request.
- *To get a page token, perform an initial GetInstances
request. If your results
- * are paginated, the response will return a next page token that you can specify as the page
- * token in a subsequent request.
The token to advance to the next page of resutls from your request.
- *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetInstances
request and
- * specify the next page token using the pageToken
parameter.
An array of key-value pairs containing information about your instances.
- */ - instances?: Instance[]; -} - -export namespace GetInstancesResult { - export const filterSensitiveLog = (obj: GetInstancesResult): any => ({ - ...obj, - }); -} - -export interface GetInstanceSnapshotRequest { - /** - *The name of the snapshot for which you are requesting information.
- */ - instanceSnapshotName: string | undefined; -} - -export namespace GetInstanceSnapshotRequest { - export const filterSensitiveLog = (obj: GetInstanceSnapshotRequest): any => ({ - ...obj, - }); -} - -export enum InstanceSnapshotState { - Available = "available", - Error = "error", - Pending = "pending", -} - -/** - *Describes an instance snapshot.
- */ -export interface InstanceSnapshot { - /** - *The blueprint ID from which you created the snapshot (e.g., os_debian_8_3
). A
- * blueprint is a virtual private server (or instance) image used to create
- * instances quickly.
The instance from which the snapshot was created.
- */ - fromInstanceName?: string; - - /** - *The timestamp when the snapshot was created (e.g., 1479907467.024
).
The bundle ID from which you created the snapshot (e.g., micro_1_0
).
An array of disk objects containing information about all block storage disks.
- */ - fromAttachedDisks?: Disk[]; - - /** - *The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
- */ - tags?: Tag[]; - - /** - *The region name and Availability Zone where you created the snapshot.
- */ - location?: ResourceLocation; - - /** - *The state the snapshot is in.
- */ - state?: InstanceSnapshotState | string; - - /** - *The size in GB of the SSD.
- */ - sizeInGb?: number; - - /** - *The support code. Include this code in your email to support when you have questions about - * an instance or another resource in Lightsail. This code enables our support team to look up - * your Lightsail information more easily.
- */ - supportCode?: string; - - /** - *The Amazon Resource Name (ARN) of the instance from which the snapshot was created (e.g.,
- * arn:aws:lightsail:us-east-2:123456789101:Instance/64b8404c-ccb1-430b-8daf-12345EXAMPLE
).
A Boolean value indicating whether the snapshot was created from an automatic - * snapshot.
- */ - isFromAutoSnapshot?: boolean; - - /** - *The progress of the snapshot.
- */ - progress?: string; - - /** - *The Amazon Resource Name (ARN) of the snapshot (e.g.,
- * arn:aws:lightsail:us-east-2:123456789101:InstanceSnapshot/d23b5706-3322-4d83-81e5-12345EXAMPLE
).
The name of the snapshot.
- */ - name?: string; - - /** - *The type of resource (usually InstanceSnapshot
).
An array of key-value pairs containing information about the results of your get instance - * snapshot request.
- */ - instanceSnapshot?: InstanceSnapshot; -} - -export namespace GetInstanceSnapshotResult { - export const filterSensitiveLog = (obj: GetInstanceSnapshotResult): any => ({ - ...obj, - }); -} - -export interface GetInstanceSnapshotsRequest { - /** - *The token to advance to the next page of results from your request.
- *To get a page token, perform an initial GetInstanceSnapshots
request. If your
- * results are paginated, the response will return a next page token that you can specify as the
- * page token in a subsequent request.
The token to advance to the next page of resutls from your request.
- *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetInstanceSnapshots
request
- * and specify the next page token using the pageToken
parameter.
An array of key-value pairs containing information about the results of your get instance - * snapshots request.
- */ - instanceSnapshots?: InstanceSnapshot[]; -} - -export namespace GetInstanceSnapshotsResult { - export const filterSensitiveLog = (obj: GetInstanceSnapshotsResult): any => ({ - ...obj, - }); -} - -export interface GetInstanceStateRequest { - /** - *The name of the instance to get state information about.
- */ - instanceName: string | undefined; -} - -export namespace GetInstanceStateRequest { - export const filterSensitiveLog = (obj: GetInstanceStateRequest): any => ({ - ...obj, - }); -} - -export interface GetInstanceStateResult { - /** - *The state of the instance.
- */ - state?: InstanceState; -} - -export namespace GetInstanceStateResult { - export const filterSensitiveLog = (obj: GetInstanceStateResult): any => ({ - ...obj, - }); -} - -export interface GetKeyPairRequest { - /** - *The name of the key pair for which you are requesting information.
- */ - keyPairName: string | undefined; -} - -export namespace GetKeyPairRequest { - export const filterSensitiveLog = (obj: GetKeyPairRequest): any => ({ - ...obj, - }); -} - -export interface GetKeyPairResult { - /** - *An array of key-value pairs containing information about the key pair.
- */ - keyPair?: KeyPair; -} - -export namespace GetKeyPairResult { - export const filterSensitiveLog = (obj: GetKeyPairResult): any => ({ - ...obj, - }); -} - -export interface GetKeyPairsRequest { - /** - *The token to advance to the next page of results from your request.
- *To get a page token, perform an initial GetKeyPairs
request. If your results
- * are paginated, the response will return a next page token that you can specify as the page
- * token in a subsequent request.
An array of key-value pairs containing information about the key pairs.
- */ - keyPairs?: KeyPair[]; - - /** - *The token to advance to the next page of resutls from your request.
- *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetKeyPairs
request and
- * specify the next page token using the pageToken
parameter.
The name of the load balancer.
- */ - loadBalancerName: string | undefined; -} - -export namespace GetLoadBalancerRequest { - export const filterSensitiveLog = (obj: GetLoadBalancerRequest): any => ({ - ...obj, - }); -} - -export enum LoadBalancerAttributeName { - HealthCheckPath = "HealthCheckPath", - SessionStickinessEnabled = "SessionStickinessEnabled", - SessionStickiness_LB_CookieDurationSeconds = "SessionStickiness_LB_CookieDurationSeconds", -} - -export enum InstanceHealthState { - Draining = "draining", - Healthy = "healthy", - Initial = "initial", - Unavailable = "unavailable", - Unhealthy = "unhealthy", - Unused = "unused", -} - -export enum InstanceHealthReason { - InstanceDeregistrationInProgress = "Instance.DeregistrationInProgress", - InstanceFailedHealthChecks = "Instance.FailedHealthChecks", - InstanceInvalidState = "Instance.InvalidState", - InstanceIpUnusable = "Instance.IpUnusable", - InstanceNotInUse = "Instance.NotInUse", - InstanceNotRegistered = "Instance.NotRegistered", - InstanceResponseCodeMismatch = "Instance.ResponseCodeMismatch", - InstanceTimeout = "Instance.Timeout", - LbInitialHealthChecking = "Lb.InitialHealthChecking", - LbInternalError = "Lb.InternalError", - LbRegistrationInProgress = "Lb.RegistrationInProgress", -} - -/** - *Describes information about the health of the instance.
- */ -export interface InstanceHealthSummary { - /** - *The name of the Lightsail instance for which you are requesting health check - * data.
- */ - instanceName?: string; - - /** - *Describes the overall instance health. Valid values are below.
- */ - instanceHealth?: InstanceHealthState | string; - - /** - *More information about the instance health. If the instanceHealth
is
- * healthy
, then an instanceHealthReason
value is not
- * provided.
If
- * instanceHealth
- * is initial
,
- * the
- * instanceHealthReason
- * value can be one of the
- * following:
- *
- * Lb.RegistrationInProgress
- * - The target
- * instance is in the process of being registered with the load balancer.
- *
- * Lb.InitialHealthChecking
- * - The
- * Lightsail load balancer is still sending the target instance the minimum number of
- * health checks required to determine its health status.
If
- * instanceHealth
- * is unhealthy
,
- * the
- * instanceHealthReason
- * value can be one of the
- * following:
- *
- * Instance.ResponseCodeMismatch
- * - The
- * health checks did not return an expected HTTP code.
- *
- * Instance.Timeout
- * - The health check
- * requests timed out.
- *
- * Instance.FailedHealthChecks
- * - The health
- * checks failed because the connection to the target instance timed out, the target instance
- * response was malformed, or the target instance failed the health check for an unknown
- * reason.
- *
- * Lb.InternalError
- * - The health checks
- * failed due to an internal error.
If
- * instanceHealth
- * is unused
,
- * the
- * instanceHealthReason
- * value can be one of the
- * following:
- *
- * Instance.NotRegistered
- * - The target
- * instance is not registered with the target group.
- *
- * Instance.NotInUse
- * - The target group is
- * not used by any load balancer, or the target instance is in an Availability Zone that is
- * not enabled for its load balancer.
- *
- * Instance.IpUnusable
- * - The target IP
- * address is reserved for use by a Lightsail load balancer.
- *
- * Instance.InvalidState
- * - The target is in
- * the stopped or terminated state.
If
- * instanceHealth
- * is draining
,
- * the
- * instanceHealthReason
- * value can be one of the
- * following:
- *
- * Instance.DeregistrationInProgress
- * - The
- * target instance is in the process of being deregistered and the deregistration delay
- * period has not expired.
Provides a summary of SSL/TLS certificate metadata.
- */ -export interface LoadBalancerTlsCertificateSummary { - /** - *When true
, the SSL/TLS certificate is attached to the Lightsail load
- * balancer.
The name of the SSL/TLS certificate.
- */ - name?: string; -} - -export namespace LoadBalancerTlsCertificateSummary { - export const filterSensitiveLog = (obj: LoadBalancerTlsCertificateSummary): any => ({ - ...obj, - }); -} - -/** - *Describes the Lightsail load balancer.
- */ -export interface LoadBalancer { - /** - *An array of InstanceHealthSummary objects describing the health of the load - * balancer.
- */ - instanceHealthSummary?: InstanceHealthSummary[]; - - /** - *The DNS name of your Lightsail load balancer.
- */ - dnsName?: string; - - /** - *An array of LoadBalancerTlsCertificateSummary objects that provide additional information
- * about the SSL/TLS certificates. For example, if true
, the certificate is attached
- * to the load balancer.
The name of the load balancer (e.g., my-load-balancer
).
The Amazon Resource Name (ARN) of the load balancer.
- */ - arn?: string; - - /** - *The resource type (e.g., LoadBalancer
.
The type of resource (usually Instance
).
The protocol you have enabled for your load balancer. Valid values are below.
- *You can't just have HTTP_HTTPS
, but you can have just
- * HTTP
.
The date when your load balancer was created.
- */ - createdAt?: Date; - - /** - *The AWS Region where your load balancer was created (e.g., us-east-2a
).
- * Lightsail automatically creates your load balancer across Availability Zones.
A string to string map of the configuration options for your load balancer. Valid values - * are listed below.
- */ - configurationOptions?: { [key: string]: string }; - - /** - *The status of your load balancer. Valid values are below.
- */ - state?: LoadBalancerState | string; - - /** - *The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
- */ - tags?: Tag[]; - - /** - *The path you specified to perform your health checks. If no path is specified, the load - * balancer tries to make a request to the default (root) page.
- */ - healthCheckPath?: string; - - /** - *The support code. Include this code in your email to support when you have questions about - * your Lightsail load balancer. This code enables our support team to look up your Lightsail - * information more easily.
- */ - supportCode?: string; - - /** - *The port where the load balancer will direct traffic to your Lightsail instances. For - * HTTP traffic, it's port 80. For HTTPS traffic, it's port 443.
- */ - instancePort?: number; - - /** - *An array of public port settings for your load balancer. For HTTP, use port 80. For HTTPS, - * use port 443.
- */ - publicPorts?: number[]; -} - -export namespace LoadBalancer { - export const filterSensitiveLog = (obj: LoadBalancer): any => ({ - ...obj, - }); -} + *The status code and the state (e.g., running
) for the instance.
An object containing information about your load balancer.
+ *The bundle for the instance (e.g., micro_1_0
).
The start time of the period.
+ *The friendly name of the blueprint (e.g., Amazon Linux
).
The end time of the period.
+ *The IPv6 address of the instance.
*/ - endTime: Date | undefined; + ipv6Address?: string; /** - *The statistic for the metric.
- *The following statistics are available:
- *
- * Minimum
- The lowest value observed during the specified period. Use this
- * value to determine low volumes of activity for your application.
- * Maximum
- The highest value observed during the specified period. Use
- * this value to determine high volumes of activity for your application.
- * Sum
- All values submitted for the matching metric added together. You
- * can use this statistic to determine the total volume of a metric.
- * Average
- The value of Sum / SampleCount during the specified period. By
- * comparing this statistic with the Minimum and Maximum values, you can determine the full
- * scope of a metric and how close the average use is to the Minimum and Maximum values. This
- * comparison helps you to know when to increase or decrease your resources.
- * SampleCount
- The count, or number, of data points used for the
- * statistical calculation.
The region name and Availability Zone where the instance is located.
*/ - statistics: (MetricStatistic | string)[] | undefined; + location?: ResourceLocation; /** - *The unit for the metric data request. Valid units depend on the metric data being
- * requested. For the valid units with each available metric, see the metricName
- * parameter.
The public IP address of the instance.
*/ - unit: MetricUnit | string | undefined; + publicIpAddress?: string; /** - *The granularity, in seconds, of the returned data points.
+ *The name of the SSH key being used to connect to the instance (e.g.,
+ * LightsailDefaultKeyPair
).
The metric for which you want to return information.
- *Valid load balancer metric names are listed below, along with the most useful
- * statistics
to include in your request, and the published unit
- * value.
- *
- * ClientTLSNegotiationErrorCount
- * - The
- * number of TLS connections initiated by the client that did not establish a session with
- * the load balancer due to a TLS error generated by the load balancer. Possible causes
- * include a mismatch of ciphers or protocols.
- * Statistics
: The most useful statistic is Sum
.
- * Unit
: The published unit is Count
.
- *
- * HealthyHostCount
- * - The number of target
- * instances that are considered healthy.
- * Statistics
: The most useful statistic are Average
,
- * Minimum
, and Maximum
.
- * Unit
: The published unit is Count
.
- *
- * HTTPCode_Instance_2XX_Count
- * - The number
- * of HTTP 2XX response codes generated by the target instances. This does not include any
- * response codes generated by the load balancer.
- * Statistics
: The most useful statistic is Sum
. Note that
- * Minimum
, Maximum
, and Average
all return
- * 1
.
- * Unit
: The published unit is Count
.
- *
- * HTTPCode_Instance_3XX_Count
- * - The number
- * of HTTP 3XX response codes generated by the target instances. This does not include any
- * response codes generated by the load balancer.
- * Statistics
: The most useful statistic is Sum
. Note that
- * Minimum
, Maximum
, and Average
all return
- * 1
.
- * Unit
: The published unit is Count
.
- *
- * HTTPCode_Instance_4XX_Count
- * - The number
- * of HTTP 4XX response codes generated by the target instances. This does not include any
- * response codes generated by the load balancer.
- * Statistics
: The most useful statistic is Sum
. Note that
- * Minimum
, Maximum
, and Average
all return
- * 1
.
- * Unit
: The published unit is Count
.
- *
- * HTTPCode_Instance_5XX_Count
- * - The number
- * of HTTP 5XX response codes generated by the target instances. This does not include any
- * response codes generated by the load balancer.
- * Statistics
: The most useful statistic is Sum
. Note that
- * Minimum
, Maximum
, and Average
all return
- * 1
.
- * Unit
: The published unit is Count
.
- *
- * HTTPCode_LB_4XX_Count
- * - The number of
- * HTTP 4XX client error codes that originated from the load balancer. Client errors are
- * generated when requests are malformed or incomplete. These requests were not received by
- * the target instance. This count does not include response codes generated by the target
- * instances.
- * Statistics
: The most useful statistic is Sum
. Note that
- * Minimum
, Maximum
, and Average
all return
- * 1
.
- * Unit
: The published unit is Count
.
- *
- * HTTPCode_LB_5XX_Count
- * - The number of
- * HTTP 5XX server error codes that originated from the load balancer. This does not include
- * any response codes generated by the target instance. This metric is reported if there are
- * no healthy instances attached to the load balancer, or if the request rate exceeds the
- * capacity of the instances (spillover) or the load balancer.
- * Statistics
: The most useful statistic is Sum
. Note that
- * Minimum
, Maximum
, and Average
all return
- * 1
.
- * Unit
: The published unit is Count
.
- *
- * InstanceResponseTime
- * - The time elapsed,
- * in seconds, after the request leaves the load balancer until a response from the target
- * instance is received.
- * Statistics
: The most useful statistic is Average
.
- * Unit
: The published unit is Seconds
.
- *
- * RejectedConnectionCount
- * - The number of
- * connections that were rejected because the load balancer had reached its maximum number of
- * connections.
- * Statistics
: The most useful statistic is Sum
.
- * Unit
: The published unit is Count
.
- *
- * RequestCount
- * - The number of requests
- * processed over IPv4. This count includes only the requests with a response generated by a
- * target instance of the load balancer.
- * Statistics
: The most useful statistic is Sum
. Note that
- * Minimum
, Maximum
, and Average
all return
- * 1
.
- * Unit
: The published unit is Count
.
- *
- * UnhealthyHostCount
- * - The number of
- * target instances that are considered unhealthy.
- * Statistics
: The most useful statistic are Average
,
- * Minimum
, and Maximum
.
- * Unit
: The published unit is Count
.
An array of objects representing the add-ons enabled on the instance.
*/ - metricName: LoadBalancerMetricName | string | undefined; + addOns?: AddOn[]; /** - *The name of the load balancer.
+ *The tag keys and optional values for the resource. For more information about tags in + * Lightsail, see the Lightsail + * Dev Guide.
*/ - loadBalancerName: string | undefined; -} + tags?: Tag[]; -export namespace GetLoadBalancerMetricDataRequest { - export const filterSensitiveLog = (obj: GetLoadBalancerMetricDataRequest): any => ({ - ...obj, - }); -} + /** + *A Boolean value indicating whether this instance has a static IP assigned to it.
+ */ + isStaticIp?: boolean; -export interface GetLoadBalancerMetricDataResult { /** - *An array of objects that describe the metric data returned.
+ *The blueprint ID (e.g., os_amlinux_2016_03
).
The name of the metric returned.
+ *The private IP address of the instance.
*/ - metricName?: LoadBalancerMetricName | string; + privateIpAddress?: string; } -export namespace GetLoadBalancerMetricDataResult { - export const filterSensitiveLog = (obj: GetLoadBalancerMetricDataResult): any => ({ +export namespace Instance { + export const filterSensitiveLog = (obj: Instance): any => ({ ...obj, }); } -export interface GetLoadBalancersRequest { +export interface GetInstanceResult { /** - *The token to advance to the next page of results from your request.
- *To get a page token, perform an initial GetLoadBalancers
request. If your
- * results are paginated, the response will return a next page token that you can specify as the
- * page token in a subsequent request.
An array of key-value pairs containing information about the specified instance.
*/ - pageToken?: string; + instance?: Instance; } -export namespace GetLoadBalancersRequest { - export const filterSensitiveLog = (obj: GetLoadBalancersRequest): any => ({ +export namespace GetInstanceResult { + export const filterSensitiveLog = (obj: GetInstanceResult): any => ({ ...obj, }); } -export interface GetLoadBalancersResult { - /** - *An array of LoadBalancer objects describing your load balancers.
- */ - loadBalancers?: LoadBalancer[]; +export enum InstanceAccessProtocol { + rdp = "rdp", + ssh = "ssh", +} +export interface GetInstanceAccessDetailsRequest { /** - *The token to advance to the next page of resutls from your request.
- *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetLoadBalancers
request and
- * specify the next page token using the pageToken
parameter.
The name of the instance to access.
*/ - nextPageToken?: string; -} - -export namespace GetLoadBalancersResult { - export const filterSensitiveLog = (obj: GetLoadBalancersResult): any => ({ - ...obj, - }); -} + instanceName: string | undefined; -export interface GetLoadBalancerTlsCertificatesRequest { /** - *The name of the load balancer you associated with your SSL/TLS certificate.
+ *The protocol to use to connect to your instance. Defaults to ssh
.
Describes the validation record of each domain name in the SSL/TLS certificate.
+ *Describes the public SSH host keys or the RDP certificate.
*/ -export interface LoadBalancerTlsCertificateDomainValidationRecord { - /** - *A fully qualified domain name in the certificate. For example,
- * example.com
.
The domain name against which your SSL/TLS certificate was validated.
- */ - domainName?: string; - +export interface HostKeyAttributes { /** - *The value for that type.
+ *The time that the SSH host key or RDP certificate was recorded by Lightsail.
*/ - value?: string; + witnessedAt?: Date; /** - *The validation status. Valid values are listed below.
+ *The returned RDP certificate is not valid after this point in time.
+ *This value is listed only for RDP certificates.
*/ - validationStatus?: LoadBalancerTlsCertificateDomainStatus | string; + notValidAfter?: Date; /** - *The type of validation record. For example, CNAME
for domain
- * validation.
The SHA-1 fingerprint of the returned SSH host key or RDP certificate.
+ *Example of an SHA-1 SSH fingerprint:
+ *
+ * SHA1:1CHH6FaAaXjtFOsR/t83vf91SR0
+ *
Example of an SHA-1 RDP fingerprint:
+ *
+ * af:34:51:fe:09:f0:e0:da:b8:4e:56:ca:60:c2:10:ff:38:06:db:45
+ *
Contains information about the domain names on an SSL/TLS certificate that you will use to - * validate domain ownership.
- */ -export interface LoadBalancerTlsCertificateDomainValidationOption { /** - *The status of the domain validation. Valid values are listed below.
+ *The public SSH host key or the RDP certificate.
*/ - validationStatus?: LoadBalancerTlsCertificateDomainStatus | string; + publicKey?: string; /** - *The fully qualified domain name in the certificate request.
+ *The returned RDP certificate is valid after this point in time.
+ *This value is listed only for RDP certificates.
*/ - domainName?: string; -} - -export namespace LoadBalancerTlsCertificateDomainValidationOption { - export const filterSensitiveLog = (obj: LoadBalancerTlsCertificateDomainValidationOption): any => ({ - ...obj, - }); -} - -export enum LoadBalancerTlsCertificateRenewalStatus { - Failed = "FAILED", - PendingAutoRenewal = "PENDING_AUTO_RENEWAL", - PendingValidation = "PENDING_VALIDATION", - Success = "SUCCESS", -} + notValidBefore?: Date; -/** - *Contains information about the status of Lightsail's managed renewal for the - * certificate.
- * - * - * - * - *The renewal status of the certificate.
- *The following renewal status are possible:
- *
- *
- * PendingAutoRenewal
- * - Lightsail is
- * attempting to automatically validate the domain names in the certificate. No further
- * action is required.
- *
- * PendingValidation
- * - Lightsail couldn't
- * automatically validate one or more domain names in the certificate. You must take action
- * to validate these domain names or the certificate won't be renewed. If you used DNS
- * validation, check to make sure your certificate's domain validation records exist in your
- * domain's DNS, and that your certificate remains in use.
- *
- * Success
- * - All domain names in the
- * certificate are validated, and Lightsail renewed the certificate. No further action is
- * required.
- *
- * Failed
- * - One or more domain names were
- * not validated before the certificate expired, and Lightsail did not renew the
- * certificate. You can request a new certificate using the CreateCertificate
- * action.
Contains information about the validation of each domain name in the certificate, as it - * pertains to Lightsail's managed renewal. This is different from the initial validation that - * occurs as a result of the RequestCertificate request.
+ *The SSH host key algorithm or the RDP certificate format.
+ *For SSH host keys, the algorithm may be ssh-rsa
,
+ * ecdsa-sha2-nistp256
, ssh-ed25519
, etc. For RDP certificates, the
+ * algorithm is always x509-cert
.
The renewal status of the certificate.
- *The following renewal status are possible:
+ *The SHA-256 fingerprint of the returned SSH host key or RDP certificate.
*Example of an SHA-256 SSH fingerprint:
*
- *
- * PendingAutoRenewal
- * - Lightsail is
- * attempting to automatically validate the domain names of the certificate. No further
- * action is required.
- *
- * PendingValidation
- * - Lightsail couldn't
- * automatically validate one or more domain names of the certificate. You must take action
- * to validate these domain names or the certificate won't be renewed. Check to make sure
- * your certificate's domain validation records exist in your domain's DNS, and that your
- * certificate remains in use.
- *
- * Success
- * - All domain names in the
- * certificate are validated, and Lightsail renewed the certificate. No further action is
- * required.
SHA256:KTsMnRBh1IhD17HpdfsbzeGA4jOijm5tyXsMjKVbB8o
+ *
* Example of an SHA-256 RDP fingerprint:
*
- *
- * Failed
- * - One or more domain names were
- * not validated before the certificate expired, and Lightsail did not renew the
- * certificate. You can request a new certificate using the CreateCertificate
- * action.
03:9b:36:9f:4b:de:4e:61:70:fc:7c:c9:78:e7:d2:1a:1c:25:a8:0c:91:f6:7c:e4:d6:a0:85:c8:b4:53:99:68
+ *
* The password data for the Windows Server-based instance, including the ciphertext and the + * key pair name.
+ */ +export interface PasswordData { + /** + *The name of the key pair that you used when creating your instance. If no key pair name
+ * was specified when creating the instance, Lightsail uses the default key pair
+ * (LightsailDefaultKeyPair
).
If you are using a custom key pair, you need to use your own means of decrypting your
+ * password using the ciphertext
. Lightsail creates the ciphertext by encrypting
+ * your password with the public key part of this key pair.
The encrypted password. Ciphertext will be an empty string if access to your new instance + * is not ready yet. When you create an instance, it can take up to 15 minutes for the instance + * to be ready.
+ *If you use the default key pair (LightsailDefaultKeyPair
), the decrypted
+ * password will be available in the password field.
If you are using a custom key pair, you need to use your own means of decryption.
+ *If you change the Administrator password on the instance, Lightsail will continue to + * return the original ciphertext value. When accessing the instance using RDP, you need to + * manually enter the Administrator password after changing it from the default.
+ *Describes a load balancer SSL/TLS certificate.
- *TLS is just an updated, more secure version of Secure Socket Layer (SSL).
+ *The parameters for gaining temporary access to one of your Amazon Lightsail + * instances.
*/ -export interface LoadBalancerTlsCertificate { +export interface InstanceAccessDetails { /** - *The AWS Region and Availability Zone where you created your certificate.
+ *The public IP address of the Amazon Lightsail instance.
*/ - location?: ResourceLocation; + ipAddress?: string; /** - *The validation status of the SSL/TLS certificate. Valid values are below.
+ *Describes the public SSH host keys or the RDP certificate.
*/ - status?: LoadBalancerTlsCertificateStatus | string; + hostKeys?: HostKeyAttributes[]; /** - *The serial number of the certificate.
+ *The user name to use when logging in to the Amazon Lightsail instance.
*/ - serial?: string; + username?: string; /** - *The load balancer name where your SSL/TLS certificate is attached.
+ *The protocol for these Amazon Lightsail instance access details.
*/ - loadBalancerName?: string; + protocol?: InstanceAccessProtocol | string; /** - *The support code. Include this code in your email to support when you have questions about - * your Lightsail load balancer or SSL/TLS certificate. This code enables our support team to - * look up your Lightsail information more easily.
+ *For SSH access, the date on which the temporary keys expire.
*/ - supportCode?: string; + expiresAt?: Date; /** - *The name of the SSL/TLS certificate (e.g., my-certificate
).
For SSH access, the public key to use when accessing your instance For OpenSSH clients
+ * (e.g., command line SSH), you should save this value to tempkey-cert.pub
.
An array of LoadBalancerTlsCertificateDomainValidationRecord objects describing the - * records.
+ *For SSH access, the temporary private key. For OpenSSH clients (e.g., command line SSH),
+ * you should save this value to tempkey
).
The algorithm that was used to sign the certificate.
+ *The name of this Amazon Lightsail instance.
*/ - signatureAlgorithm?: string; + instanceName?: string; /** - *The timestamp when the SSL/TLS certificate expires.
+ *For a Windows Server-based instance, an object with the data you can use to retrieve your
+ * password. This is only needed if password
is empty and the instance is not new
+ * (and therefore the password is not ready yet). When you create an instance, it can take up to
+ * 15 minutes for the instance to be ready.
When true
, the SSL/TLS certificate is attached to the Lightsail load
- * balancer.
For RDP access, the password for your Amazon Lightsail instance. Password will be an empty + * string if the password for your new instance is not ready yet. When you create an instance, it + * can take up to 15 minutes for the instance to be ready.
+ *If you create an instance using any key pair other than the default
+ * (LightsailDefaultKeyPair
), password
will always be an empty
+ * string.
If you change the Administrator password on the instance, Lightsail will continue to + * return the original password value. When accessing the instance using RDP, you need to + * manually enter the Administrator password after changing it from the default.
+ *The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
+ *An array of key-value pairs containing information about a get instance access + * request.
*/ - tags?: Tag[]; + accessDetails?: InstanceAccessDetails; +} - /** - *The validation failure reason, if any, of the certificate.
- * - *The following failure reasons are possible:
- *
- *
- * NO_AVAILABLE_CONTACTS
- * - This failure
- * applies to email validation, which is not available for Lightsail certificates.
- *
- * ADDITIONAL_VERIFICATION_REQUIRED
- * -
- * Lightsail requires additional information to process this certificate request. This can
- * happen as a fraud-protection measure, such as when the domain ranks within the Alexa top
- * 1000 websites. To provide the required information, use the AWS Support Center to contact
- * AWS Support.
You cannot request a certificate for Amazon-owned domain names such as those ending - * in amazonaws.com, cloudfront.net, or elasticbeanstalk.com.
- *
- *
- * DOMAIN_NOT_ALLOWED
- * - One or more of the
- * domain names in the certificate request was reported as an unsafe domain by VirusTotal. To correct the
- * problem, search for your domain name on the VirusTotal website. If your domain
- * is reported as suspicious, see Google Help for Hacked
- * Websites to learn what you can do.
If you believe that the result is a false positive, notify the organization that is - * reporting the domain. VirusTotal is an aggregate of several antivirus and URL scanners and - * cannot remove your domain from a block list itself. After you correct the problem and the - * VirusTotal registry has been updated, request a new certificate.
- *If you see this error and your domain is not included in the VirusTotal list, visit - * the AWS Support Center - * and create a case.
- *
- *
- * INVALID_PUBLIC_DOMAIN
- * - One or more of
- * the domain names in the certificate request is not valid. Typically, this is because a
- * domain name in the request is not a valid top-level domain. Try to request a certificate
- * again, correcting any spelling errors or typos that were in the failed request, and ensure
- * that all domain names in the request are for valid top-level domains. For example, you
- * cannot request a certificate for example.invalidpublicdomain
because
- * invalidpublicdomain
is not a valid top-level domain.
- *
- * OTHER
- * - Typically, this failure occurs
- * when there is a typographical error in one or more of the domain names in the certificate
- * request. Try to request a certificate again, correcting any spelling errors or typos that
- * were in the failed request.
The name of the instance for which you want to get metrics data.
*/ - failureReason?: LoadBalancerTlsCertificateFailureReason | string; + instanceName: string | undefined; /** - *The domain name for your SSL/TLS certificate.
+ *The unit for the metric data request. Valid units depend on the metric data being
+ * requested. For the valid units to specify with each available metric, see the
+ * metricName
parameter.
An array of strings that specify the alternate domains (e.g., example2.com
)
- * and subdomains (e.g., blog.example.com
) for the certificate.
The granularity, in seconds, of the returned data points.
+ *The StatusCheckFailed
, StatusCheckFailed_Instance
, and
+ * StatusCheckFailed_System
instance metric data is available in 1-minute (60
+ * seconds) granularity. All other instance metric data is available in 5-minute (300 seconds)
+ * granularity.
The reason the certificate was revoked. This value is present only when the certificate
- * status is REVOKED
.
The start time of the time period.
*/ - revocationReason?: LoadBalancerTlsCertificateRevocationReason | string; + startTime: Date | undefined; /** - *The timestamp when the certificate was revoked. This value is present only when the
- * certificate status is REVOKED
.
The end time of the time period.
*/ - revokedAt?: Date; + endTime: Date | undefined; /** - *The resource type (e.g., LoadBalancerTlsCertificate
).
The metric for which you want to return information.
+ *Valid instance metric names are listed below, along with the most useful
+ * statistics
to include in your request, and the published unit
+ * value.
*
- * Instance
- * - A Lightsail instance (a
- * virtual private server)
BurstCapacityPercentage
+ * - The percentage
+ * of CPU performance available for your instance to burst above its baseline. Your instance
+ * continuously accrues and consumes burst capacity. Burst capacity stops accruing when your
+ * instance's BurstCapacityPercentage
reaches 100%. For more information, see
+ * Viewing instance burst capacity in Amazon Lightsail.
+ *
+ * Statistics
: The most useful statistics are Maximum
and
+ * Average
.
+ * Unit
: The published unit is Percent
.
*
- * StaticIp
- * - A static IP address
BurstCapacityTime
+ * - The available amount
+ * of time for your instance to burst at 100% CPU utilization. Your instance continuously
+ * accrues and consumes burst capacity. Burst capacity time stops accruing when your
+ * instance's BurstCapacityPercentage
metric reaches 100%.
+ * Burst capacity time is consumed at the full rate only when your instance operates at + * 100% CPU utilization. For example, if your instance operates at 50% CPU utilization in the + * burstable zone for a 5-minute period, then it consumes CPU burst capacity minutes at a 50% + * rate in that period. Your instance consumed 2 minutes and 30 seconds of CPU burst capacity + * minutes in the 5-minute period. For more information, see Viewing instance burst capacity in Amazon Lightsail.
+ *
+ * Statistics
: The most useful statistics are Maximum
and
+ * Average
.
+ * Unit
: The published unit is Seconds
.
*
- * KeyPair
- * - The key pair used to connect
- * to a Lightsail instance
CPUUtilization
+ * - The percentage of
+ * allocated compute units that are currently in use on the instance. This metric identifies
+ * the processing power to run the applications on the instance. Tools in your operating
+ * system can show a lower percentage than Lightsail when the instance is not allocated a
+ * full processor core.
+ *
+ * Statistics
: The most useful statistics are Maximum
and
+ * Average
.
+ * Unit
: The published unit is Percent
.
*
- * InstanceSnapshot
- * - A Lightsail
- * instance snapshot
NetworkIn
+ * - The number of bytes received
+ * on all network interfaces by the instance. This metric identifies the volume of incoming
+ * network traffic to the instance. The number reported is the number of bytes received
+ * during the period. Because this metric is reported in 5-minute intervals, divide the
+ * reported number by 300 to find Bytes/second.
+ *
+ * Statistics
: The most useful statistic is Sum
.
+ * Unit
: The published unit is Bytes
.
*
- * Domain
- * - A DNS zone
NetworkOut
+ * - The number of bytes sent
+ * out on all network interfaces by the instance. This metric identifies the volume of
+ * outgoing network traffic from the instance. The number reported is the number of bytes
+ * sent during the period. Because this metric is reported in 5-minute intervals, divide the
+ * reported number by 300 to find Bytes/second.
+ *
+ * Statistics
: The most useful statistic is Sum
.
+ * Unit
: The published unit is Bytes
.
*
- * PeeredVpc
- * - A peered VPC
StatusCheckFailed
+ * - Reports whether the
+ * instance passed or failed both the instance status check and the system status check. This
+ * metric can be either 0 (passed) or 1 (failed). This metric data is available in 1-minute
+ * (60 seconds) granularity.
+ *
+ * Statistics
: The most useful statistic is Sum
.
+ * Unit
: The published unit is Count
.
*
- * LoadBalancer
- * - A Lightsail load
- * balancer
StatusCheckFailed_Instance
+ * - Reports
+ * whether the instance passed or failed the instance status check. This metric can be either
+ * 0 (passed) or 1 (failed). This metric data is available in 1-minute (60 seconds)
+ * granularity.
+ *
+ * Statistics
: The most useful statistic is Sum
.
+ * Unit
: The published unit is Count
.
*
- * LoadBalancerTlsCertificate
- * - An SSL/TLS
- * certificate associated with a Lightsail load balancer
StatusCheckFailed_System
+ * - Reports
+ * whether the instance passed or failed the system status check. This metric can be either 0
+ * (passed) or 1 (failed). This metric data is available in 1-minute (60 seconds)
+ * granularity.
+ *
+ * Statistics
: The most useful statistic is Sum
.
+ * Unit
: The published unit is Count
.
The statistic for the metric.
+ *The following statistics are available:
+ *
- *
- * Disk
- * - A Lightsail block storage
- * disk
Minimum
- The lowest value observed during the specified period. Use this
+ * value to determine low volumes of activity for your application.
*
- *
- * DiskSnapshot
- * - A block storage disk
- * snapshot
Maximum
- The highest value observed during the specified period. Use
+ * this value to determine high volumes of activity for your application.
+ *
+ * Sum
- All values submitted for the matching metric added together. You
+ * can use this statistic to determine the total volume of a metric.
+ * Average
- The value of Sum / SampleCount during the specified period. By
+ * comparing this statistic with the Minimum and Maximum values, you can determine the full
+ * scope of a metric and how close the average use is to the Minimum and Maximum values. This
+ * comparison helps you to know when to increase or decrease your resources.
+ * SampleCount
- The count, or number, of data points used for the
+ * statistical calculation.
The name of the entity that is associated with the public key contained in the - * certificate.
+ *The name of the metric returned.
*/ - subject?: string; + metricName?: InstanceMetricName | string; /** - *The algorithm used to generate the key pair (the public and private key).
+ *An array of objects that describe the metric data returned.
*/ - keyAlgorithm?: string; + metricData?: MetricDatapoint[]; +} + +export namespace GetInstanceMetricDataResult { + export const filterSensitiveLog = (obj: GetInstanceMetricDataResult): any => ({ + ...obj, + }); +} +export interface GetInstancePortStatesRequest { /** - *The Amazon Resource Name (ARN) of the SSL/TLS certificate.
+ *The name of the instance for which to return firewall port states.
*/ - arn?: string; + instanceName: string | undefined; +} + +export namespace GetInstancePortStatesRequest { + export const filterSensitiveLog = (obj: GetInstancePortStatesRequest): any => ({ + ...obj, + }); +} + +export enum PortState { + Closed = "closed", + Open = "open", +} + +/** + *Describes open ports on an instance, the IP addresses allowed to connect to the instance + * through the ports, and the protocol.
+ */ +export interface InstancePortState { + /** + *The IP protocol name.
+ *The name can be one of the following:
+ *
+ * tcp
- Transmission Control Protocol (TCP) provides reliable, ordered, and
+ * error-checked delivery of streamed data between applications running on hosts
+ * communicating by an IP network. If you have an application that doesn't require reliable
+ * data stream service, use UDP instead.
+ * all
- All transport layer protocol types. For more general information,
+ * see Transport layer on
+ * Wikipedia.
+ * udp
- With User Datagram Protocol (UDP), computer applications can send
+ * messages (or datagrams) to other hosts on an Internet Protocol (IP) network. Prior
+ * communications are not required to set up transmission channels or data paths.
+ * Applications that don't require reliable data stream service can use UDP, which provides a
+ * connectionless datagram service that emphasizes reduced latency over reliability. If you
+ * do require reliable data stream service, use TCP instead.
+ * icmp
- Internet Control Message Protocol (ICMP) is used to send error
+ * messages and operational information indicating success or failure when communicating with
+ * an instance. For example, an error is indicated when an instance could not be reached.
+ * When you specify icmp
as the protocol
, you must specify the ICMP
+ * type using the fromPort
parameter, and ICMP code using the
+ * toPort
parameter.
The time when the SSL/TLS certificate was issued.
+ *The last port in a range of open ports on an instance.
+ *Allowed ports:
+ *TCP and UDP - 0
to 65535
+ *
ICMP - The ICMP code. For example, specify 8
as the fromPort
+ * (ICMP type), and -1
as the toPort
(ICMP code), to enable ICMP
+ * Ping. For more information, see Control Messages on Wikipedia.
An object that describes the status of the certificate renewal managed by - * Lightsail.
+ *The IP address, or range of IP addresses in CIDR notation, that are allowed to connect to + * an instance through the ports, and the protocol. Lightsail supports IPv4 addresses.
+ *For more information about CIDR block notation, see Classless + * Inter-Domain Routing on Wikipedia.
*/ - renewalSummary?: LoadBalancerTlsCertificateRenewalSummary; + cidrs?: string[]; /** - *The issuer of the certificate.
+ *Specifies whether the instance port is open
or closed
.
The port state for Lightsail instances is always open
.
The time when you created your SSL/TLS certificate.
+ *The first port in a range of open ports on an instance.
+ *Allowed ports:
+ *TCP and UDP - 0
to 65535
+ *
ICMP - The ICMP type. For example, specify 8
as the fromPort
+ * (ICMP type), and -1
as the toPort
(ICMP code), to enable ICMP
+ * Ping. For more information, see Control Messages on Wikipedia.
The timestamp when the SSL/TLS certificate is first valid.
+ *An alias that defines access for a preconfigured range of IP addresses.
+ *The only alias currently supported is lightsail-connect
, which allows IP
+ * addresses of the browser-based RDP/SSH client in the Lightsail console to connect to your
+ * instance.
An array of LoadBalancerTlsCertificate objects describing your SSL/TLS - * certificates.
+ *An array of objects that describe the firewall port states for the specified + * instance.
*/ - tlsCertificates?: LoadBalancerTlsCertificate[]; + portStates?: InstancePortState[]; } -export namespace GetLoadBalancerTlsCertificatesResult { - export const filterSensitiveLog = (obj: GetLoadBalancerTlsCertificatesResult): any => ({ +export namespace GetInstancePortStatesResult { + export const filterSensitiveLog = (obj: GetInstancePortStatesResult): any => ({ ...obj, }); } -export interface GetOperationRequest { +export interface GetInstancesRequest { /** - *A GUID used to identify the operation.
+ *The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetInstances
request. If your results
+ * are paginated, the response will return a next page token that you can specify as the page
+ * token in a subsequent request.
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.
+ *An array of key-value pairs containing information about your instances.
*/ - operation?: Operation; -} - -export namespace GetOperationResult { - export const filterSensitiveLog = (obj: GetOperationResult): any => ({ - ...obj, - }); -} + instances?: Instance[]; -export interface GetOperationsRequest { /** *The token to advance to the next page of results from your request.
- *To get a page token, perform an initial GetOperations
request. If your
- * results are paginated, the response will return a next page token that you can specify as the
- * page token in a subsequent request.
A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetInstances
request and
+ * specify the next page token using the pageToken
parameter.
The token to advance to the next page of resutls from your request.
- *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetOperations
request and
- * specify the next page token using the pageToken
parameter.
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.
+ *The name of the snapshot for which you are requesting information.
*/ - operations?: Operation[]; + instanceSnapshotName: string | undefined; } -export namespace GetOperationsResult { - export const filterSensitiveLog = (obj: GetOperationsResult): any => ({ +export namespace GetInstanceSnapshotRequest { + export const filterSensitiveLog = (obj: GetInstanceSnapshotRequest): any => ({ ...obj, }); } -export interface GetOperationsForResourceRequest { +export enum InstanceSnapshotState { + Available = "available", + Error = "error", + Pending = "pending", +} + +/** + *Describes an instance snapshot.
+ */ +export interface InstanceSnapshot { /** - *The name of the resource for which you are requesting information.
+ *A Boolean value indicating whether the snapshot was created from an automatic + * snapshot.
*/ - resourceName: string | undefined; + isFromAutoSnapshot?: boolean; /** - *The token to advance to the next page of results from your request.
- *To get a page token, perform an initial GetOperationsForResource
request. If
- * your results are paginated, the response will return a next page token that you can specify as
- * the page token in a subsequent request.
The instance from which the snapshot was created.
*/ - pageToken?: string; -} + fromInstanceName?: string; -export namespace GetOperationsForResourceRequest { - export const filterSensitiveLog = (obj: GetOperationsForResourceRequest): any => ({ - ...obj, - }); -} + /** + *The size in GB of the SSD.
+ */ + sizeInGb?: number; -export interface GetOperationsForResourceResult { /** - *(Deprecated) Returns the number of pages of results that remain.
- *In releases prior to June 12, 2017, this parameter returned null
by the
- * API. It is now deprecated, and the API returns the next page token
parameter
- * instead.
The timestamp when the snapshot was created (e.g., 1479907467.024
).
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.
+ *The state the snapshot is in.
*/ - operations?: Operation[]; + state?: InstanceSnapshotState | string; /** - *The token to advance to the next page of resutls from your request.
- *A next page token is not returned if there are no more results to display.
- *To get the next page of results, perform another GetOperationsForResource
- * request and specify the next page token using the pageToken
parameter.
The region name and Availability Zone where you created the snapshot.
*/ - nextPageToken?: string; -} + location?: ResourceLocation; -export namespace GetOperationsForResourceResult { - export const filterSensitiveLog = (obj: GetOperationsForResourceResult): any => ({ - ...obj, - }); -} + /** + *The progress of the snapshot.
+ */ + progress?: string; -export interface GetRegionsRequest { /** - *A Boolean value indicating whether to also include Availability Zones in your get regions
- * request. Availability Zones are indicated with a letter: e.g., us-east-2a
.
The Amazon Resource Name (ARN) of the instance from which the snapshot was created (e.g.,
+ * arn:aws:lightsail:us-east-2:123456789101:Instance/64b8404c-ccb1-430b-8daf-12345EXAMPLE
).
>A Boolean value indicating whether to also include Availability Zones for databases in
- * your get regions request. Availability Zones are indicated with a letter (e.g.,
- * us-east-2a
).
The name of the snapshot.
*/ - includeRelationalDatabaseAvailabilityZones?: boolean; -} + name?: string; -export namespace GetRegionsRequest { - export const filterSensitiveLog = (obj: GetRegionsRequest): any => ({ - ...obj, - }); -} + /** + *The type of resource (usually InstanceSnapshot
).
Describes the AWS Region.
- */ -export interface Region { /** - *The display name (e.g., Ohio
).
The Amazon Resource Name (ARN) of the snapshot (e.g.,
+ * arn:aws:lightsail:us-east-2:123456789101:InstanceSnapshot/d23b5706-3322-4d83-81e5-12345EXAMPLE
).
The Availability Zones for databases. Follows the format us-east-2a
- * (case-sensitive).
An array of disk objects containing information about all block storage disks.
*/ - relationalDatabaseAvailabilityZones?: AvailabilityZone[]; + fromAttachedDisks?: Disk[]; /** - *The continent code (e.g., NA
, meaning North America).
The bundle ID from which you created the snapshot (e.g., micro_1_0
).
The region name (e.g., us-east-2
).
The support code. Include this code in your email to support when you have questions about + * an instance or another resource in Lightsail. This code enables our support team to look up + * your Lightsail information more easily.
*/ - name?: RegionName | string; + supportCode?: string; /** - *The Availability Zones. Follows the format us-east-2a
- * (case-sensitive).
The blueprint ID from which you created the snapshot (e.g., os_debian_8_3
). A
+ * blueprint is a virtual private server (or instance) image used to create
+ * instances quickly.
The description of the AWS Region (e.g., This region is recommended to serve users
- * in the eastern United States and eastern Canada
).
The tag keys and optional values for the resource. For more information about tags in + * Lightsail, see the Lightsail + * Dev Guide.
*/ - description?: string; + tags?: Tag[]; } -export namespace Region { - export const filterSensitiveLog = (obj: Region): any => ({ +export namespace InstanceSnapshot { + export const filterSensitiveLog = (obj: InstanceSnapshot): any => ({ ...obj, }); } -export interface GetRegionsResult { +export interface GetInstanceSnapshotResult { /** - *An array of key-value pairs containing information about your get regions request.
+ *An array of key-value pairs containing information about the results of your get instance + * snapshot request.
*/ - regions?: Region[]; + instanceSnapshot?: InstanceSnapshot; } -export namespace GetRegionsResult { - export const filterSensitiveLog = (obj: GetRegionsResult): any => ({ +export namespace GetInstanceSnapshotResult { + export const filterSensitiveLog = (obj: GetInstanceSnapshotResult): any => ({ ...obj, }); } -export interface GetRelationalDatabaseRequest { +export interface GetInstanceSnapshotsRequest { /** - *The name of the database that you are looking up.
+ *The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetInstanceSnapshots
request. If your
+ * results are paginated, the response will return a next page token that you can specify as the
+ * page token in a subsequent request.
Describes the hardware of a database.
- */ -export interface RelationalDatabaseHardware { +export interface GetInstanceSnapshotsResult { /** - *The number of vCPUs for the database.
+ *The token to advance to the next page of results from your request.
+ *A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetInstanceSnapshots
request
+ * and specify the next page token using the pageToken
parameter.
The amount of RAM in GB for the database.
+ *An array of key-value pairs containing information about the results of your get instance + * snapshots request.
*/ - ramSizeInGb?: number; + instanceSnapshots?: InstanceSnapshot[]; +} + +export namespace GetInstanceSnapshotsResult { + export const filterSensitiveLog = (obj: GetInstanceSnapshotsResult): any => ({ + ...obj, + }); +} +export interface GetInstanceStateRequest { /** - *The size of the disk for the database.
+ *The name of the instance to get state information about.
*/ - diskSizeInGb?: number; + instanceName: string | undefined; } -export namespace RelationalDatabaseHardware { - export const filterSensitiveLog = (obj: RelationalDatabaseHardware): any => ({ +export namespace GetInstanceStateRequest { + export const filterSensitiveLog = (obj: GetInstanceStateRequest): any => ({ ...obj, }); } -/** - *Describes an endpoint for a database.
- */ -export interface RelationalDatabaseEndpoint { +export interface GetInstanceStateResult { /** - *Specifies the DNS address of the database.
+ *The state of the instance.
*/ - address?: string; + state?: InstanceState; +} + +export namespace GetInstanceStateResult { + export const filterSensitiveLog = (obj: GetInstanceStateResult): any => ({ + ...obj, + }); +} +export interface GetKeyPairRequest { /** - *Specifies the port that the database is listening on.
+ *The name of the key pair for which you are requesting information.
*/ - port?: number; + keyPairName: string | undefined; } -export namespace RelationalDatabaseEndpoint { - export const filterSensitiveLog = (obj: RelationalDatabaseEndpoint): any => ({ +export namespace GetKeyPairRequest { + export const filterSensitiveLog = (obj: GetKeyPairRequest): any => ({ ...obj, }); } -/** - *Describes a pending database maintenance action.
- */ -export interface PendingMaintenanceAction { +export interface GetKeyPairResult { /** - *The type of pending database maintenance action.
+ *An array of key-value pairs containing information about the key pair.
*/ - action?: string; + keyPair?: KeyPair; +} - /** - *Additional detail about the pending database maintenance action.
- */ - description?: string; +export namespace GetKeyPairResult { + export const filterSensitiveLog = (obj: GetKeyPairResult): any => ({ + ...obj, + }); +} +export interface GetKeyPairsRequest { /** - *The effective date of the pending database maintenance action.
+ *The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetKeyPairs
request. If your results
+ * are paginated, the response will return a next page token that you can specify as the page
+ * token in a subsequent request.
An array of key-value pairs containing information about the key pairs.
+ */ + keyPairs?: KeyPair[]; + + /** + *The token to advance to the next page of results from your request.
+ *A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetKeyPairs
request and
+ * specify the next page token using the pageToken
parameter.
The name of the load balancer.
+ */ + loadBalancerName: string | undefined; +} + +export namespace GetLoadBalancerRequest { + export const filterSensitiveLog = (obj: GetLoadBalancerRequest): any => ({ + ...obj, + }); +} + +export enum LoadBalancerAttributeName { + HealthCheckPath = "HealthCheckPath", + SessionStickinessEnabled = "SessionStickinessEnabled", + SessionStickiness_LB_CookieDurationSeconds = "SessionStickiness_LB_CookieDurationSeconds", +} + +export enum InstanceHealthState { + Draining = "draining", + Healthy = "healthy", + Initial = "initial", + Unavailable = "unavailable", + Unhealthy = "unhealthy", + Unused = "unused", +} + +export enum InstanceHealthReason { + InstanceDeregistrationInProgress = "Instance.DeregistrationInProgress", + InstanceFailedHealthChecks = "Instance.FailedHealthChecks", + InstanceInvalidState = "Instance.InvalidState", + InstanceIpUnusable = "Instance.IpUnusable", + InstanceNotInUse = "Instance.NotInUse", + InstanceNotRegistered = "Instance.NotRegistered", + InstanceResponseCodeMismatch = "Instance.ResponseCodeMismatch", + InstanceTimeout = "Instance.Timeout", + LbInitialHealthChecking = "Lb.InitialHealthChecking", + LbInternalError = "Lb.InternalError", + LbRegistrationInProgress = "Lb.RegistrationInProgress", +} + +/** + *Describes information about the health of the instance.
+ */ +export interface InstanceHealthSummary { + /** + *The name of the Lightsail instance for which you are requesting health check + * data.
+ */ + instanceName?: string; + + /** + *Describes the overall instance health. Valid values are below.
+ */ + instanceHealth?: InstanceHealthState | string; + + /** + *More information about the instance health. If the instanceHealth
is
+ * healthy
, then an instanceHealthReason
value is not
+ * provided.
If
+ * instanceHealth
+ * is initial
,
+ * the
+ * instanceHealthReason
+ * value can be one of the
+ * following:
+ *
+ * Lb.RegistrationInProgress
+ * - The target
+ * instance is in the process of being registered with the load balancer.
+ *
+ * Lb.InitialHealthChecking
+ * - The
+ * Lightsail load balancer is still sending the target instance the minimum number of
+ * health checks required to determine its health status.
If
+ * instanceHealth
+ * is unhealthy
,
+ * the
+ * instanceHealthReason
+ * value can be one of the
+ * following:
+ *
+ * Instance.ResponseCodeMismatch
+ * - The
+ * health checks did not return an expected HTTP code.
+ *
+ * Instance.Timeout
+ * - The health check
+ * requests timed out.
+ *
+ * Instance.FailedHealthChecks
+ * - The health
+ * checks failed because the connection to the target instance timed out, the target instance
+ * response was malformed, or the target instance failed the health check for an unknown
+ * reason.
+ *
+ * Lb.InternalError
+ * - The health checks
+ * failed due to an internal error.
If
+ * instanceHealth
+ * is unused
,
+ * the
+ * instanceHealthReason
+ * value can be one of the
+ * following:
+ *
+ * Instance.NotRegistered
+ * - The target
+ * instance is not registered with the target group.
+ *
+ * Instance.NotInUse
+ * - The target group is
+ * not used by any load balancer, or the target instance is in an Availability Zone that is
+ * not enabled for its load balancer.
+ *
+ * Instance.IpUnusable
+ * - The target IP
+ * address is reserved for use by a Lightsail load balancer.
+ *
+ * Instance.InvalidState
+ * - The target is in
+ * the stopped or terminated state.
If
+ * instanceHealth
+ * is draining
,
+ * the
+ * instanceHealthReason
+ * value can be one of the
+ * following:
+ *
+ * Instance.DeregistrationInProgress
+ * - The
+ * target instance is in the process of being deregistered and the deregistration delay
+ * period has not expired.
Provides a summary of SSL/TLS certificate metadata.
+ */ +export interface LoadBalancerTlsCertificateSummary { + /** + *When true
, the SSL/TLS certificate is attached to the Lightsail load
+ * balancer.
The name of the SSL/TLS certificate.
+ */ + name?: string; +} + +export namespace LoadBalancerTlsCertificateSummary { + export const filterSensitiveLog = (obj: LoadBalancerTlsCertificateSummary): any => ({ + ...obj, + }); +} + +/** + *Describes the Lightsail load balancer.
+ */ +export interface LoadBalancer { + /** + *An array of LoadBalancerTlsCertificateSummary objects that provide additional information
+ * about the SSL/TLS certificates. For example, if true
, the certificate is attached
+ * to the load balancer.
The port where the load balancer will direct traffic to your Lightsail instances. For + * HTTP traffic, it's port 80. For HTTPS traffic, it's port 443.
+ */ + instancePort?: number; + + /** + *The date when your load balancer was created.
+ */ + createdAt?: Date; + + /** + *The protocol you have enabled for your load balancer. Valid values are below.
+ *You can't just have HTTP_HTTPS
, but you can have just
+ * HTTP
.
The path you specified to perform your health checks. If no path is specified, the load + * balancer tries to make a request to the default (root) page.
+ */ + healthCheckPath?: string; + + /** + *The resource type (e.g., LoadBalancer
.
The name of the load balancer (e.g., my-load-balancer
).
The DNS name of your Lightsail load balancer.
+ */ + dnsName?: string; + + /** + *An array of InstanceHealthSummary objects describing the health of the load + * balancer.
+ */ + instanceHealthSummary?: InstanceHealthSummary[]; + + /** + *The status of your load balancer. Valid values are below.
+ */ + state?: LoadBalancerState | string; + + /** + *An array of public port settings for your load balancer. For HTTP, use port 80. For HTTPS, + * use port 443.
+ */ + publicPorts?: number[]; + + /** + *The support code. Include this code in your email to support when you have questions about + * your Lightsail load balancer. This code enables our support team to look up your Lightsail + * information more easily.
+ */ + supportCode?: string; + + /** + *The Amazon Resource Name (ARN) of the load balancer.
+ */ + arn?: string; + + /** + *The tag keys and optional values for the resource. For more information about tags in + * Lightsail, see the Lightsail + * Dev Guide.
+ */ + tags?: Tag[]; + + /** + *The AWS Region where your load balancer was created (e.g., us-east-2a
).
+ * Lightsail automatically creates your load balancer across Availability Zones.
A string to string map of the configuration options for your load balancer. Valid values + * are listed below.
+ */ + configurationOptions?: { [key: string]: string }; +} + +export namespace LoadBalancer { + export const filterSensitiveLog = (obj: LoadBalancer): any => ({ + ...obj, + }); +} + +export interface GetLoadBalancerResult { + /** + *An object containing information about your load balancer.
+ */ + loadBalancer?: LoadBalancer; +} + +export namespace GetLoadBalancerResult { + export const filterSensitiveLog = (obj: GetLoadBalancerResult): any => ({ + ...obj, + }); +} + +export enum LoadBalancerMetricName { + ClientTLSNegotiationErrorCount = "ClientTLSNegotiationErrorCount", + HTTPCode_Instance_2XX_Count = "HTTPCode_Instance_2XX_Count", + HTTPCode_Instance_3XX_Count = "HTTPCode_Instance_3XX_Count", + HTTPCode_Instance_4XX_Count = "HTTPCode_Instance_4XX_Count", + HTTPCode_Instance_5XX_Count = "HTTPCode_Instance_5XX_Count", + HTTPCode_LB_4XX_Count = "HTTPCode_LB_4XX_Count", + HTTPCode_LB_5XX_Count = "HTTPCode_LB_5XX_Count", + HealthyHostCount = "HealthyHostCount", + InstanceResponseTime = "InstanceResponseTime", + RejectedConnectionCount = "RejectedConnectionCount", + RequestCount = "RequestCount", + UnhealthyHostCount = "UnhealthyHostCount", +} + +export interface GetLoadBalancerMetricDataRequest { + /** + *The metric for which you want to return information.
+ *Valid load balancer metric names are listed below, along with the most useful
+ * statistics
to include in your request, and the published unit
+ * value.
+ *
+ * ClientTLSNegotiationErrorCount
+ * - The
+ * number of TLS connections initiated by the client that did not establish a session with
+ * the load balancer due to a TLS error generated by the load balancer. Possible causes
+ * include a mismatch of ciphers or protocols.
+ * Statistics
: The most useful statistic is Sum
.
+ * Unit
: The published unit is Count
.
+ *
+ * HealthyHostCount
+ * - The number of target
+ * instances that are considered healthy.
+ * Statistics
: The most useful statistic are Average
,
+ * Minimum
, and Maximum
.
+ * Unit
: The published unit is Count
.
+ *
+ * HTTPCode_Instance_2XX_Count
+ * - The number
+ * of HTTP 2XX response codes generated by the target instances. This does not include any
+ * response codes generated by the load balancer.
+ * Statistics
: The most useful statistic is Sum
. Note that
+ * Minimum
, Maximum
, and Average
all return
+ * 1
.
+ * Unit
: The published unit is Count
.
+ *
+ * HTTPCode_Instance_3XX_Count
+ * - The number
+ * of HTTP 3XX response codes generated by the target instances. This does not include any
+ * response codes generated by the load balancer.
+ * Statistics
: The most useful statistic is Sum
. Note that
+ * Minimum
, Maximum
, and Average
all return
+ * 1
.
+ * Unit
: The published unit is Count
.
+ *
+ * HTTPCode_Instance_4XX_Count
+ * - The number
+ * of HTTP 4XX response codes generated by the target instances. This does not include any
+ * response codes generated by the load balancer.
+ * Statistics
: The most useful statistic is Sum
. Note that
+ * Minimum
, Maximum
, and Average
all return
+ * 1
.
+ * Unit
: The published unit is Count
.
+ *
+ * HTTPCode_Instance_5XX_Count
+ * - The number
+ * of HTTP 5XX response codes generated by the target instances. This does not include any
+ * response codes generated by the load balancer.
+ * Statistics
: The most useful statistic is Sum
. Note that
+ * Minimum
, Maximum
, and Average
all return
+ * 1
.
+ * Unit
: The published unit is Count
.
+ *
+ * HTTPCode_LB_4XX_Count
+ * - The number of
+ * HTTP 4XX client error codes that originated from the load balancer. Client errors are
+ * generated when requests are malformed or incomplete. These requests were not received by
+ * the target instance. This count does not include response codes generated by the target
+ * instances.
+ * Statistics
: The most useful statistic is Sum
. Note that
+ * Minimum
, Maximum
, and Average
all return
+ * 1
.
+ * Unit
: The published unit is Count
.
+ *
+ * HTTPCode_LB_5XX_Count
+ * - The number of
+ * HTTP 5XX server error codes that originated from the load balancer. This does not include
+ * any response codes generated by the target instance. This metric is reported if there are
+ * no healthy instances attached to the load balancer, or if the request rate exceeds the
+ * capacity of the instances (spillover) or the load balancer.
+ * Statistics
: The most useful statistic is Sum
. Note that
+ * Minimum
, Maximum
, and Average
all return
+ * 1
.
+ * Unit
: The published unit is Count
.
+ *
+ * InstanceResponseTime
+ * - The time elapsed,
+ * in seconds, after the request leaves the load balancer until a response from the target
+ * instance is received.
+ * Statistics
: The most useful statistic is Average
.
+ * Unit
: The published unit is Seconds
.
+ *
+ * RejectedConnectionCount
+ * - The number of
+ * connections that were rejected because the load balancer had reached its maximum number of
+ * connections.
+ * Statistics
: The most useful statistic is Sum
.
+ * Unit
: The published unit is Count
.
+ *
+ * RequestCount
+ * - The number of requests
+ * processed over IPv4. This count includes only the requests with a response generated by a
+ * target instance of the load balancer.
+ * Statistics
: The most useful statistic is Sum
. Note that
+ * Minimum
, Maximum
, and Average
all return
+ * 1
.
+ * Unit
: The published unit is Count
.
+ *
+ * UnhealthyHostCount
+ * - The number of
+ * target instances that are considered unhealthy.
+ * Statistics
: The most useful statistic are Average
,
+ * Minimum
, and Maximum
.
+ * Unit
: The published unit is Count
.
The end time of the period.
+ */ + endTime: Date | undefined; + + /** + *The statistic for the metric.
+ *The following statistics are available:
+ *
+ * Minimum
- The lowest value observed during the specified period. Use this
+ * value to determine low volumes of activity for your application.
+ * Maximum
- The highest value observed during the specified period. Use
+ * this value to determine high volumes of activity for your application.
+ * Sum
- All values submitted for the matching metric added together. You
+ * can use this statistic to determine the total volume of a metric.
+ * Average
- The value of Sum / SampleCount during the specified period. By
+ * comparing this statistic with the Minimum and Maximum values, you can determine the full
+ * scope of a metric and how close the average use is to the Minimum and Maximum values. This
+ * comparison helps you to know when to increase or decrease your resources.
+ * SampleCount
- The count, or number, of data points used for the
+ * statistical calculation.
The start time of the period.
+ */ + startTime: Date | undefined; + + /** + *The granularity, in seconds, of the returned data points.
+ */ + period: number | undefined; + + /** + *The unit for the metric data request. Valid units depend on the metric data being
+ * requested. For the valid units with each available metric, see the metricName
+ * parameter.
The name of the load balancer.
+ */ + loadBalancerName: string | undefined; +} + +export namespace GetLoadBalancerMetricDataRequest { + export const filterSensitiveLog = (obj: GetLoadBalancerMetricDataRequest): any => ({ + ...obj, + }); +} + +export interface GetLoadBalancerMetricDataResult { + /** + *The name of the metric returned.
+ */ + metricName?: LoadBalancerMetricName | string; + + /** + *An array of objects that describe the metric data returned.
+ */ + metricData?: MetricDatapoint[]; +} + +export namespace GetLoadBalancerMetricDataResult { + export const filterSensitiveLog = (obj: GetLoadBalancerMetricDataResult): any => ({ + ...obj, + }); +} + +export interface GetLoadBalancersRequest { + /** + *The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetLoadBalancers
request. If your
+ * results are paginated, the response will return a next page token that you can specify as the
+ * page token in a subsequent request.
An array of LoadBalancer objects describing your load balancers.
+ */ + loadBalancers?: LoadBalancer[]; + + /** + *The token to advance to the next page of results from your request.
+ *A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetLoadBalancers
request and
+ * specify the next page token using the pageToken
parameter.
The name of the load balancer you associated with your SSL/TLS certificate.
+ */ + loadBalancerName: string | undefined; +} + +export namespace GetLoadBalancerTlsCertificatesRequest { + export const filterSensitiveLog = (obj: GetLoadBalancerTlsCertificatesRequest): any => ({ + ...obj, + }); +} + +export enum LoadBalancerTlsCertificateDomainStatus { + Failed = "FAILED", + PendingValidation = "PENDING_VALIDATION", + Success = "SUCCESS", +} + +/** + *Describes the validation record of each domain name in the SSL/TLS certificate.
+ */ +export interface LoadBalancerTlsCertificateDomainValidationRecord { + /** + *The value for that type.
+ */ + value?: string; + + /** + *The domain name against which your SSL/TLS certificate was validated.
+ */ + domainName?: string; + + /** + *A fully qualified domain name in the certificate. For example,
+ * example.com
.
The validation status. Valid values are listed below.
+ */ + validationStatus?: LoadBalancerTlsCertificateDomainStatus | string; + + /** + *The type of validation record. For example, CNAME
for domain
+ * validation.
Contains information about the domain names on an SSL/TLS certificate that you will use to + * validate domain ownership.
+ */ +export interface LoadBalancerTlsCertificateDomainValidationOption { + /** + *The status of the domain validation. Valid values are listed below.
+ */ + validationStatus?: LoadBalancerTlsCertificateDomainStatus | string; + + /** + *The fully qualified domain name in the certificate request.
+ */ + domainName?: string; +} + +export namespace LoadBalancerTlsCertificateDomainValidationOption { + export const filterSensitiveLog = (obj: LoadBalancerTlsCertificateDomainValidationOption): any => ({ + ...obj, + }); +} + +export enum LoadBalancerTlsCertificateRenewalStatus { + Failed = "FAILED", + PendingAutoRenewal = "PENDING_AUTO_RENEWAL", + PendingValidation = "PENDING_VALIDATION", + Success = "SUCCESS", +} + +/** + *Contains information about the status of Lightsail's managed renewal for the + * certificate.
+ *The renewal status of the certificate.
+ *The following renewal status are possible:
+ *
+ *
+ * PendingAutoRenewal
+ * - Lightsail is
+ * attempting to automatically validate the domain names in the certificate. No further
+ * action is required.
+ *
+ * PendingValidation
+ * - Lightsail couldn't
+ * automatically validate one or more domain names in the certificate. You must take action
+ * to validate these domain names or the certificate won't be renewed. If you used DNS
+ * validation, check to make sure your certificate's domain validation records exist in your
+ * domain's DNS, and that your certificate remains in use.
+ *
+ * Success
+ * - All domain names in the
+ * certificate are validated, and Lightsail renewed the certificate. No further action is
+ * required.
+ *
+ * Failed
+ * - One or more domain names were
+ * not validated before the certificate expired, and Lightsail did not renew the
+ * certificate. You can request a new certificate using the CreateCertificate
+ * action.
The renewal status of the certificate.
+ *The following renewal status are possible:
+ *
+ *
+ * PendingAutoRenewal
+ * - Lightsail is
+ * attempting to automatically validate the domain names of the certificate. No further
+ * action is required.
+ *
+ * PendingValidation
+ * - Lightsail couldn't
+ * automatically validate one or more domain names of the certificate. You must take action
+ * to validate these domain names or the certificate won't be renewed. Check to make sure
+ * your certificate's domain validation records exist in your domain's DNS, and that your
+ * certificate remains in use.
+ *
+ * Success
+ * - All domain names in the
+ * certificate are validated, and Lightsail renewed the certificate. No further action is
+ * required.
+ *
+ * Failed
+ * - One or more domain names were
+ * not validated before the certificate expired, and Lightsail did not renew the
+ * certificate. You can request a new certificate using the CreateCertificate
+ * action.
Contains information about the validation of each domain name in the certificate, as it + * pertains to Lightsail's managed renewal. This is different from the initial validation that + * occurs as a result of the RequestCertificate request.
+ */ + domainValidationOptions?: LoadBalancerTlsCertificateDomainValidationOption[]; +} + +export namespace LoadBalancerTlsCertificateRenewalSummary { + export const filterSensitiveLog = (obj: LoadBalancerTlsCertificateRenewalSummary): any => ({ + ...obj, + }); +} + +export enum LoadBalancerTlsCertificateRevocationReason { + AACompromise = "A_A_COMPROMISE", + AffiliationChanged = "AFFILIATION_CHANGED", + CaCompromise = "CA_COMPROMISE", + CertificateHold = "CERTIFICATE_HOLD", + CessationOfOperation = "CESSATION_OF_OPERATION", + KeyCompromise = "KEY_COMPROMISE", + PrivilegeWithdrawn = "PRIVILEGE_WITHDRAWN", + RemoveFromCrl = "REMOVE_FROM_CRL", + Superceded = "SUPERCEDED", + Unspecified = "UNSPECIFIED", +} + +export enum LoadBalancerTlsCertificateStatus { + Expired = "EXPIRED", + Failed = "FAILED", + Inactive = "INACTIVE", + Issued = "ISSUED", + PendingValidation = "PENDING_VALIDATION", + Revoked = "REVOKED", + Unknown = "UNKNOWN", + ValidationTimedOut = "VALIDATION_TIMED_OUT", +} + +/** + *Describes a load balancer SSL/TLS certificate.
+ *TLS is just an updated, more secure version of Secure Socket Layer (SSL).
+ */ +export interface LoadBalancerTlsCertificate { + /** + *The timestamp when the certificate was revoked. This value is present only when the
+ * certificate status is REVOKED
.
An array of strings that specify the alternate domains (e.g., example2.com
)
+ * and subdomains (e.g., blog.example.com
) for the certificate.
The reason the certificate was revoked. This value is present only when the certificate
+ * status is REVOKED
.
The name of the entity that is associated with the public key contained in the + * certificate.
+ */ + subject?: string; + + /** + *The issuer of the certificate.
+ */ + issuer?: string; + + /** + *The algorithm used to generate the key pair (the public and private key).
+ */ + keyAlgorithm?: string; + + /** + *An array of LoadBalancerTlsCertificateDomainValidationRecord objects describing the + * records.
+ */ + domainValidationRecords?: LoadBalancerTlsCertificateDomainValidationRecord[]; + + /** + *The load balancer name where your SSL/TLS certificate is attached.
+ */ + loadBalancerName?: string; + + /** + *The time when you created your SSL/TLS certificate.
+ */ + createdAt?: Date; + + /** + *The time when the SSL/TLS certificate was issued.
+ */ + issuedAt?: Date; + + /** + *An object that describes the status of the certificate renewal managed by + * Lightsail.
+ */ + renewalSummary?: LoadBalancerTlsCertificateRenewalSummary; + + /** + *The timestamp when the SSL/TLS certificate expires.
+ */ + notAfter?: Date; + + /** + *The Amazon Resource Name (ARN) of the SSL/TLS certificate.
+ */ + arn?: string; + + /** + *The validation status of the SSL/TLS certificate. Valid values are below.
+ */ + status?: LoadBalancerTlsCertificateStatus | string; + + /** + *The AWS Region and Availability Zone where you created your certificate.
+ */ + location?: ResourceLocation; + + /** + *The tag keys and optional values for the resource. For more information about tags in + * Lightsail, see the Lightsail + * Dev Guide.
+ */ + tags?: Tag[]; + + /** + *The algorithm that was used to sign the certificate.
+ */ + signatureAlgorithm?: string; + + /** + *The validation failure reason, if any, of the certificate.
+ * + *The following failure reasons are possible:
+ *
+ *
+ * NO_AVAILABLE_CONTACTS
+ * - This failure
+ * applies to email validation, which is not available for Lightsail certificates.
+ *
+ * ADDITIONAL_VERIFICATION_REQUIRED
+ * -
+ * Lightsail requires additional information to process this certificate request. This can
+ * happen as a fraud-protection measure, such as when the domain ranks within the Alexa top
+ * 1000 websites. To provide the required information, use the AWS Support Center to contact
+ * AWS Support.
You cannot request a certificate for Amazon-owned domain names such as those ending + * in amazonaws.com, cloudfront.net, or elasticbeanstalk.com.
+ *
+ *
+ * DOMAIN_NOT_ALLOWED
+ * - One or more of the
+ * domain names in the certificate request was reported as an unsafe domain by VirusTotal. To correct the
+ * problem, search for your domain name on the VirusTotal website. If your domain
+ * is reported as suspicious, see Google Help for Hacked
+ * Websites to learn what you can do.
If you believe that the result is a false positive, notify the organization that is + * reporting the domain. VirusTotal is an aggregate of several antivirus and URL scanners and + * cannot remove your domain from a block list itself. After you correct the problem and the + * VirusTotal registry has been updated, request a new certificate.
+ *If you see this error and your domain is not included in the VirusTotal list, visit + * the AWS Support Center + * and create a case.
+ *
+ *
+ * INVALID_PUBLIC_DOMAIN
+ * - One or more of
+ * the domain names in the certificate request is not valid. Typically, this is because a
+ * domain name in the request is not a valid top-level domain. Try to request a certificate
+ * again, correcting any spelling errors or typos that were in the failed request, and ensure
+ * that all domain names in the request are for valid top-level domains. For example, you
+ * cannot request a certificate for example.invalidpublicdomain
because
+ * invalidpublicdomain
is not a valid top-level domain.
+ *
+ * OTHER
+ * - Typically, this failure occurs
+ * when there is a typographical error in one or more of the domain names in the certificate
+ * request. Try to request a certificate again, correcting any spelling errors or typos that
+ * were in the failed request.
The domain name for your SSL/TLS certificate.
+ */ + domainName?: string; + + /** + *The timestamp when the SSL/TLS certificate is first valid.
+ */ + notBefore?: Date; + + /** + *The name of the SSL/TLS certificate (e.g., my-certificate
).
The serial number of the certificate.
+ */ + serial?: string; + + /** + *The resource type (e.g., LoadBalancerTlsCertificate
).
+ *
+ * Instance
+ * - A Lightsail instance (a
+ * virtual private server)
+ *
+ * StaticIp
+ * - A static IP address
+ *
+ * KeyPair
+ * - The key pair used to connect
+ * to a Lightsail instance
+ *
+ * InstanceSnapshot
+ * - A Lightsail
+ * instance snapshot
+ *
+ * Domain
+ * - A DNS zone
+ *
+ * PeeredVpc
+ * - A peered VPC
+ *
+ * LoadBalancer
+ * - A Lightsail load
+ * balancer
+ *
+ * LoadBalancerTlsCertificate
+ * - An SSL/TLS
+ * certificate associated with a Lightsail load balancer
+ *
+ * Disk
+ * - A Lightsail block storage
+ * disk
+ *
+ * DiskSnapshot
+ * - A block storage disk
+ * snapshot
When true
, the SSL/TLS certificate is attached to the Lightsail load
+ * balancer.
The support code. Include this code in your email to support when you have questions about + * your Lightsail load balancer or SSL/TLS certificate. This code enables our support team to + * look up your Lightsail information more easily.
+ */ + supportCode?: string; +} + +export namespace LoadBalancerTlsCertificate { + export const filterSensitiveLog = (obj: LoadBalancerTlsCertificate): any => ({ + ...obj, + }); +} + +export interface GetLoadBalancerTlsCertificatesResult { + /** + *An array of LoadBalancerTlsCertificate objects describing your SSL/TLS + * certificates.
+ */ + tlsCertificates?: LoadBalancerTlsCertificate[]; +} + +export namespace GetLoadBalancerTlsCertificatesResult { + export const filterSensitiveLog = (obj: GetLoadBalancerTlsCertificatesResult): any => ({ + ...obj, + }); +} + +export interface GetOperationRequest { + /** + *A GUID used to identify the operation.
+ */ + operationId: string | undefined; +} + +export namespace GetOperationRequest { + export const filterSensitiveLog = (obj: GetOperationRequest): any => ({ + ...obj, + }); +} + +export interface GetOperationResult { + /** + *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.
+ */ + operation?: Operation; +} + +export namespace GetOperationResult { + export const filterSensitiveLog = (obj: GetOperationResult): any => ({ + ...obj, + }); +} + +export interface GetOperationsRequest { + /** + *The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetOperations
request. If your
+ * results are paginated, the response will return a next page token that you can specify as the
+ * page token in a subsequent request.
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.
+ */ + operations?: Operation[]; + + /** + *The token to advance to the next page of results from your request.
+ *A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetOperations
request and
+ * specify the next page token using the pageToken
parameter.
The name of the resource for which you are requesting information.
+ */ + resourceName: string | undefined; + + /** + *The token to advance to the next page of results from your request.
+ *To get a page token, perform an initial GetOperationsForResource
request. If
+ * your results are paginated, the response will return a next page token that you can specify as
+ * the page token in a subsequent request.
(Deprecated) Returns the number of pages of results that remain.
+ *In releases prior to June 12, 2017, this parameter returned null
by the
+ * API. It is now deprecated, and the API returns the next page token
parameter
+ * instead.
The token to advance to the next page of results from your request.
+ *A next page token is not returned if there are no more results to display.
+ *To get the next page of results, perform another GetOperationsForResource
+ * request and specify the next page token using the pageToken
parameter.
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.
+ */ + operations?: Operation[]; +} + +export namespace GetOperationsForResourceResult { + export const filterSensitiveLog = (obj: GetOperationsForResourceResult): any => ({ + ...obj, + }); +} + +export interface GetRegionsRequest { + /** + *A Boolean value indicating whether to also include Availability Zones in your get regions
+ * request. Availability Zones are indicated with a letter: e.g., us-east-2a
.
A Boolean value indicating whether to also include Availability Zones for databases in
+ * your get regions request. Availability Zones are indicated with a letter (e.g.,
+ * us-east-2a
).
Describes the AWS Region.
+ */ +export interface Region { + /** + *The Availability Zones. Follows the format us-east-2a
+ * (case-sensitive).
The region name (e.g., us-east-2
).
The display name (e.g., Ohio
).
The continent code (e.g., NA
, meaning North America).
The Availability Zones for databases. Follows the format us-east-2a
+ * (case-sensitive).
The description of the AWS Region (e.g., This region is recommended to serve users
+ * in the eastern United States and eastern Canada
).
An array of key-value pairs containing information about your get regions request.
+ */ + regions?: Region[]; +} + +export namespace GetRegionsResult { + export const filterSensitiveLog = (obj: GetRegionsResult): any => ({ + ...obj, + }); +} + +export interface GetRelationalDatabaseRequest { + /** + *The name of the database that you are looking up.
+ */ + relationalDatabaseName: string | undefined; +} + +export namespace GetRelationalDatabaseRequest { + export const filterSensitiveLog = (obj: GetRelationalDatabaseRequest): any => ({ + ...obj, + }); +} + +/** + *Describes the hardware of a database.
+ */ +export interface RelationalDatabaseHardware { + /** + *The size of the disk for the database.
+ */ + diskSizeInGb?: number; + + /** + *The amount of RAM in GB for the database.
+ */ + ramSizeInGb?: number; + + /** + *The number of vCPUs for the database.
+ */ + cpuCount?: number; +} + +export namespace RelationalDatabaseHardware { + export const filterSensitiveLog = (obj: RelationalDatabaseHardware): any => ({ + ...obj, + }); +} + +/** + *Describes an endpoint for a database.
+ */ +export interface RelationalDatabaseEndpoint { + /** + *Specifies the DNS address of the database.
+ */ + address?: string; + + /** + *Specifies the port that the database is listening on.
+ */ + port?: number; +} + +export namespace RelationalDatabaseEndpoint { + export const filterSensitiveLog = (obj: RelationalDatabaseEndpoint): any => ({ + ...obj, + }); +} + +/** + *Describes a pending database maintenance action.
+ */ +export interface PendingMaintenanceAction { + /** + *The effective date of the pending database maintenance action.
+ */ + currentApplyDate?: Date; + + /** + *Additional detail about the pending database maintenance action.
+ */ + description?: string; + + /** + *The type of pending database maintenance action.
+ */ + action?: string; +} + +export namespace PendingMaintenanceAction { + export const filterSensitiveLog = (obj: PendingMaintenanceAction): any => ({ + ...obj, + }); +} + /** *Describes a pending database value modification.
*/ export interface PendingModifiedRelationalDatabaseValues { + /** + *The password for the master user of the database.
+ */ + masterUserPassword?: string; + /** *A Boolean value indicating whether automated backup retention is enabled.
*/ @@ -38,11 +1516,6 @@ export interface PendingModifiedRelationalDatabaseValues { *The database engine version.
*/ engineVersion?: string; - - /** - *The password for the master user of the database.
- */ - masterUserPassword?: string; } export namespace PendingModifiedRelationalDatabaseValues { @@ -56,149 +1529,149 @@ export namespace PendingModifiedRelationalDatabaseValues { */ export interface RelationalDatabase { /** - *Describes the secondary Availability Zone of a high availability database.
- *The secondary database is used for failover support of a high availability + *
A Boolean value indicating whether automated backup retention is enabled for the * database.
*/ - secondaryAvailabilityZone?: string; + backupRetentionEnabled?: boolean; /** - *Describes pending database value modifications.
+ *The database software (for example, MySQL
).
The timestamp when the database was created. Formatted in Unix time.
+ *The daily time range during which automated backups are created for the database (for
+ * example, 16:00-16:30
).
The Amazon Resource Name (ARN) of the database.
+ *The database engine version (for example, 5.7.23
).
The latest point in time to which the database can be restored. Formatted in Unix - * time.
+ *The tag keys and optional values for the resource. For more information about tags in + * Lightsail, see the Lightsail + * Dev Guide.
*/ - latestRestorableTime?: Date; + tags?: Tag[]; /** - *The weekly time range during which system maintenance can occur on the database.
- *In the format ddd:hh24:mi-ddd:hh24:mi
. For example,
- * Tue:17:00-Tue:17:30
.
The master user name of the database.
*/ - preferredMaintenanceWindow?: string; + masterUsername?: string; /** - *The unique name of the database resource in Lightsail.
+ *Describes the current state of the database.
*/ - name?: string; + state?: string; /** - *Describes the current state of the database.
+ *The certificate associated with the database.
*/ - state?: string; + caCertificateIdentifier?: string; /** - *The Lightsail resource type for the database (for example,
- * RelationalDatabase
).
A Boolean value indicating whether the database is publicly accessible.
*/ - resourceType?: ResourceType | string; + publiclyAccessible?: boolean; /** - *The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
+ *Describes the hardware of the database.
*/ - tags?: Tag[]; + hardware?: RelationalDatabaseHardware; /** - *The Region name and Availability Zone where the database is located.
+ *The Amazon Resource Name (ARN) of the database.
*/ - location?: ResourceLocation; + arn?: string; /** - *The blueprint ID for the database. A blueprint describes the major engine version of a - * database.
+ *The name of the master database created when the Lightsail database resource is + * created.
*/ - relationalDatabaseBlueprintId?: string; + masterDatabaseName?: string; /** - *The master user name of the database.
+ *Describes the pending maintenance actions for the database.
*/ - masterUsername?: string; + pendingMaintenanceActions?: PendingMaintenanceAction[]; /** - *The database engine version (for example, 5.7.23
).
Describes pending database value modifications.
*/ - engineVersion?: string; + pendingModifiedValues?: PendingModifiedRelationalDatabaseValues; /** - *The name of the master database created when the Lightsail database resource is - * created.
+ *The blueprint ID for the database. A blueprint describes the major engine version of a + * database.
*/ - masterDatabaseName?: string; + relationalDatabaseBlueprintId?: string; /** - *The support code for the database. Include this code in your email to support when you - * have questions about a database in Lightsail. This code enables our support team to look up - * your Lightsail information more easily.
+ *The weekly time range during which system maintenance can occur on the database.
+ *In the format ddd:hh24:mi-ddd:hh24:mi
. For example,
+ * Tue:17:00-Tue:17:30
.
The database software (for example, MySQL
).
Describes the secondary Availability Zone of a high availability database.
+ *The secondary database is used for failover support of a high availability + * database.
*/ - engine?: string; + secondaryAvailabilityZone?: string; /** - *A Boolean value indicating whether the database is publicly accessible.
+ *The timestamp when the database was created. Formatted in Unix time.
*/ - publiclyAccessible?: boolean; + createdAt?: Date; /** - *A Boolean value indicating whether automated backup retention is enabled for the - * database.
+ *The status of parameter updates for the database.
*/ - backupRetentionEnabled?: boolean; + parameterApplyStatus?: string; /** - *Describes the hardware of the database.
+ *The bundle ID for the database. A bundle describes the performance specifications for your + * database.
*/ - hardware?: RelationalDatabaseHardware; + relationalDatabaseBundleId?: string; /** - *Describes the pending maintenance actions for the database.
+ *The master endpoint for the database.
*/ - pendingMaintenanceActions?: PendingMaintenanceAction[]; + masterEndpoint?: RelationalDatabaseEndpoint; /** - *The certificate associated with the database.
+ *The support code for the database. Include this code in your email to support when you + * have questions about a database in Lightsail. This code enables our support team to look up + * your Lightsail information more easily.
*/ - caCertificateIdentifier?: string; + supportCode?: string; /** - *The status of parameter updates for the database.
+ *The Region name and Availability Zone where the database is located.
*/ - parameterApplyStatus?: string; + location?: ResourceLocation; /** - *The master endpoint for the database.
+ *The Lightsail resource type for the database (for example,
+ * RelationalDatabase
).
The daily time range during which automated backups are created for the database (for
- * example, 16:00-16:30
).
The latest point in time to which the database can be restored. Formatted in Unix + * time.
*/ - preferredBackupWindow?: string; + latestRestorableTime?: Date; /** - *The bundle ID for the database. A bundle describes the performance specifications for your - * database.
+ *The unique name of the database resource in Lightsail.
*/ - relationalDatabaseBundleId?: string; + name?: string; } export namespace RelationalDatabase { @@ -246,36 +1719,36 @@ export enum RelationalDatabaseEngine { */ export interface RelationalDatabaseBlueprint { /** - *The description of the database engine for the database blueprint.
+ *The description of the database engine version for the database blueprint.
*/ - engineDescription?: string; + engineVersionDescription?: string; /** - *The ID for the database blueprint.
+ *A Boolean value indicating whether the engine version is the default for the database + * blueprint.
*/ - blueprintId?: string; + isEngineDefault?: boolean; /** - *The database engine version for the database blueprint (for example,
- * 5.7.23
).
The ID for the database blueprint.
*/ - engineVersion?: string; + blueprintId?: string; /** - *A Boolean value indicating whether the engine version is the default for the database - * blueprint.
+ *The database software of the database blueprint (for example, MySQL
).
The description of the database engine version for the database blueprint.
+ *The description of the database engine for the database blueprint.
*/ - engineVersionDescription?: string; + engineDescription?: string; /** - *The database software of the database blueprint (for example, MySQL
).
The database engine version for the database blueprint (for example,
+ * 5.7.23
).
The token to advance to the next page of resutls from your request.
+ *An object describing the result of your get relational database blueprints request.
+ */ + blueprints?: RelationalDatabaseBlueprint[]; + + /** + *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another
* GetRelationalDatabaseBlueprints
request and specify the next page token using
* the pageToken
parameter.
An object describing the result of your get relational database blueprints request.
- */ - blueprints?: RelationalDatabaseBlueprint[]; } export namespace GetRelationalDatabaseBlueprintsResult { @@ -328,14 +1801,19 @@ export namespace GetRelationalDatabaseBundlesRequest { */ export interface RelationalDatabaseBundle { /** - *The amount of RAM in GB (for example, 2.0
) for the database bundle.
The cost of the database bundle in US currency.
*/ - ramSizeInGb?: number; + price?: number; /** - *The number of virtual CPUs (vCPUs) for the database bundle.
+ *The ID for the database bundle.
*/ - cpuCount?: number; + bundleId?: string; + + /** + *A Boolean value indicating whether the database bundle is encrypted.
+ */ + isEncrypted?: boolean; /** *The data transfer rate per month in GB for the database bundle.
@@ -348,24 +1826,19 @@ export interface RelationalDatabaseBundle { diskSizeInGb?: number; /** - *A Boolean value indicating whether the database bundle is encrypted.
- */ - isEncrypted?: boolean; - - /** - *The name for the database bundle.
+ *The number of virtual CPUs (vCPUs) for the database bundle.
*/ - name?: string; + cpuCount?: number; /** - *The ID for the database bundle.
+ *The amount of RAM in GB (for example, 2.0
) for the database bundle.
The cost of the database bundle in US currency.
+ *The name for the database bundle.
*/ - price?: number; + name?: string; /** *A Boolean value indicating whether the database bundle is active.
@@ -381,17 +1854,17 @@ export namespace RelationalDatabaseBundle { export interface GetRelationalDatabaseBundlesResult { /** - *An object describing the result of your get relational database bundles request.
- */ - bundles?: RelationalDatabaseBundle[]; - - /** - *The token to advance to the next page of resutls from your request.
+ *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another GetRelationalDatabaseBundles
* request and specify the next page token using the pageToken
parameter.
An object describing the result of your get relational database bundles request.
+ */ + bundles?: RelationalDatabaseBundle[]; } export namespace GetRelationalDatabaseBundlesResult { @@ -401,6 +1874,11 @@ export namespace GetRelationalDatabaseBundlesResult { } export interface GetRelationalDatabaseEventsRequest { + /** + *The name of the database from which to get events.
+ */ + relationalDatabaseName: string | undefined; + /** *The number of minutes in the past from which to retrieve events. For example, to get all * events from the past 2 hours, enter 120.
@@ -416,12 +1894,7 @@ export interface GetRelationalDatabaseEventsRequest { * If your results are paginated, the response will return a next page token that you can specify * as the page token in a subsequent request. */ - pageToken?: string; - - /** - *The name of the database from which to get events.
- */ - relationalDatabaseName: string | undefined; + pageToken?: string; } export namespace GetRelationalDatabaseEventsRequest { @@ -435,24 +1908,24 @@ export namespace GetRelationalDatabaseEventsRequest { */ export interface RelationalDatabaseEvent { /** - *The category that the database event belongs to.
+ *The database that the database event relates to.
*/ - eventCategories?: string[]; + resource?: string; /** - *The message of the database event.
+ *The timestamp when the database event was created.
*/ - message?: string; + createdAt?: Date; /** - *The timestamp when the database event was created.
+ *The category that the database event belongs to.
*/ - createdAt?: Date; + eventCategories?: string[]; /** - *The database that the database event relates to.
+ *The message of the database event.
*/ - resource?: string; + message?: string; } export namespace RelationalDatabaseEvent { @@ -463,7 +1936,7 @@ export namespace RelationalDatabaseEvent { export interface GetRelationalDatabaseEventsResult { /** - *The token to advance to the next page of resutls from your request.
+ *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another GetRelationalDatabaseEvents
* request and specify the next page token using the pageToken
parameter.
Parameter to specify if the log should start from head or tail. If true
is
- * specified, the log event starts from the head of the log. If false
is specified,
- * the log event starts from the tail of the log.
For PostgreSQL, the default value of false
is the only option
- * available.
The name of your database for which to get log events.
*/ - startFromHead?: boolean; + relationalDatabaseName: string | undefined; /** - *The token to advance to the next or previous page of results from your request.
- *To get a page token, perform an initial GetRelationalDatabaseLogEvents
- * request. If your results are paginated, the response will return a next forward token and/or
- * next backward token that you can specify as the page token in a subsequent request.
The name of the log stream.
+ *Use the get relational database log streams
operation to get a list of
+ * available log streams.
The end of the time interval from which to get log events.
@@ -520,16 +1986,23 @@ export interface GetRelationalDatabaseLogEventsRequest { endTime?: Date; /** - *The name of the log stream.
- *Use the get relational database log streams
operation to get a list of
- * available log streams.
The token to advance to the next or previous page of results from your request.
+ *To get a page token, perform an initial GetRelationalDatabaseLogEvents
+ * request. If your results are paginated, the response will return a next forward token and/or
+ * next backward token that you can specify as the page token in a subsequent request.
The name of your database for which to get log events.
+ *Parameter to specify if the log should start from head or tail. If true
is
+ * specified, the log event starts from the head of the log. If false
is specified,
+ * the log event starts from the tail of the log.
For PostgreSQL, the default value of false
is the only option
+ * available.
The start of the time interval from which to get log events.
@@ -559,14 +2032,14 @@ export namespace GetRelationalDatabaseLogEventsRequest { */ export interface LogEvent { /** - *The message of the database log event.
+ *The timestamp when the database log event was created.
*/ - message?: string; + createdAt?: Date; /** - *The timestamp when the database log event was created.
+ *The message of the database log event.
*/ - createdAt?: Date; + message?: string; } export namespace LogEvent { @@ -577,15 +2050,15 @@ export namespace LogEvent { export interface GetRelationalDatabaseLogEventsResult { /** - *A token used for advancing to the next page of results from your get relational database - * log events request.
+ *An object describing the result of your get relational database log events request.
*/ - nextForwardToken?: string; + resourceLogEvents?: LogEvent[]; /** - *An object describing the result of your get relational database log events request.
+ *A token used for advancing to the next page of results from your get relational database + * log events request.
*/ - resourceLogEvents?: LogEvent[]; + nextForwardToken?: string; /** *A token used for advancing to the previous page of results from your get relational @@ -634,11 +2107,6 @@ export enum RelationalDatabasePasswordVersion { } export interface GetRelationalDatabaseMasterUserPasswordRequest { - /** - *
The name of your database for which to get the master user password.
- */ - relationalDatabaseName: string | undefined; - /** *The password version to return.
*Specifying CURRENT
or PREVIOUS
returns the current or previous
@@ -650,6 +2118,11 @@ export interface GetRelationalDatabaseMasterUserPasswordRequest {
*
The name of your database for which to get the master user password.
+ */ + relationalDatabaseName: string | undefined; } export namespace GetRelationalDatabaseMasterUserPasswordRequest { @@ -687,59 +2160,11 @@ export enum RelationalDatabaseMetricName { } export interface GetRelationalDatabaseMetricDataRequest { - /** - *The granularity, in seconds, of the returned data points.
- *All relational database metric data is available in 1-minute (60 seconds) - * granularity.
- */ - period: number | undefined; - - /** - *The start of the time interval from which to get metric data.
- *Constraints:
- *Specified in Coordinated Universal Time (UTC).
- *Specified in the Unix time format.
- *For example, if you wish to use a start time of October 1, 2018, at 8 PM UTC, then you
- * input 1538424000
as the start time.
The unit for the metric data request. Valid units depend on the metric data being
- * requested. For the valid units with each available metric, see the metricName
- * parameter.
The name of your database from which to get metric data.
*/ relationalDatabaseName: string | undefined; - /** - *The end of the time interval from which to get metric data.
- *Constraints:
- *Specified in Coordinated Universal Time (UTC).
- *Specified in the Unix time format.
- *For example, if you wish to use an end time of October 1, 2018, at 8 PM UTC, then you
- * input 1538424000
as the end time.
The metric for which you want to return information.
*Valid relational database metric names are listed below, along with the most useful @@ -821,6 +2246,54 @@ export interface GetRelationalDatabaseMetricDataRequest { */ metricName: RelationalDatabaseMetricName | string | undefined; + /** + *
The end of the time interval from which to get metric data.
+ *Constraints:
+ *Specified in Coordinated Universal Time (UTC).
+ *Specified in the Unix time format.
+ *For example, if you wish to use an end time of October 1, 2018, at 8 PM UTC, then you
+ * input 1538424000
as the end time.
The start of the time interval from which to get metric data.
+ *Constraints:
+ *Specified in Coordinated Universal Time (UTC).
+ *Specified in the Unix time format.
+ *For example, if you wish to use a start time of October 1, 2018, at 8 PM UTC, then you
+ * input 1538424000
as the start time.
The granularity, in seconds, of the returned data points.
+ *All relational database metric data is available in 1-minute (60 seconds) + * granularity.
+ */ + period: number | undefined; + + /** + *The unit for the metric data request. Valid units depend on the metric data being
+ * requested. For the valid units with each available metric, see the metricName
+ * parameter.
The statistic for the metric.
*The following statistics are available:
@@ -865,14 +2338,14 @@ export namespace GetRelationalDatabaseMetricDataRequest { export interface GetRelationalDatabaseMetricDataResult { /** - *The name of the metric returned.
+ *An array of objects that describe the metric data returned.
*/ - metricName?: RelationalDatabaseMetricName | string; + metricData?: MetricDatapoint[]; /** - *An array of objects that describe the metric data returned.
+ *The name of the metric returned.
*/ - metricData?: MetricDatapoint[]; + metricName?: RelationalDatabaseMetricName | string; } export namespace GetRelationalDatabaseMetricDataResult { @@ -907,9 +2380,15 @@ export namespace GetRelationalDatabaseParametersRequest { */ export interface RelationalDatabaseParameter { /** - *Specifies the valid range of values for the parameter.
+ *Indicates when parameter updates are applied.
+ *Can be immediate
or pending-reboot
.
Specifies the name of the parameter.
+ */ + parameterName?: string; /** *A Boolean value indicating whether the parameter can be modified.
@@ -917,15 +2396,14 @@ export interface RelationalDatabaseParameter { isModifiable?: boolean; /** - *Specifies the value of the parameter.
+ *Provides a description of the parameter.
*/ - parameterValue?: string; + description?: string; /** - *Indicates when parameter updates are applied.
- *Can be immediate
or pending-reboot
.
Specifies the valid range of values for the parameter.
*/ - applyMethod?: string; + allowedValues?: string; /** *Specifies the engine-specific parameter type.
@@ -933,19 +2411,14 @@ export interface RelationalDatabaseParameter { applyType?: string; /** - *Provides a description of the parameter.
- */ - description?: string; - - /** - *Specifies the name of the parameter.
+ *Specifies the valid data type for the parameter.
*/ - parameterName?: string; + dataType?: string; /** - *Specifies the valid data type for the parameter.
+ *Specifies the value of the parameter.
*/ - dataType?: string; + parameterValue?: string; } export namespace RelationalDatabaseParameter { @@ -956,18 +2429,18 @@ export namespace RelationalDatabaseParameter { export interface GetRelationalDatabaseParametersResult { /** - *The token to advance to the next page of resutls from your request.
+ *An object describing the result of your get relational database parameters request.
+ */ + parameters?: RelationalDatabaseParameter[]; + + /** + *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another
* GetRelationalDatabaseParameters
request and specify the next page token using
* the pageToken
parameter.
An object describing the result of your get relational database parameters request.
- */ - parameters?: RelationalDatabaseParameter[]; } export namespace GetRelationalDatabaseParametersResult { @@ -994,17 +2467,17 @@ export namespace GetRelationalDatabasesRequest { export interface GetRelationalDatabasesResult { /** - *An object describing the result of your get relational databases request.
- */ - relationalDatabases?: RelationalDatabase[]; - - /** - *The token to advance to the next page of resutls from your request.
+ *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another GetRelationalDatabases
* request and specify the next page token using the pageToken
parameter.
An object describing the result of your get relational databases request.
+ */ + relationalDatabases?: RelationalDatabase[]; } export namespace GetRelationalDatabasesResult { @@ -1031,9 +2504,9 @@ export namespace GetRelationalDatabaseSnapshotRequest { */ export interface RelationalDatabaseSnapshot { /** - *The timestamp when the database snapshot was created.
+ *The software of the database snapshot (for example, MySQL
)
The Lightsail resource type.
@@ -1041,77 +2514,77 @@ export interface RelationalDatabaseSnapshot { resourceType?: ResourceType | string; /** - *The name of the database snapshot.
+ *The tag keys and optional values for the resource. For more information about tags in + * Lightsail, see the Lightsail + * Dev Guide.
*/ - name?: string; + tags?: Tag[]; /** - *The software of the database snapshot (for example, MySQL
)
The name of the source database from which the database snapshot was created.
*/ - engine?: string; + fromRelationalDatabaseName?: string; /** - *The Amazon Resource Name (ARN) of the database from which the database snapshot was - * created.
+ *The timestamp when the database snapshot was created.
*/ - fromRelationalDatabaseArn?: string; + createdAt?: Date; /** - *The support code for the database snapshot. Include this code in your email to support - * when you have questions about a database snapshot in Lightsail. This code enables our - * support team to look up your Lightsail information more easily.
+ *The Region name and Availability Zone where the database snapshot is located.
*/ - supportCode?: string; + location?: ResourceLocation; /** - *The state of the database snapshot.
+ *The database engine version for the database snapshot (for example,
+ * 5.7.23
).
The size of the disk in GB (for example, 32
) for the database
- * snapshot.
The blueprint ID of the database from which the database snapshot was created. A blueprint + * describes the major engine version of a database.
*/ - sizeInGb?: number; + fromRelationalDatabaseBlueprintId?: string; /** - *The bundle ID of the database from which the database snapshot was created.
+ *The Amazon Resource Name (ARN) of the database snapshot.
*/ - fromRelationalDatabaseBundleId?: string; + arn?: string; /** - *The name of the source database from which the database snapshot was created.
+ *The support code for the database snapshot. Include this code in your email to support + * when you have questions about a database snapshot in Lightsail. This code enables our + * support team to look up your Lightsail information more easily.
*/ - fromRelationalDatabaseName?: string; + supportCode?: string; /** - *The database engine version for the database snapshot (for example,
- * 5.7.23
).
The bundle ID of the database from which the database snapshot was created.
*/ - engineVersion?: string; + fromRelationalDatabaseBundleId?: string; /** - *The tag keys and optional values for the resource. For more information about tags in - * Lightsail, see the Lightsail - * Dev Guide.
+ *The name of the database snapshot.
*/ - tags?: Tag[]; + name?: string; /** - *The Amazon Resource Name (ARN) of the database snapshot.
+ *The state of the database snapshot.
*/ - arn?: string; + state?: string; /** - *The Region name and Availability Zone where the database snapshot is located.
+ *The Amazon Resource Name (ARN) of the database from which the database snapshot was + * created.
*/ - location?: ResourceLocation; + fromRelationalDatabaseArn?: string; /** - *The blueprint ID of the database from which the database snapshot was created. A blueprint - * describes the major engine version of a database.
+ *The size of the disk in GB (for example, 32
) for the database
+ * snapshot.
The token to advance to the next page of resutls from your request.
+ *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another
* GetRelationalDatabaseSnapshots
request and specify the next page token using
@@ -1189,25 +2662,27 @@ export namespace GetStaticIpRequest {
*/
export interface StaticIp {
/**
- *
The resource type (usually StaticIp
).
The support code. Include this code in your email to support when you have questions about + * an instance or another resource in Lightsail. This code enables our support team to look up + * your Lightsail information more easily.
*/ - resourceType?: ResourceType | string; + supportCode?: string; /** - *The timestamp when the static IP was created (e.g., 1479735304.222
).
The name of the static IP (e.g., StaticIP-Ohio-EXAMPLE
).
The region and Availability Zone where the static IP was created.
+ *The Amazon Resource Name (ARN) of the static IP (e.g.,
+ * arn:aws:lightsail:us-east-2:123456789101:StaticIp/9cbb4a9e-f8e3-4dfe-b57e-12345EXAMPLE
).
The instance where the static IP is attached (e.g.,
- * Amazon_Linux-1GB-Ohio-1
).
The region and Availability Zone where the static IP was created.
*/ - attachedTo?: string; + location?: ResourceLocation; /** *The static IP address.
@@ -1215,27 +2690,25 @@ export interface StaticIp { ipAddress?: string; /** - *A Boolean value indicating whether the static IP is attached.
+ *The instance where the static IP is attached (e.g.,
+ * Amazon_Linux-1GB-Ohio-1
).
The name of the static IP (e.g., StaticIP-Ohio-EXAMPLE
).
A Boolean value indicating whether the static IP is attached.
*/ - name?: string; + isAttached?: boolean; /** - *The Amazon Resource Name (ARN) of the static IP (e.g.,
- * arn:aws:lightsail:us-east-2:123456789101:StaticIp/9cbb4a9e-f8e3-4dfe-b57e-12345EXAMPLE
).
The timestamp when the static IP was created (e.g., 1479735304.222
).
The support code. Include this code in your email to support when you have questions about - * an instance or another resource in Lightsail. This code enables our support team to look up - * your Lightsail information more easily.
+ *The resource type (usually StaticIp
).
The token to advance to the next page of resutls from your request.
+ *The token to advance to the next page of results from your request.
*A next page token is not returned if there are no more results to display.
*To get the next page of results, perform another GetStaticIps
request and
* specify the next page token using the pageToken
parameter.
The name of the instance for which to open ports.
+ *An object to describe the ports to open for the specified instance.
*/ - instanceName: string | undefined; + portInfo: PortInfo | undefined; /** - *An object to describe the ports to open for the specified instance.
+ *The name of the instance for which to open ports.
*/ - portInfo: PortInfo | undefined; + instanceName: string | undefined; } export namespace OpenInstancePublicPortsRequest { @@ -1405,46 +2878,30 @@ export namespace PeerVpcResult { export interface PutAlarmRequest { /** - *The number of data points that must be not within the specified threshold to trigger the
- * alarm. If you are setting an "M out of N" alarm, this value (datapointsToAlarm
)
- * is the M.
The arithmetic operation to use when comparing the specified statistic to the threshold. + * The specified statistic value is used as the first operand.
*/ - datapointsToAlarm?: number; + comparisonOperator: ComparisonOperator | string | undefined; /** - *Sets how this alarm will handle missing data points.
- *An alarm can treat missing data in the following ways:
- *
- * breaching
- Assume the missing data is not within the threshold. Missing
- * data counts towards the number of times the metric is not within the threshold.
- * notBreaching
- Assume the missing data is within the threshold. Missing
- * data does not count towards the number of times the metric is not within the
- * threshold.
- * ignore
- Ignore the missing data. Maintains the current alarm
- * state.
- * missing
- Missing data is treated as missing.
If treatMissingData
is not specified, the default behavior of
- * missing
is used.
Indicates whether the alarm is enabled.
+ *Notifications are enabled by default if you don't specify this parameter.
*/ - treatMissingData?: TreatMissingData | string; + notificationEnabled?: boolean; /** - *The value against which the specified statistic is compared.
+ *The number of most recent periods over which data is compared to the specified threshold.
+ * If you are setting an "M out of N" alarm, this value (evaluationPeriods
) is the
+ * N.
If you are setting an alarm that requires that a number of consecutive data points be + * breaching to trigger the alarm, this value specifies the rolling period of time in which data + * points are evaluated.
+ *Each evaluation period is five minutes long. For example, specify an evaluation period of + * 24 to evaluate a metric over a rolling period of two hours.
+ *You can specify a minimum valuation period of 1 (5 minutes), and a maximum evaluation + * period of 288 (24 hours).
*/ - threshold: number | undefined; + evaluationPeriods: number | undefined; /** *The alarm states that trigger a notification.
@@ -1487,43 +2944,59 @@ export interface PutAlarmRequest { notificationTriggers?: (AlarmState | string)[]; /** - *The name of the Lightsail resource that will be monitored.
- *Instances, load balancers, and relational databases are the only Lightsail resources - * that can currently be monitored by alarms.
+ *The value against which the specified statistic is compared.
*/ - monitoredResourceName: string | undefined; + threshold: number | undefined; /** - *The number of most recent periods over which data is compared to the specified threshold.
- * If you are setting an "M out of N" alarm, this value (evaluationPeriods
) is the
- * N.
If you are setting an alarm that requires that a number of consecutive data points be - * breaching to trigger the alarm, this value specifies the rolling period of time in which data - * points are evaluated.
- *Each evaluation period is five minutes long. For example, specify an evaluation period of - * 24 to evaluate a metric over a rolling period of two hours.
- *You can specify a minimum valuation period of 1 (5 minutes), and a maximum evaluation - * period of 288 (24 hours).
+ *The number of data points that must be not within the specified threshold to trigger the
+ * alarm. If you are setting an "M out of N" alarm, this value (datapointsToAlarm
)
+ * is the M.
The arithmetic operation to use when comparing the specified statistic to the threshold. - * The specified statistic value is used as the first operand.
+ *The name for the alarm. Specify the name of an existing alarm to update, and overwrite the + * previous configuration of the alarm.
*/ - comparisonOperator: ComparisonOperator | string | undefined; + alarmName: string | undefined; /** - *Indicates whether the alarm is enabled.
- *Notifications are enabled by default if you don't specify this parameter.
+ *Sets how this alarm will handle missing data points.
+ *An alarm can treat missing data in the following ways:
+ *
+ * breaching
- Assume the missing data is not within the threshold. Missing
+ * data counts towards the number of times the metric is not within the threshold.
+ * notBreaching
- Assume the missing data is within the threshold. Missing
+ * data does not count towards the number of times the metric is not within the
+ * threshold.
+ * ignore
- Ignore the missing data. Maintains the current alarm
+ * state.
+ * missing
- Missing data is treated as missing.
If treatMissingData
is not specified, the default behavior of
+ * missing
is used.
The name for the alarm. Specify the name of an existing alarm to update, and overwrite the - * previous configuration of the alarm.
+ *The name of the Lightsail resource that will be monitored.
+ *Instances, load balancers, and relational databases are the only Lightsail resources + * that can currently be monitored by alarms.
*/ - alarmName: string | undefined; + monitoredResourceName: string | undefined; /** *The contact protocols to use for the alarm, such as Email
, SMS
@@ -1596,14 +3069,14 @@ export namespace PutAlarmResult {
export interface PutInstancePublicPortsRequest {
/**
- *
The name of the instance for which to open ports.
+ *An array of objects to describe the ports to open for the specified instance.
*/ - instanceName: string | undefined; + portInfos: PortInfo[] | undefined; /** - *An array of objects to describe the ports to open for the specified instance.
+ *The name of the instance for which to open ports.
*/ - portInfos: PortInfo[] | undefined; + instanceName: string | undefined; } export namespace PutInstancePublicPortsRequest { @@ -1653,29 +3126,90 @@ export namespace RebootInstanceResult { }); } -export interface RebootRelationalDatabaseRequest { +export interface RebootRelationalDatabaseRequest { + /** + *The name of your database to reboot.
+ */ + relationalDatabaseName: string | undefined; +} + +export namespace RebootRelationalDatabaseRequest { + export const filterSensitiveLog = (obj: RebootRelationalDatabaseRequest): any => ({ + ...obj, + }); +} + +export interface RebootRelationalDatabaseResult { + /** + *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.
+ */ + operations?: Operation[]; +} + +export namespace RebootRelationalDatabaseResult { + export const filterSensitiveLog = (obj: RebootRelationalDatabaseResult): any => ({ + ...obj, + }); +} + +export interface RegisterContainerImageRequest { /** - *The name of your database to reboot.
+ *The label for the container image when it's registered to the container service.
+ * + *Use a descriptive label that you can use to track the different versions of your + * registered container images.
+ * + *Use the GetContainerImages
action to return the container images registered
+ * to a Lightsail container service. The label is the
portion
+ * of the following image name example:
+ * :container-service-1.
+ *
If the name of your container service is mycontainerservice
, and the label
+ * that you specify is mystaticwebsite
, then the name of the registered container
+ * image will be :mycontainerservice.mystaticwebsite.1
.
The number at the end of these image name examples represents the version of the
+ * registered container image. If you push and register another container image to the same
+ * Lightsail container service, with the same label, then the version number for the new
+ * registered container image will be 2
. If you push and register another container
+ * image, the version number will be 3
, and so on.
The digest of the container image to be registered.
+ */ + digest: string | undefined; + + /** + *The name of the container service for which to register a container image.
+ */ + serviceName: string | undefined; } -export namespace RebootRelationalDatabaseRequest { - export const filterSensitiveLog = (obj: RebootRelationalDatabaseRequest): any => ({ +export namespace RegisterContainerImageRequest { + export const filterSensitiveLog = (obj: RegisterContainerImageRequest): any => ({ ...obj, }); } -export interface RebootRelationalDatabaseResult { +export interface RegisterContainerImageResult { /** - *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.
+ *Describes a container image that is registered to an Amazon Lightsail container + * service.
*/ - operations?: Operation[]; + containerImage?: ContainerImage; } -export namespace RebootRelationalDatabaseResult { - export const filterSensitiveLog = (obj: RebootRelationalDatabaseResult): any => ({ +export namespace RegisterContainerImageResult { + export const filterSensitiveLog = (obj: RegisterContainerImageResult): any => ({ ...obj, }); } @@ -1710,7 +3244,6 @@ export namespace ReleaseStaticIpResult { export interface ResetDistributionCacheRequest { /** *The name of the distribution for which to reset cache.
- * *Use the GetDistributions
action to get a list of distribution names that you
* can specify.
The Amazon Resource Name (ARN) of the resource to which you want to add a tag.
+ */ + resourceArn?: string; + /** *The name of the resource to which you are adding tags.
*/ @@ -1910,11 +3448,6 @@ export interface TagResourceRequest { *The tag key and optional value.
*/ tags: Tag[] | undefined; - - /** - *The Amazon Resource Name (ARN) of the resource to which you want to add a tag.
- */ - resourceArn?: string; } export namespace TagResourceRequest { @@ -1938,11 +3471,6 @@ export namespace TagResourceResult { } export interface TestAlarmRequest { - /** - *The name of the alarm to test.
- */ - alarmName: string | undefined; - /** *The alarm state to test.
*An alarm has the following possible states that can be tested:
@@ -1964,6 +3492,11 @@ export interface TestAlarmRequest { *The name of the alarm to test.
+ */ + alarmName: string | undefined; } export namespace TestAlarmRequest { @@ -2010,9 +3543,9 @@ export namespace UnpeerVpcResult { export interface UntagResourceRequest { /** - *The tag keys to delete from the specified resource.
+ *The Amazon Resource Name (ARN) of the resource from which you want to remove a tag.
*/ - tagKeys: string[] | undefined; + resourceArn?: string; /** *The name of the resource from which you are removing a tag.
@@ -2020,9 +3553,9 @@ export interface UntagResourceRequest { resourceName: string | undefined; /** - *The Amazon Resource Name (ARN) of the resource from which you want to remove a tag.
+ *The tag keys to delete from the specified resource.
*/ - resourceArn?: string; + tagKeys: string[] | undefined; } export namespace UntagResourceRequest { @@ -2045,33 +3578,85 @@ export namespace UntagResourceResult { }); } -export interface UpdateDistributionRequest { +export interface UpdateContainerServiceRequest { /** - *An object that describes the origin resource for the distribution, such as a Lightsail - * instance or load balancer.
+ *A Boolean value to indicate whether the container service is disabled.
+ */ + isDisabled?: boolean; + + /** + *The power for the container service.
* - *The distribution pulls, caches, and serves content from the origin.
+ *The power specifies the amount of memory, vCPUs, and base monthly cost of each node of the
+ * container service. The power
and scale
of a container service makes
+ * up its configured capacity. To determine the monthly price of your container service, multiply
+ * the base price of the power
with the scale
(the number of nodes) of
+ * the service.
Use the GetContainerServicePowers
action to view the specifications of each
+ * power option.
The name of the distribution to update.
+ *The scale for the container service.
* - *Use the GetDistributions
action to get a list of distribution names that you
- * can specify.
The scale specifies the allocated compute nodes of the container service. The
+ * power
and scale
of a container service makes up its configured
+ * capacity. To determine the monthly price of your container service, multiply the base price of
+ * the power
with the scale
(the number of nodes) of the
+ * service.
Indicates whether to enable the distribution.
+ *The public domain names to use with the container service, such as
+ * example.com
and www.example.com
.
You can specify up to four public domain names for a container service. The domain names + * that you specify are used when you create a deployment with a container configured as the + * public endpoint of your container service.
+ * + *If you don't specify public domain names, then you can use the default domain of the + * container service.
+ * + *You must create and validate an SSL/TLS certificate before you can use public domain
+ * names with your container service. Use the CreateCertificate
action to create a
+ * certificate for the public domain names you want to use with your container service.
You can specify public domain names using a string to array map as shown in the example + * later on this page.
*/ - isEnabled?: boolean; + publicDomainNames?: { [key: string]: string[] }; /** - *An array of objects that describe the per-path cache behavior for the distribution.
+ *The name of the container service to update.
*/ - cacheBehaviors?: CacheBehaviorPerPath[]; + serviceName: string | undefined; +} + +export namespace UpdateContainerServiceRequest { + export const filterSensitiveLog = (obj: UpdateContainerServiceRequest): any => ({ + ...obj, + }); +} + +export interface UpdateContainerServiceResult { + /** + *An object that describes a container service.
+ */ + containerService?: ContainerService; +} + +export namespace UpdateContainerServiceResult { + export const filterSensitiveLog = (obj: UpdateContainerServiceResult): any => ({ + ...obj, + }); +} +export interface UpdateDistributionRequest { /** *An object that describes the default cache behavior for the distribution.
*/ @@ -2086,6 +3671,30 @@ export interface UpdateDistributionRequest { *Indicates whether to enable the distribution.
+ */ + isEnabled?: boolean; + + /** + *The name of the distribution to update.
+ *Use the GetDistributions
action to get a list of distribution names that you
+ * can specify.
An object that describes the origin resource for the distribution, such as a Lightsail + * instance or load balancer.
+ *The distribution pulls, caches, and serves content from the origin.
+ */ + origin?: InputOrigin; + + /** + *An array of objects that describe the per-path cache behavior for the distribution.
+ */ + cacheBehaviors?: CacheBehaviorPerPath[]; } export namespace UpdateDistributionRequest { @@ -2109,20 +3718,19 @@ export namespace UpdateDistributionResult { } export interface UpdateDistributionBundleRequest { - /** - *The name of the distribution for which to update the bundle.
- * - *Use the GetDistributions
action to get a list of distribution names that you
- * can specify.
The bundle ID of the new bundle to apply to your distribution.
*Use the GetDistributionBundles
action to get a list of distribution bundle
* IDs that you can specify.
The name of the distribution for which to update the bundle.
+ *Use the GetDistributions
action to get a list of distribution names that you
+ * can specify.
The name of the domain recordset to update.
+ *An array of key-value pairs containing information about the domain entry.
*/ - domainName: string | undefined; + domainEntry: DomainEntry | undefined; /** - *An array of key-value pairs containing information about the domain entry.
+ *The name of the domain recordset to update.
*/ - domainEntry: DomainEntry | undefined; + domainName: string | undefined; } export namespace UpdateDomainEntryRequest { @@ -2178,10 +3786,9 @@ export namespace UpdateDomainEntryResult { export interface UpdateLoadBalancerAttributeRequest { /** - *The name of the load balancer that you want to modify (e.g.,
- * my-load-balancer
.
The name of the attribute you want to update. Valid values are below.
*/ - loadBalancerName: string | undefined; + attributeName: LoadBalancerAttributeName | string | undefined; /** *The value that you want to specify for the attribute name.
@@ -2189,9 +3796,10 @@ export interface UpdateLoadBalancerAttributeRequest { attributeValue: string | undefined; /** - *The name of the attribute you want to update. Valid values are below.
+ *The name of the load balancer that you want to modify (e.g.,
+ * my-load-balancer
.
When true
, disables automated backup retention for your database.
Disabling backup retention deletes all automated database backups. Before disabling this,
+ * you may want to create a snapshot of your database using the create relational database
+ * snapshot
operation.
Updates are applied during the next maintenance window because this can result in an + * outage.
+ */ + disableBackupRetention?: boolean; + + /** + *Specifies the accessibility options for your database. A value of true
+ * specifies a database that is available to resources outside of your Lightsail account. A
+ * value of false
specifies a database that is available only to your Lightsail
+ * resources in the same region as your database.
When true
, applies changes immediately. When false
, applies
+ * changes during the preferred maintenance window. Some changes may cause an outage.
Default: false
+ *
When true
, the master user password is changed to a new strong password
+ * generated by Lightsail.
Use the get relational database master user password
operation to get the new
+ * password.
When true
, enables automated backup retention for your database.
Updates are applied during the next maintenance window because this can result in an + * outage.
+ */ + enableBackupRetention?: boolean; + /** *The weekly time range during which system maintenance can occur on your database.
*The default is a 30-minute window selected at random from an 8-hour block of time for each @@ -2242,12 +3891,14 @@ export interface UpdateRelationalDatabaseRequest { preferredMaintenanceWindow?: string; /** - *
When true
, applies changes immediately. When false
, applies
- * changes during the preferred maintenance window. Some changes may cause an outage.
Default: false
- *
The name of your database to update.
*/ - applyImmediately?: boolean; + relationalDatabaseName: string | undefined; + + /** + *Indicates the certificate that needs to be associated with the database.
+ */ + caCertificateIdentifier?: string; /** *The daily time range during which automated backups are created for your database if @@ -2272,49 +3923,6 @@ export interface UpdateRelationalDatabaseRequest { */ preferredBackupWindow?: string; - /** - *
The name of your database to update.
- */ - relationalDatabaseName: string | undefined; - - /** - *Specifies the accessibility options for your database. A value of true
- * specifies a database that is available to resources outside of your Lightsail account. A
- * value of false
specifies a database that is available only to your Lightsail
- * resources in the same region as your database.
When true
, enables automated backup retention for your database.
Updates are applied during the next maintenance window because this can result in an - * outage.
- */ - enableBackupRetention?: boolean; - - /** - *When true
, the master user password is changed to a new strong password
- * generated by Lightsail.
Use the get relational database master user password
operation to get the new
- * password.
When true
, disables automated backup retention for your database.
Disabling backup retention deletes all automated database backups. Before disabling this,
- * you may want to create a snapshot of your database using the create relational database
- * snapshot
operation.
Updates are applied during the next maintenance window because this can result in an - * outage.
- */ - disableBackupRetention?: boolean; - - /** - *Indicates the certificate that needs to be associated with the database.
- */ - caCertificateIdentifier?: string; - /** *The password for the master user of your database. The password can include any printable * ASCII character except "/", """, or "@".
@@ -2346,14 +3954,14 @@ export namespace UpdateRelationalDatabaseResult { export interface UpdateRelationalDatabaseParametersRequest { /** - *The name of your database for which to update parameters.
+ *The database parameters to update.
*/ - relationalDatabaseName: string | undefined; + parameters: RelationalDatabaseParameter[] | undefined; /** - *The database parameters to update.
+ *The name of your database for which to update parameters.
*/ - parameters: RelationalDatabaseParameter[] | undefined; + relationalDatabaseName: string | undefined; } export namespace UpdateRelationalDatabaseParametersRequest { diff --git a/clients/client-lightsail/protocols/Aws_json1_1.ts b/clients/client-lightsail/protocols/Aws_json1_1.ts index 7784f4c1de3dd..911bd73a5d4d8 100644 --- a/clients/client-lightsail/protocols/Aws_json1_1.ts +++ b/clients/client-lightsail/protocols/Aws_json1_1.ts @@ -27,6 +27,18 @@ import { CreateContactMethodCommandInput, CreateContactMethodCommandOutput, } from "../commands/CreateContactMethodCommand"; +import { + CreateContainerServiceCommandInput, + CreateContainerServiceCommandOutput, +} from "../commands/CreateContainerServiceCommand"; +import { + CreateContainerServiceDeploymentCommandInput, + CreateContainerServiceDeploymentCommandOutput, +} from "../commands/CreateContainerServiceDeploymentCommand"; +import { + CreateContainerServiceRegistryLoginCommandInput, + CreateContainerServiceRegistryLoginCommandOutput, +} from "../commands/CreateContainerServiceRegistryLoginCommand"; import { CreateDiskCommandInput, CreateDiskCommandOutput } from "../commands/CreateDiskCommand"; import { CreateDiskFromSnapshotCommandInput, @@ -70,6 +82,14 @@ import { DeleteContactMethodCommandInput, DeleteContactMethodCommandOutput, } from "../commands/DeleteContactMethodCommand"; +import { + DeleteContainerImageCommandInput, + DeleteContainerImageCommandOutput, +} from "../commands/DeleteContainerImageCommand"; +import { + DeleteContainerServiceCommandInput, + DeleteContainerServiceCommandOutput, +} from "../commands/DeleteContainerServiceCommand"; import { DeleteDiskCommandInput, DeleteDiskCommandOutput } from "../commands/DeleteDiskCommand"; import { DeleteDiskSnapshotCommandInput, DeleteDiskSnapshotCommandOutput } from "../commands/DeleteDiskSnapshotCommand"; import { DeleteDistributionCommandInput, DeleteDistributionCommandOutput } from "../commands/DeleteDistributionCommand"; @@ -126,6 +146,28 @@ import { GetCloudFormationStackRecordsCommandOutput, } from "../commands/GetCloudFormationStackRecordsCommand"; import { GetContactMethodsCommandInput, GetContactMethodsCommandOutput } from "../commands/GetContactMethodsCommand"; +import { + GetContainerAPIMetadataCommandInput, + GetContainerAPIMetadataCommandOutput, +} from "../commands/GetContainerAPIMetadataCommand"; +import { GetContainerImagesCommandInput, GetContainerImagesCommandOutput } from "../commands/GetContainerImagesCommand"; +import { GetContainerLogCommandInput, GetContainerLogCommandOutput } from "../commands/GetContainerLogCommand"; +import { + GetContainerServiceDeploymentsCommandInput, + GetContainerServiceDeploymentsCommandOutput, +} from "../commands/GetContainerServiceDeploymentsCommand"; +import { + GetContainerServiceMetricDataCommandInput, + GetContainerServiceMetricDataCommandOutput, +} from "../commands/GetContainerServiceMetricDataCommand"; +import { + GetContainerServicePowersCommandInput, + GetContainerServicePowersCommandOutput, +} from "../commands/GetContainerServicePowersCommand"; +import { + GetContainerServicesCommandInput, + GetContainerServicesCommandOutput, +} from "../commands/GetContainerServicesCommand"; import { GetDiskCommandInput, GetDiskCommandOutput } from "../commands/GetDiskCommand"; import { GetDiskSnapshotCommandInput, GetDiskSnapshotCommandOutput } from "../commands/GetDiskSnapshotCommand"; import { GetDiskSnapshotsCommandInput, GetDiskSnapshotsCommandOutput } from "../commands/GetDiskSnapshotsCommand"; @@ -258,6 +300,10 @@ import { RebootRelationalDatabaseCommandInput, RebootRelationalDatabaseCommandOutput, } from "../commands/RebootRelationalDatabaseCommand"; +import { + RegisterContainerImageCommandInput, + RegisterContainerImageCommandOutput, +} from "../commands/RegisterContainerImageCommand"; import { ReleaseStaticIpCommandInput, ReleaseStaticIpCommandOutput } from "../commands/ReleaseStaticIpCommand"; import { ResetDistributionCacheCommandInput, @@ -281,6 +327,10 @@ import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/T import { TestAlarmCommandInput, TestAlarmCommandOutput } from "../commands/TestAlarmCommand"; import { UnpeerVpcCommandInput, UnpeerVpcCommandOutput } from "../commands/UnpeerVpcCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { + UpdateContainerServiceCommandInput, + UpdateContainerServiceCommandOutput, +} from "../commands/UpdateContainerServiceCommand"; import { UpdateDistributionBundleCommandInput, UpdateDistributionBundleCommandOutput, @@ -336,6 +386,18 @@ import { CloudFormationStackRecordSourceInfo, ContactMethod, ContactProtocol, + Container, + ContainerImage, + ContainerService, + ContainerServiceDeployment, + ContainerServiceDeploymentRequest, + ContainerServiceEndpoint, + ContainerServiceHealthCheckConfig, + ContainerServiceLogEvent, + ContainerServicePower, + ContainerServiceProtocol, + ContainerServiceRegistryLogin, + ContainerServicesListResult, CookieObject, CopySnapshotRequest, CopySnapshotResult, @@ -345,6 +407,12 @@ import { CreateCloudFormationStackResult, CreateContactMethodRequest, CreateContactMethodResult, + CreateContainerServiceDeploymentRequest, + CreateContainerServiceDeploymentResult, + CreateContainerServiceRegistryLoginRequest, + CreateContainerServiceRegistryLoginResult, + CreateContainerServiceRequest, + CreateContainerServiceResult, CreateDiskFromSnapshotRequest, CreateDiskFromSnapshotResult, CreateDiskRequest, @@ -383,6 +451,10 @@ import { DeleteCertificateResult, DeleteContactMethodRequest, DeleteContactMethodResult, + DeleteContainerImageRequest, + DeleteContainerImageResult, + DeleteContainerServiceRequest, + DeleteContainerServiceResult, DeleteDiskRequest, DeleteDiskResult, DeleteDiskSnapshotRequest, @@ -433,6 +505,7 @@ import { DownloadDefaultKeyPairResult, EnableAddOnRequest, EnableAddOnResult, + EndpointRequest, ExportSnapshotRecord, ExportSnapshotRecordSourceInfo, ExportSnapshotRequest, @@ -453,6 +526,19 @@ import { GetCloudFormationStackRecordsResult, GetContactMethodsRequest, GetContactMethodsResult, + GetContainerAPIMetadataRequest, + GetContainerAPIMetadataResult, + GetContainerImagesRequest, + GetContainerImagesResult, + GetContainerLogRequest, + GetContainerLogResult, + GetContainerServiceDeploymentsRequest, + GetContainerServiceDeploymentsResult, + GetContainerServiceMetricDataRequest, + GetContainerServiceMetricDataResult, + GetContainerServicePowersRequest, + GetContainerServicePowersResult, + GetContainerServicesRequest, GetDiskRequest, GetDiskResult, GetDiskSnapshotRequest, @@ -494,24 +580,6 @@ import { GetKeyPairRequest, GetKeyPairResult, GetKeyPairsRequest, - GetKeyPairsResult, - GetLoadBalancerMetricDataRequest, - GetLoadBalancerMetricDataResult, - GetLoadBalancerRequest, - GetLoadBalancerResult, - GetLoadBalancerTlsCertificatesRequest, - GetLoadBalancerTlsCertificatesResult, - GetLoadBalancersRequest, - GetLoadBalancersResult, - GetOperationRequest, - GetOperationResult, - GetOperationsForResourceRequest, - GetOperationsForResourceResult, - GetOperationsRequest, - GetOperationsResult, - GetRegionsRequest, - GetRegionsResult, - GetRelationalDatabaseRequest, HeaderEnum, HeaderObject, HostKeyAttributes, @@ -520,7 +588,6 @@ import { InstanceAccessDetails, InstanceEntry, InstanceHardware, - InstanceHealthSummary, InstanceNetworking, InstancePlatform, InstancePortInfo, @@ -531,13 +598,6 @@ import { InvalidInputException, KeyPair, LightsailDistribution, - LoadBalancer, - LoadBalancerAttributeName, - LoadBalancerTlsCertificate, - LoadBalancerTlsCertificateDomainValidationOption, - LoadBalancerTlsCertificateDomainValidationRecord, - LoadBalancerTlsCertificateRenewalSummary, - LoadBalancerTlsCertificateSummary, MetricDatapoint, MetricStatistic, MonitoredResourceInfo, @@ -547,12 +607,8 @@ import { OperationFailureException, Origin, PasswordData, - PendingMaintenanceAction, PortInfo, QueryStringObject, - Region, - RelationalDatabaseEndpoint, - RelationalDatabaseHardware, RenewalSummary, ResourceLocation, ResourceRecord, @@ -561,6 +617,23 @@ import { UnauthenticatedException, } from "../models/models_0"; import { + GetKeyPairsResult, + GetLoadBalancerMetricDataRequest, + GetLoadBalancerMetricDataResult, + GetLoadBalancerRequest, + GetLoadBalancerResult, + GetLoadBalancerTlsCertificatesRequest, + GetLoadBalancerTlsCertificatesResult, + GetLoadBalancersRequest, + GetLoadBalancersResult, + GetOperationRequest, + GetOperationResult, + GetOperationsForResourceRequest, + GetOperationsForResourceResult, + GetOperationsRequest, + GetOperationsResult, + GetRegionsRequest, + GetRegionsResult, GetRelationalDatabaseBlueprintsRequest, GetRelationalDatabaseBlueprintsResult, GetRelationalDatabaseBundlesRequest, @@ -577,6 +650,7 @@ import { GetRelationalDatabaseMetricDataResult, GetRelationalDatabaseParametersRequest, GetRelationalDatabaseParametersResult, + GetRelationalDatabaseRequest, GetRelationalDatabaseResult, GetRelationalDatabaseSnapshotRequest, GetRelationalDatabaseSnapshotResult, @@ -590,13 +664,22 @@ import { GetStaticIpsResult, ImportKeyPairRequest, ImportKeyPairResult, + InstanceHealthSummary, IsVpcPeeredRequest, IsVpcPeeredResult, + LoadBalancer, + LoadBalancerAttributeName, + LoadBalancerTlsCertificate, + LoadBalancerTlsCertificateDomainValidationOption, + LoadBalancerTlsCertificateDomainValidationRecord, + LoadBalancerTlsCertificateRenewalSummary, + LoadBalancerTlsCertificateSummary, LogEvent, OpenInstancePublicPortsRequest, OpenInstancePublicPortsResult, PeerVpcRequest, PeerVpcResult, + PendingMaintenanceAction, PendingModifiedRelationalDatabaseValues, PutAlarmRequest, PutAlarmResult, @@ -606,10 +689,15 @@ import { RebootInstanceResult, RebootRelationalDatabaseRequest, RebootRelationalDatabaseResult, + Region, + RegisterContainerImageRequest, + RegisterContainerImageResult, RelationalDatabase, RelationalDatabaseBlueprint, RelationalDatabaseBundle, + RelationalDatabaseEndpoint, RelationalDatabaseEvent, + RelationalDatabaseHardware, RelationalDatabaseParameter, RelationalDatabaseSnapshot, ReleaseStaticIpRequest, @@ -635,6 +723,8 @@ import { UnpeerVpcResult, UntagResourceRequest, UntagResourceResult, + UpdateContainerServiceRequest, + UpdateContainerServiceResult, UpdateDistributionBundleRequest, UpdateDistributionBundleResult, UpdateDistributionRequest, @@ -801,6 +891,45 @@ export const serializeAws_json1_1CreateContactMethodCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +export const serializeAws_json1_1CreateContainerServiceCommand = async ( + input: CreateContainerServiceCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.CreateContainerService", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1CreateContainerServiceRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +export const serializeAws_json1_1CreateContainerServiceDeploymentCommand = async ( + input: CreateContainerServiceDeploymentCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.CreateContainerServiceDeployment", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1CreateContainerServiceDeploymentRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +export const serializeAws_json1_1CreateContainerServiceRegistryLoginCommand = async ( + input: CreateContainerServiceRegistryLoginCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.CreateContainerServiceRegistryLogin", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1CreateContainerServiceRegistryLoginRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + export const serializeAws_json1_1CreateDiskCommand = async ( input: CreateDiskCommandInput, context: __SerdeContext @@ -1048,6 +1177,32 @@ export const serializeAws_json1_1DeleteContactMethodCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +export const serializeAws_json1_1DeleteContainerImageCommand = async ( + input: DeleteContainerImageCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.DeleteContainerImage", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1DeleteContainerImageRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +export const serializeAws_json1_1DeleteContainerServiceCommand = async ( + input: DeleteContainerServiceCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.DeleteContainerService", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1DeleteContainerServiceRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + export const serializeAws_json1_1DeleteDiskCommand = async ( input: DeleteDiskCommandInput, context: __SerdeContext @@ -1425,6 +1580,97 @@ export const serializeAws_json1_1GetContactMethodsCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +export const serializeAws_json1_1GetContainerAPIMetadataCommand = async ( + input: GetContainerAPIMetadataCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.GetContainerAPIMetadata", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1GetContainerAPIMetadataRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +export const serializeAws_json1_1GetContainerImagesCommand = async ( + input: GetContainerImagesCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.GetContainerImages", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1GetContainerImagesRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +export const serializeAws_json1_1GetContainerLogCommand = async ( + input: GetContainerLogCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.GetContainerLog", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1GetContainerLogRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +export const serializeAws_json1_1GetContainerServiceDeploymentsCommand = async ( + input: GetContainerServiceDeploymentsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.GetContainerServiceDeployments", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1GetContainerServiceDeploymentsRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +export const serializeAws_json1_1GetContainerServiceMetricDataCommand = async ( + input: GetContainerServiceMetricDataCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.GetContainerServiceMetricData", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1GetContainerServiceMetricDataRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +export const serializeAws_json1_1GetContainerServicePowersCommand = async ( + input: GetContainerServicePowersCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.GetContainerServicePowers", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1GetContainerServicePowersRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +export const serializeAws_json1_1GetContainerServicesCommand = async ( + input: GetContainerServicesCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.GetContainerServices", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1GetContainerServicesRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + export const serializeAws_json1_1GetDiskCommand = async ( input: GetDiskCommandInput, context: __SerdeContext @@ -2088,6 +2334,19 @@ export const serializeAws_json1_1RebootRelationalDatabaseCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +export const serializeAws_json1_1RegisterContainerImageCommand = async ( + input: RegisterContainerImageCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.RegisterContainerImage", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1RegisterContainerImageRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + export const serializeAws_json1_1ReleaseStaticIpCommand = async ( input: ReleaseStaticIpCommandInput, context: __SerdeContext @@ -2231,6 +2490,19 @@ export const serializeAws_json1_1UntagResourceCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +export const serializeAws_json1_1UpdateContainerServiceCommand = async ( + input: UpdateContainerServiceCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = { + "Content-Type": "application/x-amz-json-1.1", + "X-Amz-Target": "Lightsail_20161128.UpdateContainerService", + }; + let body: any; + body = JSON.stringify(serializeAws_json1_1UpdateContainerServiceRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + export const serializeAws_json1_1UpdateDistributionCommand = async ( input: UpdateDistributionCommandInput, context: __SerdeContext @@ -3410,27 +3682,27 @@ const deserializeAws_json1_1CreateContactMethodCommandError = async ( return Promise.reject(Object.assign(new Error(message), response)); }; -export const deserializeAws_json1_1CreateDiskCommand = async ( +export const deserializeAws_json1_1CreateContainerServiceCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise