From f1e8a520108665c9002c928b381fb737a6724c70 Mon Sep 17 00:00:00 2001 From: awssdkgo Date: Thu, 23 Jul 2020 18:13:34 +0000 Subject: [PATCH] Release v1.33.11 (2020-07-23) === ### Service Client Updates * `service/config`: Updates service API and documentation * `service/directconnect`: Updates service documentation * Documentation updates for AWS Direct Connect * `service/fsx`: Updates service API and documentation * `service/glue`: Updates service API and documentation * Added new ConnectionProperties: "KAFKA_SSL_ENABLED" (to toggle SSL connections) and "KAFKA_CUSTOM_CERT" (import CA certificate file) * `service/lightsail`: Updates service API and documentation * This release adds support for Amazon Lightsail content delivery network (CDN) distributions and SSL/TLS certificates. * `service/workspaces`: Updates service API and documentation * Added UpdateWorkspaceImagePermission API to share Amazon WorkSpaces images across AWS accounts. --- CHANGELOG.md | 15 + aws/endpoints/defaults.go | 8 + aws/version.go | 2 +- models/apis/config/2014-11-12/api-2.json | 17 +- models/apis/config/2014-11-12/docs-2.json | 51 +- .../apis/directconnect/2012-10-25/docs-2.json | 2 +- models/apis/fsx/2018-03-01/api-2.json | 37 +- models/apis/fsx/2018-03-01/docs-2.json | 21 + models/apis/glue/2017-03-31/api-2.json | 5 +- models/apis/glue/2017-03-31/docs-2.json | 12 +- models/apis/lightsail/2016-11-28/api-2.json | 750 +- models/apis/lightsail/2016-11-28/docs-2.json | 557 +- models/apis/workspaces/2015-04-08/api-2.json | 91 +- models/apis/workspaces/2015-04-08/docs-2.json | 72 +- models/endpoints/endpoints.json | 8 + service/configservice/api.go | 217 +- service/directconnect/api.go | 6 +- service/fsx/api.go | 177 +- service/glue/api.go | 40 +- service/lightsail/api.go | 15044 ++++++++++------ service/lightsail/doc.go | 30 +- service/lightsail/lightsailiface/interface.go | 56 + service/workspaces/api.go | 458 +- .../workspaces/workspacesiface/interface.go | 8 + 24 files changed, 12110 insertions(+), 5574 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 217a7c6b859..155b13b9349 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,18 @@ +Release v1.33.11 (2020-07-23) +=== + +### Service Client Updates +* `service/config`: Updates service API and documentation +* `service/directconnect`: Updates service documentation + * Documentation updates for AWS Direct Connect +* `service/fsx`: Updates service API and documentation +* `service/glue`: Updates service API and documentation + * Added new ConnectionProperties: "KAFKA_SSL_ENABLED" (to toggle SSL connections) and "KAFKA_CUSTOM_CERT" (import CA certificate file) +* `service/lightsail`: Updates service API and documentation + * This release adds support for Amazon Lightsail content delivery network (CDN) distributions and SSL/TLS certificates. +* `service/workspaces`: Updates service API and documentation + * Added UpdateWorkspaceImagePermission API to share Amazon WorkSpaces images across AWS accounts. + Release v1.33.10 (2020-07-22) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 12c0ad2338f..57a65b9686a 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -8984,6 +8984,14 @@ var awsisoPartition = partition{ "us-iso-east-1": endpoint{}, }, }, + "transcribe": service{ + Defaults: endpoint{ + Protocols: []string{"https"}, + }, + Endpoints: endpoints{ + "us-iso-east-1": endpoint{}, + }, + }, "transcribestreaming": service{ Endpoints: endpoints{ diff --git a/aws/version.go b/aws/version.go index b4dd253cd8c..22d832a7a86 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.33.10" +const SDKVersion = "1.33.11" diff --git a/models/apis/config/2014-11-12/api-2.json b/models/apis/config/2014-11-12/api-2.json index 46a4065bd55..5d1a351ecd2 100644 --- a/models/apis/config/2014-11-12/api-2.json +++ b/models/apis/config/2014-11-12/api-2.json @@ -385,7 +385,8 @@ "output":{"shape":"DescribeConformancePackStatusResponse"}, "errors":[ {"shape":"InvalidLimitException"}, - {"shape":"InvalidNextTokenException"} + {"shape":"InvalidNextTokenException"}, + {"shape":"InvalidParameterValueException"} ] }, "DescribeConformancePacks":{ @@ -399,7 +400,8 @@ "errors":[ {"shape":"NoSuchConformancePackException"}, {"shape":"InvalidLimitException"}, - {"shape":"InvalidNextTokenException"} + {"shape":"InvalidNextTokenException"}, + {"shape":"InvalidParameterValueException"} ] }, "DescribeDeliveryChannelStatus":{ @@ -956,7 +958,8 @@ "input":{"shape":"PutRemediationExceptionsRequest"}, "output":{"shape":"PutRemediationExceptionsResponse"}, "errors":[ - {"shape":"InvalidParameterValueException"} + {"shape":"InvalidParameterValueException"}, + {"shape":"InsufficientPermissionsException"} ] }, "PutResourceConfig":{ @@ -1528,7 +1531,8 @@ "AccountAggregationSources":{"shape":"AccountAggregationSourceList"}, "OrganizationAggregationSource":{"shape":"OrganizationAggregationSource"}, "CreationTime":{"shape":"Date"}, - "LastUpdatedTime":{"shape":"Date"} + "LastUpdatedTime":{"shape":"Date"}, + "CreatedBy":{"shape":"StringWithCharLimit256"} } }, "ConfigurationAggregatorArn":{ @@ -4010,7 +4014,10 @@ "AWS::ServiceCatalog::Portfolio", "AWS::SQS::Queue", "AWS::KMS::Key", - "AWS::QLDB::Ledger" + "AWS::QLDB::Ledger", + "AWS::SecretsManager::Secret", + "AWS::SNS::Topic", + "AWS::SSM::FileData" ] }, "ResourceTypeList":{ diff --git a/models/apis/config/2014-11-12/docs-2.json b/models/apis/config/2014-11-12/docs-2.json index 6b365a652c7..ee8639ff663 100644 --- a/models/apis/config/2014-11-12/docs-2.json +++ b/models/apis/config/2014-11-12/docs-2.json @@ -11,11 +11,11 @@ "DeleteConformancePack": "

Deletes the specified conformance pack and all the AWS Config rules, remediation actions, and all evaluation results within that conformance pack.

AWS Config sets the conformance pack to DELETE_IN_PROGRESS until the deletion is complete. You cannot update a conformance pack while it is in this state.

", "DeleteDeliveryChannel": "

Deletes the delivery channel.

Before you can delete the delivery channel, you must stop the configuration recorder by using the StopConfigurationRecorder action.

", "DeleteEvaluationResults": "

Deletes the evaluation results for the specified AWS Config rule. You can specify one AWS Config rule per request. After you delete the evaluation results, you can call the StartConfigRulesEvaluation API to start evaluating your AWS resources against the rule.

", - "DeleteOrganizationConfigRule": "

Deletes the specified organization config rule and all of its evaluation results from all member accounts in that organization. Only a master account can delete an organization config rule.

AWS Config sets the state of a rule to DELETE_IN_PROGRESS until the deletion is complete. You cannot update a rule while it is in this state.

", - "DeleteOrganizationConformancePack": "

Deletes the specified organization conformance pack and all of the config rules and remediation actions from all member accounts in that organization. Only a master account can delete an organization conformance pack.

AWS Config sets the state of a conformance pack to DELETE_IN_PROGRESS until the deletion is complete. You cannot update a conformance pack while it is in this state.

", + "DeleteOrganizationConfigRule": "

Deletes the specified organization config rule and all of its evaluation results from all member accounts in that organization.

Only a master account and a delegated administrator account can delete an organization config rule. When calling this API with a delegated administrator, you must ensure AWS Organizations ListDelegatedAdministrator permissions are added.

AWS Config sets the state of a rule to DELETE_IN_PROGRESS until the deletion is complete. You cannot update a rule while it is in this state.

", + "DeleteOrganizationConformancePack": "

Deletes the specified organization conformance pack and all of the config rules and remediation actions from all member accounts in that organization.

Only a master account or a delegated administrator account can delete an organization conformance pack. When calling this API with a delegated administrator, you must ensure AWS Organizations ListDelegatedAdministrator permissions are added.

AWS Config sets the state of a conformance pack to DELETE_IN_PROGRESS until the deletion is complete. You cannot update a conformance pack while it is in this state.

", "DeletePendingAggregationRequest": "

Deletes pending authorization requests for a specified aggregator account in a specified region.

", "DeleteRemediationConfiguration": "

Deletes the remediation configuration.

", - "DeleteRemediationExceptions": "

Deletes one or more remediation exceptions mentioned in the resource keys.

", + "DeleteRemediationExceptions": "

Deletes one or more remediation exceptions mentioned in the resource keys.

AWS Config generates a remediation exception when a problem occurs executing a remediation action to a specific resource. Remediation exceptions blocks auto-remediation until the exception is cleared.

", "DeleteResourceConfig": "

Records the configuration state for a custom resource that has been deleted. This API records a new ConfigurationItem with a ResourceDeleted status. You can retrieve the ConfigurationItems recorded for this resource in your AWS Config History.

", "DeleteRetentionConfiguration": "

Deletes the retention configuration.

", "DeliverConfigSnapshot": "

Schedules delivery of a configuration snapshot to the Amazon S3 bucket in the specified delivery channel. After the delivery has started, AWS Config sends the following notifications using an Amazon SNS topic that you have specified.

", @@ -34,13 +34,13 @@ "DescribeConformancePacks": "

Returns a list of one or more conformance packs.

", "DescribeDeliveryChannelStatus": "

Returns the current status of the specified delivery channel. If a delivery channel is not specified, this action returns the current status of all delivery channels associated with the account.

Currently, you can specify only one delivery channel per region in your account.

", "DescribeDeliveryChannels": "

Returns details about the specified delivery channel. If a delivery channel is not specified, this action returns the details of all delivery channels associated with the account.

Currently, you can specify only one delivery channel per region in your account.

", - "DescribeOrganizationConfigRuleStatuses": "

Provides organization config rule deployment status for an organization.

The status is not considered successful until organization config rule is successfully deployed in all the member accounts with an exception of excluded accounts.

When you specify the limit and the next token, you receive a paginated response. Limit and next token are not applicable if you specify organization config rule names. It is only applicable, when you request all the organization config rules.

Only a master account can call this API.

", - "DescribeOrganizationConfigRules": "

Returns a list of organization config rules.

When you specify the limit and the next token, you receive a paginated response. Limit and next token are not applicable if you specify organization config rule names. It is only applicable, when you request all the organization config rules.

Only a master account can call this API.

", - "DescribeOrganizationConformancePackStatuses": "

Provides organization conformance pack deployment status for an organization.

The status is not considered successful until organization conformance pack is successfully deployed in all the member accounts with an exception of excluded accounts.

When you specify the limit and the next token, you receive a paginated response. Limit and next token are not applicable if you specify organization conformance pack names. They are only applicable, when you request all the organization conformance packs.

Only a master account can call this API.

", - "DescribeOrganizationConformancePacks": "

Returns a list of organization conformance packs.

When you specify the limit and the next token, you receive a paginated response.

Limit and next token are not applicable if you specify organization conformance packs names. They are only applicable, when you request all the organization conformance packs.

Only a master account can call this API.

", + "DescribeOrganizationConfigRuleStatuses": "

Provides organization config rule deployment status for an organization.

Only a master account and a delegated administrator account can call this API. When calling this API with a delegated administrator, you must ensure AWS Organizations ListDelegatedAdministrator permissions are added.

The status is not considered successful until organization config rule is successfully deployed in all the member accounts with an exception of excluded accounts.

When you specify the limit and the next token, you receive a paginated response. Limit and next token are not applicable if you specify organization config rule names. It is only applicable, when you request all the organization config rules.

", + "DescribeOrganizationConfigRules": "

Returns a list of organization config rules.

Only a master account and a delegated administrator account can call this API. When calling this API with a delegated administrator, you must ensure AWS Organizations ListDelegatedAdministrator permissions are added.


When you specify the limit and the next token, you receive a paginated response. Limit and next token are not applicable if you specify organization config rule names. It is only applicable, when you request all the organization config rules.

", + "DescribeOrganizationConformancePackStatuses": "

Provides organization conformance pack deployment status for an organization.

Only a master account and a delegated administrator account can call this API. When calling this API with a delegated administrator, you must ensure AWS Organizations ListDelegatedAdministrator permissions are added.

The status is not considered successful until organization conformance pack is successfully deployed in all the member accounts with an exception of excluded accounts.

When you specify the limit and the next token, you receive a paginated response. Limit and next token are not applicable if you specify organization conformance pack names. They are only applicable, when you request all the organization conformance packs.

", + "DescribeOrganizationConformancePacks": "

Returns a list of organization conformance packs.

Only a master account and a delegated administrator account can call this API. When calling this API with a delegated administrator, you must ensure AWS Organizations ListDelegatedAdministrator permissions are added.

When you specify the limit and the next token, you receive a paginated response.

Limit and next token are not applicable if you specify organization conformance packs names. They are only applicable, when you request all the organization conformance packs.

", "DescribePendingAggregationRequests": "

Returns a list of all pending aggregation requests.

", "DescribeRemediationConfigurations": "

Returns the details of one or more remediation configurations.

", - "DescribeRemediationExceptions": "

Returns the details of one or more remediation exceptions. A detailed view of a remediation exception for a set of resources that includes an explanation of an exception and the time when the exception will be deleted. When you specify the limit and the next token, you receive a paginated response.

When you specify the limit and the next token, you receive a paginated response.

Limit and next token are not applicable if you request resources in batch. It is only applicable, when you request all resources.

", + "DescribeRemediationExceptions": "

Returns the details of one or more remediation exceptions. A detailed view of a remediation exception for a set of resources that includes an explanation of an exception and the time when the exception will be deleted. When you specify the limit and the next token, you receive a paginated response.

AWS Config generates a remediation exception when a problem occurs executing a remediation action to a specific resource. Remediation exceptions blocks auto-remediation until the exception is cleared.

When you specify the limit and the next token, you receive a paginated response.

Limit and next token are not applicable if you request resources in batch. It is only applicable, when you request all resources.

", "DescribeRemediationExecutionStatus": "

Provides a detailed view of a Remediation Execution for a set of resources including state, timestamps for when steps for the remediation execution occur, and any error messages for steps that have failed. When you specify the limit and the next token, you receive a paginated response.

", "DescribeRetentionConfigurations": "

Returns the details of one or more retention configurations. If the retention configuration name is not specified, this action returns the details for all the retention configurations for that account.

Currently, AWS Config supports only one retention configuration per region in your account.

", "GetAggregateComplianceDetailsByConfigRule": "

Returns the evaluation results for the specified AWS Config rule for a specific resource in a rule. The results indicate which AWS resources were evaluated by the rule, when each resource was last evaluated, and whether each resource complies with the rule.

The results can return an empty result page. But if you have a nextToken, the results are displayed on the next page.

", @@ -54,8 +54,8 @@ "GetConformancePackComplianceDetails": "

Returns compliance details of a conformance pack for all AWS resources that are monitered by conformance pack.

", "GetConformancePackComplianceSummary": "

Returns compliance details for the conformance pack based on the cumulative compliance results of all the rules in that conformance pack.

", "GetDiscoveredResourceCounts": "

Returns the resource types, the number of each resource type, and the total number of resources that AWS Config is recording in this region for your AWS account.

Example

  1. AWS Config is recording three resource types in the US East (Ohio) Region for your account: 25 EC2 instances, 20 IAM users, and 15 S3 buckets.

  2. You make a call to the GetDiscoveredResourceCounts action and specify that you want all resource types.

  3. AWS Config returns the following:

    • The resource types (EC2 instances, IAM users, and S3 buckets).

    • The number of each resource type (25, 20, and 15).

    • The total number of all resources (60).

The response is paginated. By default, AWS Config lists 100 ResourceCount objects on each page. You can customize this number with the limit parameter. The response includes a nextToken string. To get the next page of results, run the request again and specify the string for the nextToken parameter.

If you make a call to the GetDiscoveredResourceCounts action, you might not immediately receive resource counts in the following situations:

It might take a few minutes for AWS Config to record and count your resources. Wait a few minutes and then retry the GetDiscoveredResourceCounts action.

", - "GetOrganizationConfigRuleDetailedStatus": "

Returns detailed status for each member account within an organization for a given organization config rule.

Only a master account can call this API.

", - "GetOrganizationConformancePackDetailedStatus": "

Returns detailed status for each member account within an organization for a given organization conformance pack.

Only a master account can call this API.

", + "GetOrganizationConfigRuleDetailedStatus": "

Returns detailed status for each member account within an organization for a given organization config rule.

Only a master account and a delegated administrator account can call this API. When calling this API with a delegated administrator, you must ensure AWS Organizations ListDelegatedAdministrator permissions are added.

", + "GetOrganizationConformancePackDetailedStatus": "

Returns detailed status for each member account within an organization for a given organization conformance pack.

Only a master account and a delegated administrator account can call this API. When calling this API with a delegated administrator, you must ensure AWS Organizations ListDelegatedAdministrator permissions are added.

", "GetResourceConfigHistory": "

Returns a list of configuration items for the specified resource. The list contains details about each state of the resource during the specified time interval. If you specified a retention period to retain your ConfigurationItems between a minimum of 30 days and a maximum of 7 years (2557 days), AWS Config returns the ConfigurationItems for the specified retention period.

The response is paginated. By default, AWS Config returns a limit of 10 configuration items per page. You can customize this number with the limit parameter. The response includes a nextToken string. To get the next page of results, run the request again and specify the string for the nextToken parameter.

Each call to the API is limited to span a duration of seven days. It is likely that the number of records returned is smaller than the specified limit. In such cases, you can make another call, using the nextToken.

", "ListAggregateDiscoveredResources": "

Accepts a resource type and returns a list of resource identifiers that are aggregated for a specific resource type across accounts and regions. A resource identifier includes the resource type, ID, (if available) the custom resource name, source account, and source region. You can narrow the results to include only resources that have specific resource IDs, or a resource name, or source account ID, or source region.

For example, if the input consists of accountID 12345678910 and the region is us-east-1 for resource type AWS::EC2::Instance then the API returns all the EC2 instance identifiers of accountID 12345678910 and region us-east-1.

", "ListDiscoveredResources": "

Accepts a resource type and returns a list of resource identifiers for the resources of that type. A resource identifier includes the resource type, ID, and (if available) the custom resource name. The results consist of resources that AWS Config has discovered, including those that AWS Config is not currently recording. You can narrow the results to include only resources that have specific resource IDs or a resource name.

You can specify either resource IDs or a resource name, but not both, in the same request.

The response is paginated. By default, AWS Config lists 100 resource identifiers on each page. You can customize this number with the limit parameter. The response includes a nextToken string. To get the next page of results, run the request again and specify the string for the nextToken parameter.

", @@ -64,14 +64,14 @@ "PutConfigRule": "

Adds or updates an AWS Config rule for evaluating whether your AWS resources comply with your desired configurations.

You can use this action for custom AWS Config rules and AWS managed Config rules. A custom AWS Config rule is a rule that you develop and maintain. An AWS managed Config rule is a customizable, predefined rule that AWS Config provides.

If you are adding a new custom AWS Config rule, you must first create the AWS Lambda function that the rule invokes to evaluate your resources. When you use the PutConfigRule action to add the rule to AWS Config, you must specify the Amazon Resource Name (ARN) that AWS Lambda assigns to the function. Specify the ARN for the SourceIdentifier key. This key is part of the Source object, which is part of the ConfigRule object.

If you are adding an AWS managed Config rule, specify the rule's identifier for the SourceIdentifier key. To reference AWS managed Config rule identifiers, see About AWS Managed Config Rules.

For any new rule that you add, specify the ConfigRuleName in the ConfigRule object. Do not specify the ConfigRuleArn or the ConfigRuleId. These values are generated by AWS Config for new rules.

If you are updating a rule that you added previously, you can specify the rule by ConfigRuleName, ConfigRuleId, or ConfigRuleArn in the ConfigRule data type that you use in this request.

The maximum number of rules that AWS Config supports is 150.

For information about requesting a rule limit increase, see AWS Config Limits in the AWS General Reference Guide.

For more information about developing and using AWS Config rules, see Evaluating AWS Resource Configurations with AWS Config in the AWS Config Developer Guide.

", "PutConfigurationAggregator": "

Creates and updates the configuration aggregator with the selected source accounts and regions. The source account can be individual account(s) or an organization.

AWS Config should be enabled in source accounts and regions you want to aggregate.

If your source type is an organization, you must be signed in to the master account and all features must be enabled in your organization. AWS Config calls EnableAwsServiceAccess API to enable integration between AWS Config and AWS Organizations.

", "PutConfigurationRecorder": "

Creates a new configuration recorder to record the selected resource configurations.

You can use this action to change the role roleARN or the recordingGroup of an existing recorder. To change the role, call the action on the existing configuration recorder and specify a role.

Currently, you can specify only one configuration recorder per region in your account.

If ConfigurationRecorder does not have the recordingGroup parameter specified, the default is to record all supported resource types.

", - "PutConformancePack": "

Creates or updates a conformance pack. A conformance pack is a collection of AWS Config rules that can be easily deployed in an account and a region and across AWS Organization.

This API creates a service linked role AWSServiceRoleForConfigConforms in your account. The service linked role is created only when the role does not exist in your account. AWS Config verifies the existence of role with GetRole action.

You must specify either the TemplateS3Uri or the TemplateBody parameter, but not both. If you provide both AWS Config uses the TemplateS3Uri parameter and ignores the TemplateBody parameter.

", + "PutConformancePack": "

Creates or updates a conformance pack. A conformance pack is a collection of AWS Config rules that can be easily deployed in an account and a region and across AWS Organization.

This API creates a service linked role AWSServiceRoleForConfigConforms in your account. The service linked role is created only when the role does not exist in your account.

You must specify either the TemplateS3Uri or the TemplateBody parameter, but not both. If you provide both AWS Config uses the TemplateS3Uri parameter and ignores the TemplateBody parameter.

", "PutDeliveryChannel": "

Creates a delivery channel object to deliver configuration information to an Amazon S3 bucket and Amazon SNS topic.

Before you can create a delivery channel, you must create a configuration recorder.

You can use this action to change the Amazon S3 bucket or an Amazon SNS topic of the existing delivery channel. To change the Amazon S3 bucket or an Amazon SNS topic, call this action and specify the changed values for the S3 bucket and the SNS topic. If you specify a different value for either the S3 bucket or the SNS topic, this action will keep the existing value for the parameter that is not changed.

You can have only one delivery channel per region in your account.

", "PutEvaluations": "

Used by an AWS Lambda function to deliver evaluation results to AWS Config. This action is required in every AWS Lambda function that is invoked by an AWS Config rule.

", - "PutOrganizationConfigRule": "

Adds or updates organization config rule for your entire organization evaluating whether your AWS resources comply with your desired configurations. Only a master account can create or update an organization config rule.

This API enables organization service access through the EnableAWSServiceAccess action and creates a service linked role AWSServiceRoleForConfigMultiAccountSetup in the master account of your organization. The service linked role is created only when the role does not exist in the master account. AWS Config verifies the existence of role with GetRole action.

You can use this action to create both custom AWS Config rules and AWS managed Config rules. If you are adding a new custom AWS Config rule, you must first create AWS Lambda function in the master account that the rule invokes to evaluate your resources. When you use the PutOrganizationConfigRule action to add the rule to AWS Config, you must specify the Amazon Resource Name (ARN) that AWS Lambda assigns to the function. If you are adding an AWS managed Config rule, specify the rule's identifier for the RuleIdentifier key.

The maximum number of organization config rules that AWS Config supports is 150.

Specify either OrganizationCustomRuleMetadata or OrganizationManagedRuleMetadata.

", - "PutOrganizationConformancePack": "

Deploys conformance packs across member accounts in an AWS Organization.

This API enables organization service access for config-multiaccountsetup.amazonaws.com through the EnableAWSServiceAccess action and creates a service linked role AWSServiceRoleForConfigMultiAccountSetup in the master account of your organization. The service linked role is created only when the role does not exist in the master account. AWS Config verifies the existence of role with GetRole action.

You must specify either the TemplateS3Uri or the TemplateBody parameter, but not both. If you provide both AWS Config uses the TemplateS3Uri parameter and ignores the TemplateBody parameter.

AWS Config sets the state of a conformance pack to CREATE_IN_PROGRESS and UPDATE_IN_PROGRESS until the confomance pack is created or updated. You cannot update a conformance pack while it is in this state.

You can create 6 conformance packs with 25 AWS Config rules in each pack.

", - "PutRemediationConfigurations": "

Adds or updates the remediation configuration with a specific AWS Config rule with the selected target or action. The API creates the RemediationConfiguration object for the AWS Config rule. The AWS Config rule must already exist for you to add a remediation configuration. The target (SSM document) must exist and have permissions to use the target.

", - "PutRemediationExceptions": "

A remediation exception is when a specific resource is no longer considered for auto-remediation. This API adds a new exception or updates an exisiting exception for a specific resource with a specific AWS Config rule.

", - "PutResourceConfig": "

Records the configuration state for the resource provided in the request. The configuration state of a resource is represented in AWS Config as Configuration Items. Once this API records the configuration item, you can retrieve the list of configuration items for the custom resource type using existing AWS Config APIs.

The custom resource type must be registered with AWS CloudFormation. This API accepts the configuration item registered with AWS CloudFormation.

When you call this API, AWS Config only stores configuration state of the resource provided in the request. This API does not change or remediate the configuration of the resource.

", + "PutOrganizationConfigRule": "

Adds or updates organization config rule for your entire organization evaluating whether your AWS resources comply with your desired configurations.

Only a master account and a delegated administrator can create or update an organization config rule. When calling this API with a delegated administrator, you must ensure AWS Organizations ListDelegatedAdministrator permissions are added.

This API enables organization service access through the EnableAWSServiceAccess action and creates a service linked role AWSServiceRoleForConfigMultiAccountSetup in the master or delegated administrator account of your organization. The service linked role is created only when the role does not exist in the caller account. AWS Config verifies the existence of role with GetRole action.

To use this API with delegated administrator, register a delegated administrator by calling AWS Organization register-delegated-administrator for config-multiaccountsetup.amazonaws.com.

You can use this action to create both custom AWS Config rules and AWS managed Config rules. If you are adding a new custom AWS Config rule, you must first create AWS Lambda function in the master account or a delegated administrator that the rule invokes to evaluate your resources. When you use the PutOrganizationConfigRule action to add the rule to AWS Config, you must specify the Amazon Resource Name (ARN) that AWS Lambda assigns to the function. If you are adding an AWS managed Config rule, specify the rule's identifier for the RuleIdentifier key.

The maximum number of organization config rules that AWS Config supports is 150 and 3 delegated administrator per organization.

Prerequisite: Ensure you call EnableAllFeatures API to enable all features in an organization.

Specify either OrganizationCustomRuleMetadata or OrganizationManagedRuleMetadata.

", + "PutOrganizationConformancePack": "

Deploys conformance packs across member accounts in an AWS Organization.

Only a master account and a delegated administrator can call this API. When calling this API with a delegated administrator, you must ensure AWS Organizations ListDelegatedAdministrator permissions are added.

This API enables organization service access for config-multiaccountsetup.amazonaws.com through the EnableAWSServiceAccess action and creates a service linked role AWSServiceRoleForConfigMultiAccountSetup in the master or delegated administrator account of your organization. The service linked role is created only when the role does not exist in the caller account. To use this API with delegated administrator, register a delegated administrator by calling AWS Organization register-delegate-admin for config-multiaccountsetup.amazonaws.com.

Prerequisite: Ensure you call EnableAllFeatures API to enable all features in an organization.

You must specify either the TemplateS3Uri or the TemplateBody parameter, but not both. If you provide both AWS Config uses the TemplateS3Uri parameter and ignores the TemplateBody parameter.

AWS Config sets the state of a conformance pack to CREATE_IN_PROGRESS and UPDATE_IN_PROGRESS until the conformance pack is created or updated. You cannot update a conformance pack while it is in this state.

You can create 6 conformance packs with 25 AWS Config rules in each pack and 3 delegated administrator per organization.

", + "PutRemediationConfigurations": "

Adds or updates the remediation configuration with a specific AWS Config rule with the selected target or action. The API creates the RemediationConfiguration object for the AWS Config rule. The AWS Config rule must already exist for you to add a remediation configuration. The target (SSM document) must exist and have permissions to use the target.

If you make backward incompatible changes to the SSM document, you must call this again to ensure the remediations can run.

", + "PutRemediationExceptions": "

A remediation exception is when a specific resource is no longer considered for auto-remediation. This API adds a new exception or updates an exisiting exception for a specific resource with a specific AWS Config rule.

AWS Config generates a remediation exception when a problem occurs executing a remediation action to a specific resource. Remediation exceptions blocks auto-remediation until the exception is cleared.

", + "PutResourceConfig": "

Records the configuration state for the resource provided in the request. The configuration state of a resource is represented in AWS Config as Configuration Items. Once this API records the configuration item, you can retrieve the list of configuration items for the custom resource type using existing AWS Config APIs.

The custom resource type must be registered with AWS CloudFormation. This API accepts the configuration item registered with AWS CloudFormation.

When you call this API, AWS Config only stores configuration state of the resource provided in the request. This API does not change or remediate the configuration of the resource.

Write-only schema properites are not recorded as part of the published configuration item.

", "PutRetentionConfiguration": "

Creates and updates the retention configuration with details about retention period (number of days) that AWS Config stores your historical information. The API creates the RetentionConfiguration object and names the object as default. When you have a RetentionConfiguration object named default, calling the API modifies the default object.

Currently, AWS Config supports only one retention configuration per region in your account.

", "SelectAggregateResourceConfig": "

Accepts a structured query language (SQL) SELECT command and an aggregator to query configuration state of AWS resources across multiple accounts and regions, performs the corresponding search, and returns resource configurations matching the properties.

For more information about query components, see the Query Components section in the AWS Config Developer Guide.

", "SelectResourceConfig": "

Accepts a structured query language (SQL) SELECT command, performs the corresponding search, and returns resource configurations matching the properties.

For more information about query components, see the Query Components section in the AWS Config Developer Guide.

", @@ -254,13 +254,13 @@ "AutoRemediationAttemptSeconds": { "base": null, "refs": { - "RemediationConfiguration$RetryAttemptSeconds": "

Maximum time in seconds that AWS Config runs auto-remediation. If you do not select a number, the default is 60 seconds.

For example, if you specify RetryAttemptsSeconds as 50 seconds and MaximumAutomaticAttempts as 5, AWS Config will run auto-remediations 5 times within 50 seconds before throwing an exception.

" + "RemediationConfiguration$RetryAttemptSeconds": "

Maximum time in seconds that AWS Config runs auto-remediation. If you do not select a number, the default is 60 seconds.

For example, if you specify RetryAttemptsSeconds as 50 seconds and MaximumAutomaticAttempts as 5, AWS Config will run auto-remediations 5 times within 50 seconds before throwing an exception.

" } }, "AutoRemediationAttempts": { "base": null, "refs": { - "RemediationConfiguration$MaximumAutomaticAttempts": "

The maximum number of failed attempts for auto-remediation. If you do not select a number, the default is 5.

For example, if you specify MaximumAutomaticAttempts as 5 with RetryAttemptsSeconds as 50 seconds, AWS Config throws an exception after the 5th failed attempt within 50 seconds.

" + "RemediationConfiguration$MaximumAutomaticAttempts": "

The maximum number of failed attempts for auto-remediation. If you do not select a number, the default is 5.

For example, if you specify MaximumAutomaticAttempts as 5 with RetryAttemptsSeconds as 50 seconds, AWS Config will put a RemediationException on your behalf for the failing resource after the 5th failed attempt within 50 seconds.

" } }, "AvailabilityZone": { @@ -630,8 +630,8 @@ "ConfigurationItemStatus": { "base": null, "refs": { - "BaseConfigurationItem$configurationItemStatus": "

The configuration item status.

", - "ConfigurationItem$configurationItemStatus": "

The configuration item status.

" + "BaseConfigurationItem$configurationItemStatus": "

The configuration item status. The valid values are:

The CIs do not incur any cost.

", + "ConfigurationItem$configurationItemStatus": "

The configuration item status. The valid values are:

The CIs do not incur any cost.

" } }, "ConfigurationRecorder": { @@ -754,7 +754,7 @@ } }, "ConformancePackInputParameter": { - "base": "

Input parameters in the form of key-value pairs for the conformance pack, both of which you define. Keys can have a maximum character length of 128 characters, and values can have a maximum length of 256 characters.

", + "base": "

Input parameters in the form of key-value pairs for the conformance pack, both of which you define. Keys can have a maximum character length of 255 characters, and values can have a maximum length of 4096 characters.

", "refs": { "ConformancePackInputParameters$member": null } @@ -871,7 +871,7 @@ "ConfigRuleEvaluationStatus$LastSuccessfulEvaluationTime": "

The time that AWS Config last successfully evaluated your AWS resources against the rule.

", "ConfigRuleEvaluationStatus$LastFailedEvaluationTime": "

The time that AWS Config last failed to evaluate your AWS resources against the rule.

", "ConfigRuleEvaluationStatus$FirstActivatedTime": "

The time that you first activated the AWS Config rule.

", - "ConfigRuleEvaluationStatus$LastDeactivatedTime": null, + "ConfigRuleEvaluationStatus$LastDeactivatedTime": "

The time that you last turned off the AWS Config rule.

", "ConfigStreamDeliveryInfo$lastStatusChangeTime": "

The time from the last status change.

", "ConfigurationAggregator$CreationTime": "

The time stamp when the configuration aggregator was created.

", "ConfigurationAggregator$LastUpdatedTime": "

The time of the last update.

", @@ -1715,7 +1715,7 @@ "ListDiscoveredResourcesRequest$limit": "

The maximum number of resource identifiers returned on each page. The default is 100. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default.

", "ListTagsForResourceRequest$Limit": "

The maximum number of tags returned on each page. The limit maximum is 50. You cannot specify a number greater than 50. If you specify 0, AWS Config uses the default.

", "SelectAggregateResourceConfigRequest$Limit": "

The maximum number of query results returned on each page.

", - "SelectAggregateResourceConfigRequest$MaxResults": null, + "SelectAggregateResourceConfigRequest$MaxResults": "

The maximum number of query results returned on each page. AWS Config also allows the Limit request parameter.

", "SelectResourceConfigRequest$Limit": "

The maximum number of query results returned on each page.

" } }, @@ -2707,7 +2707,7 @@ "Scope": { "base": "

Defines which resources trigger an evaluation for an AWS Config rule. The scope can include one or more resource types, a combination of a tag key and value, or a combination of one resource type and one resource ID. Specify a scope to constrain which resources trigger an evaluation for a rule. Otherwise, evaluations for the rule are triggered when any resource in your recording group changes in configuration.

", "refs": { - "ConfigRule$Scope": "

Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.

" + "ConfigRule$Scope": "

Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.

The scope can be empty.

" } }, "SelectAggregateResourceConfigRequest": { @@ -2880,7 +2880,7 @@ "OrganizationConformancePackStatus$ErrorCode": "

An error code that is returned when organization conformance pack creation or deletion has failed in a member account.

", "OrganizationConformancePackStatus$ErrorMessage": "

An error message indicating that organization conformance pack creation or deletion failed due to an error.

", "PutEvaluationsRequest$ResultToken": "

An encrypted token that associates an evaluation with an AWS Config rule. Identifies the rule and the event that triggered the evaluation.

", - "RemediationConfiguration$TargetVersion": "

Version of the target. For example, version of the SSM document.

", + "RemediationConfiguration$TargetVersion": "

Version of the target. For example, version of the SSM document.

If you make backward incompatible changes to the SSM document, you must call PutRemediationConfiguration API again to ensure the remediations can run.

", "RemediationConfiguration$ResourceType": "

The type of a resource.

", "RemediationExecutionStep$Name": "

The details of the step.

", "RemediationExecutionStep$ErrorMessage": "

An error message if the step was interrupted during execution.

", @@ -2925,6 +2925,7 @@ "ComplianceSummaryByResourceType$ResourceType": "

The type of AWS resource.

", "ConfigRule$ConfigRuleArn": "

The Amazon Resource Name (ARN) of the AWS Config rule.

", "ConfigRule$CreatedBy": "

Service principal name of the service that created the rule.

The field is populated only if the service linked rule is created by a service. The field is empty if you create your own rule.

", + "ConfigurationAggregator$CreatedBy": "

AWS service that created the configuration aggregator.

", "ConformancePackComplianceResourceIds$member": null, "ConformancePackDetail$CreatedBy": "

AWS service that created the conformance pack.

", "ConformancePackEvaluationFilters$ResourceType": "

Filters the results by the resource type (for example, \"AWS::EC2::Instance\").

", diff --git a/models/apis/directconnect/2012-10-25/docs-2.json b/models/apis/directconnect/2012-10-25/docs-2.json index b23c0fe92da..48d594a69fb 100644 --- a/models/apis/directconnect/2012-10-25/docs-2.json +++ b/models/apis/directconnect/2012-10-25/docs-2.json @@ -19,7 +19,7 @@ "CreateConnection": "

Creates a connection between a customer network and a specific AWS Direct Connect location.

A connection links your internal network to an AWS Direct Connect location over a standard Ethernet fiber-optic cable. One end of the cable is connected to your router, the other to an AWS Direct Connect router.

To find the locations for your Region, use DescribeLocations.

You can automatically add the new connection to a link aggregation group (LAG) by specifying a LAG ID in the request. This ensures that the new connection is allocated on the same AWS Direct Connect endpoint that hosts the specified LAG. If there are no available ports on the endpoint, the request fails and no connection is created.

", "CreateDirectConnectGateway": "

Creates a Direct Connect gateway, which is an intermediate object that enables you to connect a set of virtual interfaces and virtual private gateways. A Direct Connect gateway is global and visible in any AWS Region after it is created. The virtual interfaces and virtual private gateways that are connected through a Direct Connect gateway can be in different AWS Regions. This enables you to connect to a VPC in any Region, regardless of the Region in which the virtual interfaces are located, and pass traffic between them.

", "CreateDirectConnectGatewayAssociation": "

Creates an association between a Direct Connect gateway and a virtual private gateway. The virtual private gateway must be attached to a VPC and must not be associated with another Direct Connect gateway.

", - "CreateDirectConnectGatewayAssociationProposal": "

Creates a proposal to associate the specified virtual private gateway or transit gateway with the specified Direct Connect gateway.

You can only associate a Direct Connect gateway and virtual private gateway or transit gateway when the account that owns the Direct Connect gateway and the account that owns the virtual private gateway or transit gateway have the same AWS Payer ID.

", + "CreateDirectConnectGatewayAssociationProposal": "

Creates a proposal to associate the specified virtual private gateway or transit gateway with the specified Direct Connect gateway.

You can associate a Direct Connect gateway and virtual private gateway or transit gateway that is owned by any AWS account.

", "CreateInterconnect": "

Creates an interconnect between an AWS Direct Connect Partner's network and a specific AWS Direct Connect location.

An interconnect is a connection that is capable of hosting other connections. The AWS Direct Connect partner can use an interconnect to provide AWS Direct Connect hosted connections to customers through their own network services. Like a standard connection, an interconnect links the partner's network to an AWS Direct Connect location over a standard Ethernet fiber-optic cable. One end is connected to the partner's router, the other to an AWS Direct Connect router.

You can automatically add the new interconnect to a link aggregation group (LAG) by specifying a LAG ID in the request. This ensures that the new interconnect is allocated on the same AWS Direct Connect endpoint that hosts the specified LAG. If there are no available ports on the endpoint, the request fails and no interconnect is created.

For each end customer, the AWS Direct Connect Partner provisions a connection on their interconnect by calling AllocateHostedConnection. The end customer can then connect to AWS resources by creating a virtual interface on their connection, using the VLAN assigned to them by the AWS Direct Connect Partner.

Intended for use by AWS Direct Connect Partners only.

", "CreateLag": "

Creates a link aggregation group (LAG) with the specified number of bundled physical connections between the customer network and a specific AWS Direct Connect location. A LAG is a logical interface that uses the Link Aggregation Control Protocol (LACP) to aggregate multiple interfaces, enabling you to treat them as a single interface.

All connections in a LAG must use the same bandwidth and must terminate at the same AWS Direct Connect endpoint.

You can have up to 10 connections per LAG. Regardless of this limit, if you request more connections for the LAG than AWS Direct Connect can allocate on a single endpoint, no LAG is created.

You can specify an existing physical connection or interconnect to include in the LAG (which counts towards the total number of connections). Doing so interrupts the current physical connection or hosted connections, and re-establishes them as a member of the LAG. The LAG will be created on the same AWS Direct Connect endpoint to which the connection terminates. Any virtual interfaces associated with the connection are automatically disassociated and re-associated with the LAG. The connection ID does not change.

If the AWS account used to create a LAG is a registered AWS Direct Connect Partner, the LAG is automatically enabled to host sub-connections. For a LAG owned by a partner, any associated virtual interfaces cannot be directly configured.

", "CreatePrivateVirtualInterface": "

Creates a private virtual interface. A virtual interface is the VLAN that transports AWS Direct Connect traffic. A private virtual interface can be connected to either a Direct Connect gateway or a Virtual Private Gateway (VGW). Connecting the private virtual interface to a Direct Connect gateway enables the possibility for connecting to multiple VPCs, including VPCs in different AWS Regions. Connecting the private virtual interface to a VGW only provides access to a single VPC within the same Region.

Setting the MTU of a virtual interface to 9001 (jumbo frames) can cause an update to the underlying physical connection if it wasn't updated to support jumbo frames. Updating the connection disrupts network connectivity for all virtual interfaces associated with the connection for up to 30 seconds. To check whether your connection supports jumbo frames, call DescribeConnections. To check whether your virtual interface supports jumbo frames, call DescribeVirtualInterfaces.

", diff --git a/models/apis/fsx/2018-03-01/api-2.json b/models/apis/fsx/2018-03-01/api-2.json index cb8858db566..579253415ae 100644 --- a/models/apis/fsx/2018-03-01/api-2.json +++ b/models/apis/fsx/2018-03-01/api-2.json @@ -331,6 +331,14 @@ "min":3, "pattern":"^[^\\u0000\\u0085\\u2028\\u2029\\r\\n]{3,4357}$" }, + "AutoImportPolicyType":{ + "type":"string", + "enum":[ + "NONE", + "NEW", + "NEW_CHANGED" + ] + }, "AutomaticBackupRetentionDays":{ "type":"integer", "max":35, @@ -533,6 +541,7 @@ "ExportPath":{"shape":"ArchivePath"}, "ImportedFileChunkSize":{"shape":"Megabytes"}, "DeploymentType":{"shape":"LustreDeploymentType"}, + "AutoImportPolicy":{"shape":"AutoImportPolicyType"}, "PerUnitStorageThroughput":{"shape":"PerUnitStorageThroughput"}, "DailyAutomaticBackupStartTime":{"shape":"DailyTime"}, "AutomaticBackupRetentionDays":{"shape":"AutomaticBackupRetentionDays"}, @@ -599,11 +608,30 @@ "DataRepositoryConfiguration":{ "type":"structure", "members":{ + "Lifecycle":{"shape":"DataRepositoryLifecycle"}, "ImportPath":{"shape":"ArchivePath"}, "ExportPath":{"shape":"ArchivePath"}, - "ImportedFileChunkSize":{"shape":"Megabytes"} + "ImportedFileChunkSize":{"shape":"Megabytes"}, + "AutoImportPolicy":{"shape":"AutoImportPolicyType"}, + "FailureDetails":{"shape":"DataRepositoryFailureDetails"} + } + }, + "DataRepositoryFailureDetails":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} } }, + "DataRepositoryLifecycle":{ + "type":"string", + "enum":[ + "CREATING", + "AVAILABLE", + "MISCONFIGURED", + "UPDATING", + "DELETING" + ] + }, "DataRepositoryTask":{ "type":"structure", "required":[ @@ -1298,6 +1326,10 @@ "SucceededCount":{"type":"long"}, "Tag":{ "type":"structure", + "required":[ + "Key", + "Value" + ], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} @@ -1383,7 +1415,8 @@ "members":{ "WeeklyMaintenanceStartTime":{"shape":"WeeklyTime"}, "DailyAutomaticBackupStartTime":{"shape":"DailyTime"}, - "AutomaticBackupRetentionDays":{"shape":"AutomaticBackupRetentionDays"} + "AutomaticBackupRetentionDays":{"shape":"AutomaticBackupRetentionDays"}, + "AutoImportPolicy":{"shape":"AutoImportPolicyType"} } }, "UpdateFileSystemRequest":{ diff --git a/models/apis/fsx/2018-03-01/docs-2.json b/models/apis/fsx/2018-03-01/docs-2.json index d3c781b58cd..4c6248a676f 100644 --- a/models/apis/fsx/2018-03-01/docs-2.json +++ b/models/apis/fsx/2018-03-01/docs-2.json @@ -83,6 +83,14 @@ "DataRepositoryConfiguration$ExportPath": "

The export path to the Amazon S3 bucket (and prefix) that you are using to store new and changed Lustre file system files in S3.

" } }, + "AutoImportPolicyType": { + "base": null, + "refs": { + "CreateFileSystemLustreConfiguration$AutoImportPolicy": "

Use this property to turn the Autoimport feature on and off. AutoImport enables your FSx for Lustre file system to automatically update its contents with changes that have been made to its linked Amazon S3 data repository. You can set the policy to have one the following values:

", + "DataRepositoryConfiguration$AutoImportPolicy": "

Describes the data repository's AutoImportPolicy. AutoImport enables your FSx for Lustre file system to automatically update its contents with changes that have been made to its linked Amazon S3 data repository. The policy can have the following values:

", + "UpdateFileSystemLustreConfiguration$AutoImportPolicy": "

Use this property to turn the Autoimport feature on and off. AutoImport enables your FSx for Lustre file system to automatically update its contents with changes that have been made to its linked Amazon S3 data repository. You can set the policy to have one the following values:

" + } + }, "AutomaticBackupRetentionDays": { "base": "

The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 35 days. The default is 0.

", "refs": { @@ -279,6 +287,18 @@ "LustreFileSystemConfiguration$DataRepositoryConfiguration": null } }, + "DataRepositoryFailureDetails": { + "base": "

Provides detailed information about the data respository if its Lifecycle is set to MISCONFIGURED.

", + "refs": { + "DataRepositoryConfiguration$FailureDetails": null + } + }, + "DataRepositoryLifecycle": { + "base": null, + "refs": { + "DataRepositoryConfiguration$Lifecycle": "

Describes the state of the file system's S3 durable data repository, if it is configured with an S3 repository. The lifecycle can have the following values:

" + } + }, "DataRepositoryTask": { "base": "

A description of the data repository task. You use data repository tasks to perform bulk transfer operations between your Amazon FSx file system and its linked data repository.

", "refs": { @@ -498,6 +518,7 @@ "BackupNotFound$Message": null, "BackupRestoring$Message": null, "BadRequest$Message": null, + "DataRepositoryFailureDetails$Message": null, "DataRepositoryTaskEnded$Message": null, "DataRepositoryTaskExecuting$Message": null, "DataRepositoryTaskFailureDetails$Message": null, diff --git a/models/apis/glue/2017-03-31/api-2.json b/models/apis/glue/2017-03-31/api-2.json index 23af01016b2..3424fee6548 100644 --- a/models/apis/glue/2017-03-31/api-2.json +++ b/models/apis/glue/2017-03-31/api-2.json @@ -2743,7 +2743,10 @@ "SKIP_CUSTOM_JDBC_CERT_VALIDATION", "CUSTOM_JDBC_CERT_STRING", "CONNECTION_URL", - "KAFKA_BOOTSTRAP_SERVERS" + "KAFKA_BOOTSTRAP_SERVERS", + "KAFKA_SSL_ENABLED", + "KAFKA_CUSTOM_CERT", + "KAFKA_SKIP_CUSTOM_CERT_VALIDATION" ] }, "ConnectionType":{ diff --git a/models/apis/glue/2017-03-31/docs-2.json b/models/apis/glue/2017-03-31/docs-2.json index 0a865675dfb..aef03c873a0 100644 --- a/models/apis/glue/2017-03-31/docs-2.json +++ b/models/apis/glue/2017-03-31/docs-2.json @@ -75,7 +75,7 @@ "GetPartition": "

Retrieves information about a specified partition.

", "GetPartitions": "

Retrieves information about the partitions in a table.

", "GetPlan": "

Gets code to perform a specified mapping.

", - "GetResourcePolicies": "

Retrieves the security configurations for the resource policies set on individual resources, and also the account-level policy.

", + "GetResourcePolicies": "

Retrieves the security configurations for the resource policies set on individual resources, and also the account-level policy.

This operation also returns the Data Catalog resource policy. However, if you enabled metadata encryption in Data Catalog settings, and you do not have permission on the AWS KMS key, the operation can't return the Data Catalog resource policy.

", "GetResourcePolicy": "

Retrieves a specified resource policy.

", "GetSecurityConfiguration": "

Retrieves a specified security configuration.

", "GetSecurityConfigurations": "

Retrieves a list of all security configurations.

", @@ -390,7 +390,7 @@ "BoundedPartitionValueList": { "base": null, "refs": { - "UpdatePartitionRequest$PartitionValueList": "

A list of the values defining the partition.

" + "UpdatePartitionRequest$PartitionValueList": "

List of partition key values that define the partition to update.

" } }, "CancelMLTaskRunRequest": { @@ -467,7 +467,7 @@ "ImportCatalogToGlueRequest$CatalogId": "

The ID of the catalog to import. Currently, this should be the AWS account ID.

", "Partition$CatalogId": "

The ID of the Data Catalog in which the partition resides.

", "PutDataCatalogEncryptionSettingsRequest$CatalogId": "

The ID of the Data Catalog to set the security configuration for. If none is provided, the AWS account ID is used by default.

", - "SearchTablesRequest$CatalogId": "

A unique identifier, consisting of account_id/datalake.

", + "SearchTablesRequest$CatalogId": "

A unique identifier, consisting of account_id .

", "Table$CatalogId": "

The ID of the Data Catalog in which the table resides.

", "TableIdentifier$CatalogId": "

The ID of the Data Catalog in which the table resides.

", "UpdateColumnStatisticsForPartitionRequest$CatalogId": "

The ID of the Data Catalog where the partitions in question reside. If none is supplied, the AWS account ID is used by default.

", @@ -777,7 +777,7 @@ "ConnectionProperties": { "base": null, "refs": { - "Connection$ConnectionProperties": "

These key-value pairs define parameters for the connection:

", + "Connection$ConnectionProperties": "

These key-value pairs define parameters for the connection:

", "ConnectionInput$ConnectionProperties": "

These key-value pairs define parameters for the connection.

" } }, @@ -3270,7 +3270,7 @@ "refs": { "CreatePartitionRequest$PartitionInput": "

A PartitionInput structure defining the partition to be created.

", "PartitionInputList$member": null, - "UpdatePartitionRequest$PartitionInput": "

The new partition object to update the partition to.

" + "UpdatePartitionRequest$PartitionInput": "

The new partition object to update the partition to.

The Values property can't be changed. If you want to change the partition key values for a partition, delete and recreate the partition.

" } }, "PartitionInputList": { @@ -3637,7 +3637,7 @@ "SearchPropertyPredicates": { "base": null, "refs": { - "SearchTablesRequest$Filters": "

A list of key-value pairs, and a comparator used to filter the search results. Returns all entities matching the predicate.

" + "SearchTablesRequest$Filters": "

A list of key-value pairs, and a comparator used to filter the search results. Returns all entities matching the predicate.

The Comparator member of the PropertyPredicate struct is used only for time fields, and can be omitted for other field types. Also, when comparing string values, such as when Key=Name, a fuzzy match algorithm is used. The Key field (for example, the value of the Name field) is split on certain punctuation characters, for example, -, :, #, etc. into tokens. Then each token is exact-match compared with the Value member of PropertyPredicate. For example, if Key=Name and Value=link, tables named customer-link and xx-link-yy are returned, but xxlinkyy is not returned.

" } }, "SearchTablesRequest": { diff --git a/models/apis/lightsail/2016-11-28/api-2.json b/models/apis/lightsail/2016-11-28/api-2.json index b4651310d07..03bc108e55d 100644 --- a/models/apis/lightsail/2016-11-28/api-2.json +++ b/models/apis/lightsail/2016-11-28/api-2.json @@ -30,6 +30,23 @@ {"shape":"UnauthenticatedException"} ] }, + "AttachCertificateToDistribution":{ + "name":"AttachCertificateToDistribution", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"AttachCertificateToDistributionRequest"}, + "output":{"shape":"AttachCertificateToDistributionResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, "AttachDisk":{ "name":"AttachDisk", "http":{ @@ -138,6 +155,22 @@ {"shape":"UnauthenticatedException"} ] }, + "CreateCertificate":{ + "name":"CreateCertificate", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateCertificateRequest"}, + "output":{"shape":"CreateCertificateResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, "CreateCloudFormationStack":{ "name":"CreateCloudFormationStack", "http":{ @@ -227,6 +260,23 @@ {"shape":"UnauthenticatedException"} ] }, + "CreateDistribution":{ + "name":"CreateDistribution", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateDistributionRequest"}, + "output":{"shape":"CreateDistributionResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, "CreateDomain":{ "name":"CreateDomain", "http":{ @@ -459,6 +509,22 @@ {"shape":"UnauthenticatedException"} ] }, + "DeleteCertificate":{ + "name":"DeleteCertificate", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteCertificateRequest"}, + "output":{"shape":"DeleteCertificateResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"AccessDeniedException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthenticatedException"} + ] + }, "DeleteContactMethod":{ "name":"DeleteContactMethod", "http":{ @@ -512,6 +578,23 @@ {"shape":"UnauthenticatedException"} ] }, + "DeleteDistribution":{ + "name":"DeleteDistribution", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteDistributionRequest"}, + "output":{"shape":"DeleteDistributionResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, "DeleteDomain":{ "name":"DeleteDomain", "http":{ @@ -692,6 +775,23 @@ {"shape":"UnauthenticatedException"} ] }, + "DetachCertificateFromDistribution":{ + "name":"DetachCertificateFromDistribution", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DetachCertificateFromDistributionRequest"}, + "output":{"shape":"DetachCertificateFromDistributionResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, "DetachDisk":{ "name":"DetachDisk", "http":{ @@ -904,6 +1004,22 @@ {"shape":"UnauthenticatedException"} ] }, + "GetCertificates":{ + "name":"GetCertificates", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetCertificatesRequest"}, + "output":{"shape":"GetCertificatesResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, "GetCloudFormationStackRecords":{ "name":"GetCloudFormationStackRecords", "http":{ @@ -1011,6 +1127,74 @@ {"shape":"UnauthenticatedException"} ] }, + "GetDistributionBundles":{ + "name":"GetDistributionBundles", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDistributionBundlesRequest"}, + "output":{"shape":"GetDistributionBundlesResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, + "GetDistributionLatestCacheReset":{ + "name":"GetDistributionLatestCacheReset", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDistributionLatestCacheResetRequest"}, + "output":{"shape":"GetDistributionLatestCacheResetResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, + "GetDistributionMetricData":{ + "name":"GetDistributionMetricData", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDistributionMetricDataRequest"}, + "output":{"shape":"GetDistributionMetricDataResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, + "GetDistributions":{ + "name":"GetDistributions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDistributionsRequest"}, + "output":{"shape":"GetDistributionsResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, "GetDomain":{ "name":"GetDomain", "http":{ @@ -1802,6 +1986,23 @@ {"shape":"UnauthenticatedException"} ] }, + "ResetDistributionCache":{ + "name":"ResetDistributionCache", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ResetDistributionCacheRequest"}, + "output":{"shape":"ResetDistributionCacheResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, "SendContactMethodVerification":{ "name":"SendContactMethodVerification", "http":{ @@ -1962,6 +2163,40 @@ {"shape":"UnauthenticatedException"} ] }, + "UpdateDistribution":{ + "name":"UpdateDistribution", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateDistributionRequest"}, + "output":{"shape":"UpdateDistributionResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, + "UpdateDistributionBundle":{ + "name":"UpdateDistributionBundle", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateDistributionBundleRequest"}, + "output":{"shape":"UpdateDistributionBundleResult"}, + "errors":[ + {"shape":"ServiceException"}, + {"shape":"InvalidInputException"}, + {"shape":"NotFoundException"}, + {"shape":"OperationFailureException"}, + {"shape":"AccessDeniedException"}, + {"shape":"UnauthenticatedException"} + ] + }, "UpdateDomainEntry":{ "name":"UpdateDomainEntry", "http":{ @@ -2142,6 +2377,23 @@ "operations":{"shape":"OperationList"} } }, + "AttachCertificateToDistributionRequest":{ + "type":"structure", + "required":[ + "distributionName", + "certificateName" + ], + "members":{ + "distributionName":{"shape":"ResourceName"}, + "certificateName":{"shape":"ResourceName"} + } + }, + "AttachCertificateToDistributionResult":{ + "type":"structure", + "members":{ + "operation":{"shape":"Operation"} + } + }, "AttachDiskRequest":{ "type":"structure", "required":[ @@ -2272,6 +2524,13 @@ "member":{"shape":"AvailabilityZone"} }, "Base64":{"type":"string"}, + "BehaviorEnum":{ + "type":"string", + "enum":[ + "dont-cache", + "cache" + ] + }, "Blueprint":{ "type":"structure", "members":{ @@ -2320,6 +2579,93 @@ "type":"list", "member":{"shape":"Bundle"} }, + "CacheBehavior":{ + "type":"structure", + "members":{ + "behavior":{"shape":"BehaviorEnum"} + } + }, + "CacheBehaviorList":{ + "type":"list", + "member":{"shape":"CacheBehaviorPerPath"} + }, + "CacheBehaviorPerPath":{ + "type":"structure", + "members":{ + "path":{"shape":"string"}, + "behavior":{"shape":"BehaviorEnum"} + } + }, + "CacheSettings":{ + "type":"structure", + "members":{ + "defaultTTL":{"shape":"long"}, + "minimumTTL":{"shape":"long"}, + "maximumTTL":{"shape":"long"}, + "allowedHTTPMethods":{"shape":"NonEmptyString"}, + "cachedHTTPMethods":{"shape":"NonEmptyString"}, + "forwardedCookies":{"shape":"CookieObject"}, + "forwardedHeaders":{"shape":"HeaderObject"}, + "forwardedQueryStrings":{"shape":"QueryStringObject"} + } + }, + "Certificate":{ + "type":"structure", + "members":{ + "arn":{"shape":"NonEmptyString"}, + "name":{"shape":"CertificateName"}, + "domainName":{"shape":"DomainName"}, + "status":{"shape":"CertificateStatus"}, + "serialNumber":{"shape":"SerialNumber"}, + "subjectAlternativeNames":{"shape":"SubjectAlternativeNameList"}, + "domainValidationRecords":{"shape":"DomainValidationRecordList"}, + "requestFailureReason":{"shape":"RequestFailureReason"}, + "inUseResourceCount":{"shape":"InUseResourceCount"}, + "keyAlgorithm":{"shape":"KeyAlgorithm"}, + "createdAt":{"shape":"IsoDate"}, + "issuedAt":{"shape":"IsoDate"}, + "issuerCA":{"shape":"IssuerCA"}, + "notBefore":{"shape":"IsoDate"}, + "notAfter":{"shape":"IsoDate"}, + "eligibleToRenew":{"shape":"EligibleToRenew"}, + "renewalSummary":{"shape":"RenewalSummary"}, + "revokedAt":{"shape":"IsoDate"}, + "revocationReason":{"shape":"RevocationReason"}, + "tags":{"shape":"TagList"}, + "supportCode":{"shape":"string"} + } + }, + "CertificateName":{"type":"string"}, + "CertificateStatus":{ + "type":"string", + "enum":[ + "PENDING_VALIDATION", + "ISSUED", + "INACTIVE", + "EXPIRED", + "VALIDATION_TIMED_OUT", + "REVOKED", + "FAILED" + ] + }, + "CertificateStatusList":{ + "type":"list", + "member":{"shape":"CertificateStatus"} + }, + "CertificateSummary":{ + "type":"structure", + "members":{ + "certificateArn":{"shape":"NonEmptyString"}, + "certificateName":{"shape":"CertificateName"}, + "domainName":{"shape":"DomainName"}, + "certificateDetail":{"shape":"Certificate"}, + "tags":{"shape":"TagList"} + } + }, + "CertificateSummaryList":{ + "type":"list", + "member":{"shape":"CertificateSummary"} + }, "CloseInstancePublicPortsRequest":{ "type":"structure", "required":[ @@ -2420,6 +2766,13 @@ "type":"list", "member":{"shape":"ContactProtocol"} }, + "CookieObject":{ + "type":"structure", + "members":{ + "option":{"shape":"ForwardValues"}, + "cookiesAllowList":{"shape":"StringList"} + } + }, "CopySnapshotRequest":{ "type":"structure", "required":[ @@ -2441,6 +2794,26 @@ "operations":{"shape":"OperationList"} } }, + "CreateCertificateRequest":{ + "type":"structure", + "required":[ + "certificateName", + "domainName" + ], + "members":{ + "certificateName":{"shape":"CertificateName"}, + "domainName":{"shape":"DomainName"}, + "subjectAlternativeNames":{"shape":"SubjectAlternativeNameList"}, + "tags":{"shape":"TagList"} + } + }, + "CreateCertificateResult":{ + "type":"structure", + "members":{ + "certificate":{"shape":"CertificateSummary"}, + "operations":{"shape":"OperationList"} + } + }, "CreateCloudFormationStackRequest":{ "type":"structure", "required":["instances"], @@ -2533,6 +2906,31 @@ "operations":{"shape":"OperationList"} } }, + "CreateDistributionRequest":{ + "type":"structure", + "required":[ + "distributionName", + "origin", + "defaultCacheBehavior", + "bundleId" + ], + "members":{ + "distributionName":{"shape":"ResourceName"}, + "origin":{"shape":"InputOrigin"}, + "defaultCacheBehavior":{"shape":"CacheBehavior"}, + "cacheBehaviorSettings":{"shape":"CacheSettings"}, + "cacheBehaviors":{"shape":"CacheBehaviorList"}, + "bundleId":{"shape":"string"}, + "tags":{"shape":"TagList"} + } + }, + "CreateDistributionResult":{ + "type":"structure", + "members":{ + "distribution":{"shape":"LightsailDistribution"}, + "operation":{"shape":"Operation"} + } + }, "CreateDomainEntryRequest":{ "type":"structure", "required":[ @@ -2797,6 +3195,19 @@ "operations":{"shape":"OperationList"} } }, + "DeleteCertificateRequest":{ + "type":"structure", + "required":["certificateName"], + "members":{ + "certificateName":{"shape":"CertificateName"} + } + }, + "DeleteCertificateResult":{ + "type":"structure", + "members":{ + "operations":{"shape":"OperationList"} + } + }, "DeleteContactMethodRequest":{ "type":"structure", "required":["protocol"], @@ -2837,6 +3248,18 @@ "operations":{"shape":"OperationList"} } }, + "DeleteDistributionRequest":{ + "type":"structure", + "members":{ + "distributionName":{"shape":"ResourceName"} + } + }, + "DeleteDistributionResult":{ + "type":"structure", + "members":{ + "operation":{"shape":"Operation"} + } + }, "DeleteDomainEntryRequest":{ "type":"structure", "required":[ @@ -2986,6 +3409,19 @@ "service":{"shape":"NonEmptyString"} } }, + "DetachCertificateFromDistributionRequest":{ + "type":"structure", + "required":["distributionName"], + "members":{ + "distributionName":{"shape":"ResourceName"} + } + }, + "DetachCertificateFromDistributionResult":{ + "type":"structure", + "members":{ + "operation":{"shape":"Operation"} + } + }, "DetachDiskRequest":{ "type":"structure", "required":["diskName"], @@ -3151,6 +3587,35 @@ "unknown" ] }, + "DistributionBundle":{ + "type":"structure", + "members":{ + "bundleId":{"shape":"string"}, + "name":{"shape":"string"}, + "price":{"shape":"float"}, + "transferPerMonthInGb":{"shape":"integer"}, + "isActive":{"shape":"boolean"} + } + }, + "DistributionBundleList":{ + "type":"list", + "member":{"shape":"DistributionBundle"} + }, + "DistributionList":{ + "type":"list", + "member":{"shape":"LightsailDistribution"} + }, + "DistributionMetricName":{ + "type":"string", + "enum":[ + "Requests", + "BytesDownloaded", + "BytesUploaded", + "TotalErrorRate", + "Http4xxErrorRate", + "Http5xxErrorRate" + ] + }, "Domain":{ "type":"structure", "members":{ @@ -3198,6 +3663,17 @@ "type":"list", "member":{"shape":"DomainName"} }, + "DomainValidationRecord":{ + "type":"structure", + "members":{ + "domainName":{"shape":"DomainName"}, + "resourceRecord":{"shape":"ResourceRecord"} + } + }, + "DomainValidationRecordList":{ + "type":"list", + "member":{"shape":"DomainValidationRecord"} + }, "DownloadDefaultKeyPairRequest":{ "type":"structure", "members":{ @@ -3210,6 +3686,7 @@ "privateKeyBase64":{"shape":"Base64"} } }, + "EligibleToRenew":{"type":"string"}, "EnableAddOnRequest":{ "type":"structure", "required":[ @@ -3277,6 +3754,14 @@ "operations":{"shape":"OperationList"} } }, + "ForwardValues":{ + "type":"string", + "enum":[ + "none", + "allow-list", + "all" + ] + }, "GetActiveNamesRequest":{ "type":"structure", "members":{ @@ -3348,6 +3833,20 @@ "nextPageToken":{"shape":"string"} } }, + "GetCertificatesRequest":{ + "type":"structure", + "members":{ + "certificateStatuses":{"shape":"CertificateStatusList"}, + "includeCertificateDetails":{"shape":"IncludeCertificateDetails"}, + "certificateName":{"shape":"CertificateName"} + } + }, + "GetCertificatesResult":{ + "type":"structure", + "members":{ + "certificates":{"shape":"CertificateSummaryList"} + } + }, "GetCloudFormationStackRecordsRequest":{ "type":"structure", "members":{ @@ -3425,6 +3924,72 @@ "nextPageToken":{"shape":"string"} } }, + "GetDistributionBundlesRequest":{ + "type":"structure", + "members":{ + } + }, + "GetDistributionBundlesResult":{ + "type":"structure", + "members":{ + "bundles":{"shape":"DistributionBundleList"} + } + }, + "GetDistributionLatestCacheResetRequest":{ + "type":"structure", + "members":{ + "distributionName":{"shape":"ResourceName"} + } + }, + "GetDistributionLatestCacheResetResult":{ + "type":"structure", + "members":{ + "status":{"shape":"string"}, + "createTime":{"shape":"IsoDate"} + } + }, + "GetDistributionMetricDataRequest":{ + "type":"structure", + "required":[ + "distributionName", + "metricName", + "startTime", + "endTime", + "period", + "unit", + "statistics" + ], + "members":{ + "distributionName":{"shape":"ResourceName"}, + "metricName":{"shape":"DistributionMetricName"}, + "startTime":{"shape":"timestamp"}, + "endTime":{"shape":"timestamp"}, + "period":{"shape":"MetricPeriod"}, + "unit":{"shape":"MetricUnit"}, + "statistics":{"shape":"MetricStatisticList"} + } + }, + "GetDistributionMetricDataResult":{ + "type":"structure", + "members":{ + "metricName":{"shape":"DistributionMetricName"}, + "metricData":{"shape":"MetricDatapointList"} + } + }, + "GetDistributionsRequest":{ + "type":"structure", + "members":{ + "distributionName":{"shape":"ResourceName"}, + "pageToken":{"shape":"string"} + } + }, + "GetDistributionsResult":{ + "type":"structure", + "members":{ + "distributions":{"shape":"DistributionList"}, + "nextPageToken":{"shape":"string"} + } + }, "GetDomainRequest":{ "type":"structure", "required":["domainName"], @@ -3949,6 +4514,37 @@ "nextPageToken":{"shape":"string"} } }, + "HeaderEnum":{ + "type":"string", + "enum":[ + "Accept", + "Accept-Charset", + "Accept-Datetime", + "Accept-Encoding", + "Accept-Language", + "Authorization", + "CloudFront-Forwarded-Proto", + "CloudFront-Is-Desktop-Viewer", + "CloudFront-Is-Mobile-Viewer", + "CloudFront-Is-SmartTV-Viewer", + "CloudFront-Is-Tablet-Viewer", + "CloudFront-Viewer-Country", + "Host", + "Origin", + "Referer" + ] + }, + "HeaderForwardList":{ + "type":"list", + "member":{"shape":"HeaderEnum"} + }, + "HeaderObject":{ + "type":"structure", + "members":{ + "option":{"shape":"ForwardValues"}, + "headersAllowList":{"shape":"HeaderForwardList"} + } + }, "HostKeyAttributes":{ "type":"structure", "members":{ @@ -3982,6 +4578,16 @@ "operation":{"shape":"Operation"} } }, + "InUseResourceCount":{"type":"integer"}, + "IncludeCertificateDetails":{"type":"boolean"}, + "InputOrigin":{ + "type":"structure", + "members":{ + "name":{"shape":"ResourceName"}, + "regionName":{"shape":"RegionName"}, + "protocolPolicy":{"shape":"OriginProtocolPolicyEnum"} + } + }, "Instance":{ "type":"structure", "members":{ @@ -4242,6 +4848,8 @@ } }, "IsoDate":{"type":"timestamp"}, + "IssuerCA":{"type":"string"}, + "KeyAlgorithm":{"type":"string"}, "KeyPair":{ "type":"structure", "members":{ @@ -4259,6 +4867,30 @@ "type":"list", "member":{"shape":"KeyPair"} }, + "LightsailDistribution":{ + "type":"structure", + "members":{ + "name":{"shape":"ResourceName"}, + "arn":{"shape":"NonEmptyString"}, + "supportCode":{"shape":"string"}, + "createdAt":{"shape":"IsoDate"}, + "location":{"shape":"ResourceLocation"}, + "resourceType":{"shape":"ResourceType"}, + "alternativeDomainNames":{"shape":"StringList"}, + "status":{"shape":"string"}, + "isEnabled":{"shape":"boolean"}, + "domainName":{"shape":"string"}, + "bundleId":{"shape":"string"}, + "certificateName":{"shape":"ResourceName"}, + "origin":{"shape":"Origin"}, + "originPublicDNS":{"shape":"string"}, + "defaultCacheBehavior":{"shape":"CacheBehavior"}, + "cacheBehaviorSettings":{"shape":"CacheSettings"}, + "cacheBehaviors":{"shape":"CacheBehaviorList"}, + "ableToUpdateBundle":{"shape":"boolean"}, + "tags":{"shape":"TagList"} + } + }, "LoadBalancer":{ "type":"structure", "members":{ @@ -4727,7 +5359,32 @@ "CreateContactMethod", "GetContactMethods", "SendContactMethodVerification", - "DeleteContactMethod" + "DeleteContactMethod", + "CreateDistribution", + "UpdateDistribution", + "DeleteDistribution", + "ResetDistributionCache", + "AttachCertificateToDistribution", + "DetachCertificateFromDistribution", + "UpdateDistributionBundle", + "CreateCertificate", + "DeleteCertificate" + ] + }, + "Origin":{ + "type":"structure", + "members":{ + "name":{"shape":"ResourceName"}, + "resourceType":{"shape":"ResourceType"}, + "regionName":{"shape":"RegionName"}, + "protocolPolicy":{"shape":"OriginProtocolPolicyEnum"} + } + }, + "OriginProtocolPolicyEnum":{ + "type":"string", + "enum":[ + "http-only", + "https-only" ] }, "PasswordData":{ @@ -4861,6 +5518,13 @@ "operation":{"shape":"Operation"} } }, + "QueryStringObject":{ + "type":"structure", + "members":{ + "option":{"shape":"boolean"}, + "queryStringsAllowList":{"shape":"StringList"} + } + }, "RebootInstanceRequest":{ "type":"structure", "required":["instanceName"], @@ -5102,6 +5766,40 @@ "operations":{"shape":"OperationList"} } }, + "RenewalStatus":{ + "type":"string", + "enum":[ + "PendingAutoRenewal", + "PendingValidation", + "Success", + "Failed" + ] + }, + "RenewalStatusReason":{"type":"string"}, + "RenewalSummary":{ + "type":"structure", + "members":{ + "domainValidationRecords":{"shape":"DomainValidationRecordList"}, + "renewalStatus":{"shape":"RenewalStatus"}, + "renewalStatusReason":{"shape":"RenewalStatusReason"}, + "updatedAt":{"shape":"IsoDate"} + } + }, + "RequestFailureReason":{"type":"string"}, + "ResetDistributionCacheRequest":{ + "type":"structure", + "members":{ + "distributionName":{"shape":"ResourceName"} + } + }, + "ResetDistributionCacheResult":{ + "type":"structure", + "members":{ + "status":{"shape":"string"}, + "createTime":{"shape":"IsoDate"}, + "operation":{"shape":"Operation"} + } + }, "ResourceArn":{ "type":"string", "pattern":"^arn:(aws[^:]*):([a-zA-Z0-9-]+):([a-z0-9-]+):([0-9]+):([a-zA-Z]+)/([a-zA-Z0-9-]+)$" @@ -5121,6 +5819,14 @@ "type":"list", "member":{"shape":"ResourceName"} }, + "ResourceRecord":{ + "type":"structure", + "members":{ + "name":{"shape":"string"}, + "type":{"shape":"string"}, + "value":{"shape":"string"} + } + }, "ResourceType":{ "type":"string", "enum":[ @@ -5139,9 +5845,12 @@ "ExportSnapshotRecord", "CloudFormationStackRecord", "Alarm", - "ContactMethod" + "ContactMethod", + "Distribution", + "Certificate" ] }, + "RevocationReason":{"type":"string"}, "SendContactMethodVerificationRequest":{ "type":"structure", "required":["protocol"], @@ -5159,6 +5868,7 @@ "type":"string", "sensitive":true }, + "SerialNumber":{"type":"string"}, "ServiceException":{ "type":"structure", "members":{ @@ -5251,6 +5961,10 @@ "max":256, "min":1 }, + "SubjectAlternativeNameList":{ + "type":"list", + "member":{"shape":"DomainName"} + }, "Tag":{ "type":"structure", "members":{ @@ -5355,6 +6069,37 @@ "operations":{"shape":"OperationList"} } }, + "UpdateDistributionBundleRequest":{ + "type":"structure", + "members":{ + "distributionName":{"shape":"ResourceName"}, + "bundleId":{"shape":"string"} + } + }, + "UpdateDistributionBundleResult":{ + "type":"structure", + "members":{ + "operation":{"shape":"Operation"} + } + }, + "UpdateDistributionRequest":{ + "type":"structure", + "required":["distributionName"], + "members":{ + "distributionName":{"shape":"ResourceName"}, + "origin":{"shape":"InputOrigin"}, + "defaultCacheBehavior":{"shape":"CacheBehavior"}, + "cacheBehaviorSettings":{"shape":"CacheSettings"}, + "cacheBehaviors":{"shape":"CacheBehaviorList"}, + "isEnabled":{"shape":"boolean"} + } + }, + "UpdateDistributionResult":{ + "type":"structure", + "members":{ + "operation":{"shape":"Operation"} + } + }, "UpdateDomainEntryRequest":{ "type":"structure", "required":[ @@ -5434,6 +6179,7 @@ "double":{"type":"double"}, "float":{"type":"float"}, "integer":{"type":"integer"}, + "long":{"type":"long"}, "string":{"type":"string"}, "timestamp":{"type":"timestamp"} } diff --git a/models/apis/lightsail/2016-11-28/docs-2.json b/models/apis/lightsail/2016-11-28/docs-2.json index a7d56e62101..0a672f45742 100644 --- a/models/apis/lightsail/2016-11-28/docs-2.json +++ b/models/apis/lightsail/2016-11-28/docs-2.json @@ -1,19 +1,22 @@ { "version": "2.0", - "service": "

Amazon Lightsail is the easiest way to get started with AWS for developers who just need virtual private servers. Lightsail includes everything you need to launch your project quickly - a virtual machine, a managed database, SSD-based storage, data transfer, DNS management, and a static IP - for a low, predictable price. You manage those Lightsail servers through the Lightsail console or by using the API or command-line interface (CLI).

For more information about Lightsail concepts and tasks, see the Lightsail Dev Guide.

To use the Lightsail API or the CLI, you will need to use AWS Identity and Access Management (IAM) to generate access keys. For details about how to set this up, see the Lightsail Dev Guide.

", + "service": "

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.

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 and tasks, see the Lightsail Dev Guide.

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 Quotas in the AWS General Reference.

", "operations": { "AllocateStaticIp": "

Allocates a static IP address.

", + "AttachCertificateToDistribution": "

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 an origin in any AWS Region, and distribute its content globally. However, all distributions are located in the us-east-1 Region.

", "AttachDisk": "

Attaches a block storage disk to a running or stopped Lightsail instance and exposes it to the instance with the specified disk name.

The attach disk operation supports tag-based access control via resource tags applied to the resource identified by disk name. For more information, see the Lightsail Dev Guide.

", "AttachInstancesToLoadBalancer": "

Attaches one or more Lightsail instances to a load balancer.

After some time, the instances are attached to the load balancer and the health check status is available.

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

", "AttachLoadBalancerTlsCertificate": "

Attaches a Transport Layer Security (TLS) certificate to your load balancer. TLS is just an updated, more secure version of Secure Socket Layer (SSL).

Once you create and validate your certificate, you can attach it to your load balancer. You can also use this API to rotate the certificates on your account. Use the AttachLoadBalancerTlsCertificate action with the non-attached certificate, and it will replace the existing one and become the attached certificate.

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

", "AttachStaticIp": "

Attaches a static IP address to a specific Amazon Lightsail instance.

", "CloseInstancePublicPorts": "

Closes ports for a specific Amazon Lightsail instance.

The CloseInstancePublicPorts action supports tag-based access control via resource tags applied to the resource identified by instanceName. For more information, see the Lightsail Dev Guide.

", "CopySnapshot": "

Copies a manual snapshot of an instance or disk as another manual snapshot, or copies an automatic snapshot of an instance or disk as a manual snapshot. This operation can also be used to copy a manual or automatic snapshot of an instance or a disk from one AWS Region to another in Amazon Lightsail.

When copying a manual snapshot, be sure to define the source region, source snapshot name, and target snapshot name parameters.

When copying an automatic snapshot, be sure to define the source region, source resource name, target snapshot name, and either the restore date or the use latest restorable auto snapshot parameters.

", + "CreateCertificate": "

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 an origin in any AWS Region, and distribute its content globally. However, all distributions are located in the us-east-1 Region.

", "CreateCloudFormationStack": "

Creates an AWS CloudFormation stack, which creates a new Amazon EC2 instance from an exported Amazon Lightsail snapshot. This operation results in a CloudFormation stack record that can be used to track the AWS CloudFormation stack created. Use the get cloud formation stack records operation to get a list of the CloudFormation stacks created.

Wait until after your new Amazon EC2 instance is created before running the create cloud formation stack operation again with the same export snapshot record.

", "CreateContactMethod": "

Creates an email or SMS text message contact method.

A contact method is used to send you notifications about your Amazon Lightsail resources. You can add one email address and one mobile phone number contact method in each AWS Region. However, SMS text messaging is not supported in some AWS Regions, and SMS text messages cannot be sent to some countries/regions. For more information, see Notifications in Amazon Lightsail.

", "CreateDisk": "

Creates a block storage disk that can be attached to an Amazon Lightsail instance in the same Availability Zone (e.g., us-east-2a).

The create disk operation supports tag-based access control via request tags. For more information, see the Lightsail Dev Guide.

", "CreateDiskFromSnapshot": "

Creates a block storage disk from a manual or automatic snapshot of a disk. The resulting disk can be attached to an Amazon Lightsail instance in the same Availability Zone (e.g., us-east-2a).

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

", "CreateDiskSnapshot": "

Creates a snapshot of a block storage disk. You can use snapshots for backups, to make copies of disks, and to save data before shutting down a Lightsail instance.

You can take a snapshot of an attached disk that is in use; however, snapshots only capture data that has been written to your disk at the time the snapshot command is issued. This may exclude any data that has been cached by any applications or the operating system. If you can pause any file systems on the disk long enough to take a snapshot, your snapshot should be complete. Nevertheless, if you cannot pause all file writes to the disk, you should unmount the disk from within the Lightsail instance, issue the create disk snapshot command, and then remount the disk to ensure a consistent and complete snapshot. You may remount and use your disk while the snapshot status is pending.

You can also use this operation to create a snapshot of an instance's system volume. You might want to do this, for example, to recover data from the system volume of a botched instance or to create a backup of the system volume like you would for a block storage disk. To create a snapshot of a system volume, just define the instance name parameter when issuing the snapshot command, and a snapshot of the defined instance's system volume will be created. After the snapshot is available, you can create a block storage disk from the snapshot and attach it to a running instance to access the data on the disk.

The create disk snapshot operation supports tag-based access control via request tags. For more information, see the Lightsail Dev Guide.

", + "CreateDistribution": "

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.

", "CreateDomain": "

Creates a domain resource for the specified domain (e.g., example.com).

The create domain operation supports tag-based access control via request tags. For more information, see the Lightsail Dev Guide.

", "CreateDomainEntry": "

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).

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.

", "CreateInstanceSnapshot": "

Creates a snapshot of a specific virtual private server, or instance. You can use a snapshot to create a new instance that is based on that snapshot.

The create instance snapshot operation supports tag-based access control via request tags. For more information, see the Lightsail Dev Guide.

", @@ -27,9 +30,11 @@ "CreateRelationalDatabaseSnapshot": "

Creates a snapshot of your database in Amazon Lightsail. You can use snapshots for backups, to make copies of a database, and to save data before deleting a database.

The create relational database snapshot operation supports tag-based access control via request tags. For more information, see the Lightsail Dev Guide.

", "DeleteAlarm": "

Deletes an alarm.

An alarm is used to monitor a single metric for one of your resources. When a metric condition is met, the alarm can notify you by email, SMS text message, and a banner displayed on the Amazon Lightsail console. For more information, see Alarms in Amazon Lightsail.

", "DeleteAutoSnapshot": "

Deletes an automatic snapshot of an instance or disk. For more information, see the Lightsail Dev Guide.

", + "DeleteCertificate": "

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.

", "DeleteContactMethod": "

Deletes a contact method.

A contact method is used to send you notifications about your Amazon Lightsail resources. You can add one email address and one mobile phone number contact method in each AWS Region. However, SMS text messaging is not supported in some AWS Regions, and SMS text messages cannot be sent to some countries/regions. For more information, see Notifications in Amazon Lightsail.

", "DeleteDisk": "

Deletes 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 Lightsail Dev Guide.

", "DeleteDiskSnapshot": "

Deletes the specified disk snapshot.

When you make periodic snapshots of a disk, the snapshots are incremental, and only the blocks on the device that have changed since your last snapshot are saved in the new snapshot. When you delete a snapshot, only the data not needed for any other snapshot is removed. So regardless of which prior snapshots have been deleted, all active snapshots will have access to all the information needed to restore the disk.

The delete disk snapshot operation supports tag-based access control via resource tags applied to the resource identified by disk snapshot name. For more information, see the Lightsail Dev Guide.

", + "DeleteDistribution": "

Deletes your Amazon Lightsail content delivery network (CDN) distribution.

", "DeleteDomain": "

Deletes the specified domain recordset and all of its domain records.

The delete domain 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.

", "DeleteDomainEntry": "

Deletes a specific domain entry.

The delete 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.

", "DeleteInstance": "

Deletes an Amazon Lightsail instance.

The delete instance operation supports tag-based access control via resource tags applied to the resource identified by instance name. For more information, see the Lightsail Dev Guide.

", @@ -40,6 +45,7 @@ "DeleteLoadBalancerTlsCertificate": "

Deletes an SSL/TLS certificate associated with a Lightsail load balancer.

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

", "DeleteRelationalDatabase": "

Deletes a database in Amazon Lightsail.

The delete relational database operation supports tag-based access control via resource tags applied to the resource identified by relationalDatabaseName. For more information, see the Lightsail Dev Guide.

", "DeleteRelationalDatabaseSnapshot": "

Deletes a database snapshot in Amazon Lightsail.

The delete relational database snapshot operation supports tag-based access control via resource tags applied to the resource identified by relationalDatabaseName. For more information, see the Lightsail Dev Guide.

", + "DetachCertificateFromDistribution": "

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.

", "DetachDisk": "

Detaches a stopped block storage disk from a Lightsail instance. Make sure to unmount any file systems on the device within your operating system before stopping the instance and detaching the disk.

The detach disk operation supports tag-based access control via resource tags applied to the resource identified by disk name. For more information, see the Lightsail Dev Guide.

", "DetachInstancesFromLoadBalancer": "

Detaches the specified instances from a Lightsail load balancer.

This operation waits until the instances are no longer needed before they are detached from the load balancer.

The detach instances from load balancer operation supports tag-based access control via resource tags applied to the resource identified by load balancer name. For more information, see the Lightsail Dev Guide.

", "DetachStaticIp": "

Detaches a static IP from the Amazon Lightsail instance to which it is attached.

", @@ -52,12 +58,17 @@ "GetAutoSnapshots": "

Returns the available automatic snapshots for an instance or disk. For more information, see the Lightsail Dev Guide.

", "GetBlueprints": "

Returns the list of available instance images, or blueprints. You can use a blueprint to create a new instance already running a specific operating system, as well as a preinstalled app or development stack. The software each instance is running depends on the blueprint image you choose.

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.

", "GetBundles": "

Returns the list of bundles that are available for purchase. A bundle describes the specs for your virtual private server (or instance).

", + "GetCertificates": "

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), certificate name, domain name, and tags.

", "GetCloudFormationStackRecords": "

Returns the CloudFormation stack record created as a result of the create cloud formation stack operation.

An AWS CloudFormation stack is used to create a new Amazon EC2 instance from an exported Lightsail snapshot.

", "GetContactMethods": "

Returns information about the configured contact methods. Specify a protocol in your request to return information about a specific contact method.

A contact method is used to send you notifications about your Amazon Lightsail resources. You can add one email address and one mobile phone number contact method in each AWS Region. However, SMS text messaging is not supported in some AWS Regions, and SMS text messages cannot be sent to some countries/regions. For more information, see Notifications in Amazon Lightsail.

", "GetDisk": "

Returns information about a specific block storage disk.

", "GetDiskSnapshot": "

Returns information about a specific block storage disk snapshot.

", "GetDiskSnapshots": "

Returns information about all block storage disk snapshots in your AWS account and region.

", "GetDisks": "

Returns information about all block storage disks in your AWS account and region.

", + "GetDistributionBundles": "

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.

", + "GetDistributionLatestCacheReset": "

Returns the timestamp and status of the last cache reset of a specific Amazon Lightsail content delivery network (CDN) distribution.

", + "GetDistributionMetricData": "

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.

", + "GetDistributions": "

Returns information about one or more of your Amazon Lightsail content delivery network (CDN) distributions.

", "GetDomain": "

Returns information about a specific domain recordset.

", "GetDomains": "

Returns a list of all domains in the user's account.

", "GetExportSnapshotRecords": "

Returns the export snapshot record created as a result of the export snapshot operation.

An export snapshot record can be used to create a new Amazon EC2 instance and its related resources with the create cloud formation stack operation.

", @@ -102,6 +113,7 @@ "RebootInstance": "

Restarts a specific instance.

The reboot instance operation supports tag-based access control via resource tags applied to the resource identified by instance name. For more information, see the Lightsail Dev Guide.

", "RebootRelationalDatabase": "

Restarts a specific database in Amazon Lightsail.

The reboot relational database operation supports tag-based access control via resource tags applied to the resource identified by relationalDatabaseName. For more information, see the Lightsail Dev Guide.

", "ReleaseStaticIp": "

Deletes a specific static IP from your account.

", + "ResetDistributionCache": "

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.

", "SendContactMethodVerification": "

Sends a verification request to an email contact method to ensure it's owned by the requester. SMS contact methods don't need to be verified.

A contact method is used to send you notifications about your Amazon Lightsail resources. You can add one email address and one mobile phone number contact method in each AWS Region. However, SMS text messaging is not supported in some AWS Regions, and SMS text messages cannot be sent to some countries/regions. For more information, see Notifications in Amazon Lightsail.

A verification request is sent to the contact method when you initially create it. Use this action to send another verification request if a previous verification request was deleted, or has expired.

Notifications are not sent to an email contact method until after it is verified, and confirmed as valid.

", "StartInstance": "

Starts a specific Amazon Lightsail instance from a stopped state. To restart an instance, use the reboot instance operation.

When you start a stopped instance, Lightsail assigns a new public IP address to the instance. To use the same IP address after stopping and starting an instance, create a static IP address and attach it to the instance. For more information, see the Lightsail Dev Guide.

The start instance operation supports tag-based access control via resource tags applied to the resource identified by instance name. For more information, see the Lightsail Dev Guide.

", "StartRelationalDatabase": "

Starts a specific database from a stopped state in Amazon Lightsail. To restart a database, use the reboot relational database operation.

The start relational database operation supports tag-based access control via resource tags applied to the resource identified by relationalDatabaseName. For more information, see the Lightsail Dev Guide.

", @@ -111,6 +123,8 @@ "TestAlarm": "

Tests an alarm by displaying a banner on the Amazon Lightsail console. If a notification trigger is configured for the specified alarm, the test also sends a notification to the notification protocol (Email and/or SMS) configured for the alarm.

An alarm is used to monitor a single metric for one of your resources. When a metric condition is met, the alarm can notify you by email, SMS text message, and a banner displayed on the Amazon Lightsail console. For more information, see Alarms in Amazon Lightsail.

", "UnpeerVpc": "

Attempts to unpeer the Lightsail VPC from the user's default VPC.

", "UntagResource": "

Deletes the specified set of tag keys and their values from the specified Amazon Lightsail resource.

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

", + "UpdateDistribution": "

Updates an existing Amazon Lightsail content delivery network (CDN) distribution.

Use this action to update the configuration of your existing distribution

", + "UpdateDistributionBundle": "

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 result will indicate whether you can currently update your distribution's bundle.

", "UpdateDomainEntry": "

Updates a domain recordset after it is created.

The update 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.

", "UpdateLoadBalancerAttribute": "

Updates the specified attribute for a load balancer. You can only update one attribute at a time.

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

", "UpdateRelationalDatabase": "

Allows the update of one or more attributes of a database in Amazon Lightsail.

Updates are applied immediately, or in cases where the updates could result in an outage, are applied during the database's predefined maintenance window.

The update relational database operation supports tag-based access control via resource tags applied to the resource identified by relationalDatabaseName. For more information, see the Lightsail Dev Guide.

", @@ -199,6 +213,16 @@ "refs": { } }, + "AttachCertificateToDistributionRequest": { + "base": null, + "refs": { + } + }, + "AttachCertificateToDistributionResult": { + "base": null, + "refs": { + } + }, "AttachDiskRequest": { "base": null, "refs": { @@ -311,6 +335,13 @@ "KeyPair$fingerprint": "

The RSA fingerprint of the key pair.

" } }, + "BehaviorEnum": { + "base": null, + "refs": { + "CacheBehavior$behavior": "

The cache behavior of the distribution.

The following cache behaviors can be specified:

", + "CacheBehaviorPerPath$behavior": "

The cache behavior for the specified path.

You can specify one of the following per-path cache behaviors:

" + } + }, "Blueprint": { "base": "

Describes a blueprint (a virtual private server image).

", "refs": { @@ -341,6 +372,78 @@ "GetBundlesResult$bundles": "

An array of key-value pairs that contains information about the available bundles.

" } }, + "CacheBehavior": { + "base": "

Describes the default cache behavior of an Amazon Lightsail content delivery network (CDN) distribution.

", + "refs": { + "CreateDistributionRequest$defaultCacheBehavior": "

An object that describes the default cache behavior for the distribution.

", + "LightsailDistribution$defaultCacheBehavior": "

An object that describes the default cache behavior of the distribution.

", + "UpdateDistributionRequest$defaultCacheBehavior": "

An object that describes the default cache behavior for the distribution.

" + } + }, + "CacheBehaviorList": { + "base": null, + "refs": { + "CreateDistributionRequest$cacheBehaviors": "

An array of objects that describe the per-path cache behavior for the distribution.

", + "LightsailDistribution$cacheBehaviors": "

An array of objects that describe the per-path cache behavior of the distribution.

", + "UpdateDistributionRequest$cacheBehaviors": "

An array of objects that describe the per-path cache behavior for the distribution.

" + } + }, + "CacheBehaviorPerPath": { + "base": "

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

", + "refs": { + "CacheBehaviorList$member": null + } + }, + "CacheSettings": { + "base": "

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.

", + "refs": { + "CreateDistributionRequest$cacheBehaviorSettings": "

An object that describes the cache behavior settings for the distribution.

", + "LightsailDistribution$cacheBehaviorSettings": "

An object that describes the cache behavior settings of the distribution.

", + "UpdateDistributionRequest$cacheBehaviorSettings": "

An object that describes the cache behavior settings for the distribution.

The cacheBehaviorSettings specified in your UpdateDistributionRequest will replace your distribution's existing settings.

" + } + }, + "Certificate": { + "base": "

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 the certificate Amazon Resource Name (ARN), certificate name, domain name, and tags.

", + "refs": { + "CertificateSummary$certificateDetail": "

An object that describes a certificate in detail.

" + } + }, + "CertificateName": { + "base": null, + "refs": { + "Certificate$name": "

The name of the certificate (e.g., my-certificate).

", + "CertificateSummary$certificateName": "

The name of the certificate.

", + "CreateCertificateRequest$certificateName": "

The name for the certificate.

", + "DeleteCertificateRequest$certificateName": "

The name of the certificate to delete.

Use the GetCertificates action to get a list of certificate names that you can specify.

", + "GetCertificatesRequest$certificateName": "

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 request is made.

" + } + }, + "CertificateStatus": { + "base": null, + "refs": { + "Certificate$status": "

The validation status of the certificate.

", + "CertificateStatusList$member": null + } + }, + "CertificateStatusList": { + "base": null, + "refs": { + "GetCertificatesRequest$certificateStatuses": "

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.

" + } + }, + "CertificateSummary": { + "base": "

Describes an Amazon Lightsail SSL/TLS certificate.

", + "refs": { + "CertificateSummaryList$member": null, + "CreateCertificateResult$certificate": "

An object that describes the certificate created.

" + } + }, + "CertificateSummaryList": { + "base": null, + "refs": { + "GetCertificatesResult$certificates": "

An object that describes certificates.

" + } + }, "CloseInstancePublicPortsRequest": { "base": null, "refs": { @@ -429,6 +532,12 @@ "PutAlarmRequest$contactProtocols": "

The contact protocols to use for the alarm, such as Email, SMS (text messaging), or both.

A notification is sent via the specified contact protocol if notifications are enabled for the alarm, and when the alarm is triggered.

A notification is not sent if a contact protocol is not specified, if the specified contact protocol is not configured in the AWS Region, or if notifications are not enabled for the alarm using the notificationEnabled paramater.

Use the CreateContactMethod action to configure a contact protocol in an AWS Region.

" } }, + "CookieObject": { + "base": "

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.

", + "refs": { + "CacheSettings$forwardedCookies": "

An object that describes the cookies that are forwarded to the origin. Your content is cached based on the cookies that are forwarded.

" + } + }, "CopySnapshotRequest": { "base": null, "refs": { @@ -439,6 +548,16 @@ "refs": { } }, + "CreateCertificateRequest": { + "base": null, + "refs": { + } + }, + "CreateCertificateResult": { + "base": null, + "refs": { + } + }, "CreateCloudFormationStackRequest": { "base": null, "refs": { @@ -489,6 +608,16 @@ "refs": { } }, + "CreateDistributionRequest": { + "base": null, + "refs": { + } + }, + "CreateDistributionResult": { + "base": null, + "refs": { + } + }, "CreateDomainEntryRequest": { "base": null, "refs": { @@ -619,6 +748,16 @@ "refs": { } }, + "DeleteCertificateRequest": { + "base": null, + "refs": { + } + }, + "DeleteCertificateResult": { + "base": null, + "refs": { + } + }, "DeleteContactMethodRequest": { "base": null, "refs": { @@ -649,6 +788,16 @@ "refs": { } }, + "DeleteDistributionRequest": { + "base": null, + "refs": { + } + }, + "DeleteDistributionResult": { + "base": null, + "refs": { + } + }, "DeleteDomainEntryRequest": { "base": null, "refs": { @@ -756,6 +905,16 @@ "ExportSnapshotRecord$destinationInfo": "

A list of objects describing the destination of the export snapshot record.

" } }, + "DetachCertificateFromDistributionRequest": { + "base": null, + "refs": { + } + }, + "DetachCertificateFromDistributionResult": { + "base": null, + "refs": { + } + }, "DetachDiskRequest": { "base": null, "refs": { @@ -866,6 +1025,31 @@ "Disk$state": "

Describes the status of the disk.

" } }, + "DistributionBundle": { + "base": "

Describes the specifications of a distribution bundle.

", + "refs": { + "DistributionBundleList$member": null + } + }, + "DistributionBundleList": { + "base": null, + "refs": { + "GetDistributionBundlesResult$bundles": "

An object that describes a distribution bundle.

" + } + }, + "DistributionList": { + "base": null, + "refs": { + "GetDistributionsResult$distributions": "

An array of objects that describe your distributions.

" + } + }, + "DistributionMetricName": { + "base": null, + "refs": { + "GetDistributionMetricDataRequest$metricName": "

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.

", + "GetDistributionMetricDataResult$metricName": "

The name of the metric returned.

" + } + }, "Domain": { "base": "

Describes a domain where you are storing recordsets in Lightsail.

", "refs": { @@ -915,6 +1099,9 @@ "DomainName": { "base": null, "refs": { + "Certificate$domainName": "

The domain name of the certificate.

", + "CertificateSummary$domainName": "

The domain name of the certificate.

", + "CreateCertificateRequest$domainName": "

The domain name (e.g., example.com) for the certificate.

", "CreateDomainEntryRequest$domainName": "

The domain name (e.g., example.com) for which you want to create the domain entry.

", "CreateDomainRequest$domainName": "

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.

", "CreateLoadBalancerRequest$certificateDomainName": "

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

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

", @@ -923,10 +1110,12 @@ "DeleteDomainRequest$domainName": "

The specific domain name to delete.

", "DomainEntry$name": "

The name of the domain.

", "DomainNameList$member": null, + "DomainValidationRecord$domainName": "

The domain name of the certificate validation record. For example, example.com or www.example.com.

", "GetDomainRequest$domainName": "

The domain name for which your want to return information about.

", "LoadBalancerTlsCertificate$domainName": "

The domain name for your SSL/TLS certificate.

", "LoadBalancerTlsCertificateDomainValidationOption$domainName": "

The fully qualified domain name in the certificate request.

", "LoadBalancerTlsCertificateDomainValidationRecord$domainName": "

The domain name against which your SSL/TLS certificate was validated.

", + "SubjectAlternativeNameList$member": null, "UpdateDomainEntryRequest$domainName": "

The name of the domain recordset to update.

" } }, @@ -937,6 +1126,19 @@ "CreateLoadBalancerTlsCertificateRequest$certificateAlternativeNames": "

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).

" } }, + "DomainValidationRecord": { + "base": "

Describes the domain validation records of an Amazon Lightsail SSL/TLS certificate.

", + "refs": { + "DomainValidationRecordList$member": null + } + }, + "DomainValidationRecordList": { + "base": null, + "refs": { + "Certificate$domainValidationRecords": "

An array of objects that describe the domain validation records of the certificate.

", + "RenewalSummary$domainValidationRecords": "

An array of objects that describe the domain validation records of the certificate.

" + } + }, "DownloadDefaultKeyPairRequest": { "base": null, "refs": { @@ -947,6 +1149,12 @@ "refs": { } }, + "EligibleToRenew": { + "base": null, + "refs": { + "Certificate$eligibleToRenew": "

The renewal eligibility of the certificate.

" + } + }, "EnableAddOnRequest": { "base": null, "refs": { @@ -991,6 +1199,13 @@ "refs": { } }, + "ForwardValues": { + "base": null, + "refs": { + "CookieObject$option": "

Specifies which cookies to forward to the distribution's origin for a cache behavior: all, none, or allow-list to forward only the cookies specified in the cookiesAllowList parameter.

", + "HeaderObject$option": "

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:

" + } + }, "GetActiveNamesRequest": { "base": null, "refs": { @@ -1041,6 +1256,16 @@ "refs": { } }, + "GetCertificatesRequest": { + "base": null, + "refs": { + } + }, + "GetCertificatesResult": { + "base": null, + "refs": { + } + }, "GetCloudFormationStackRecordsRequest": { "base": null, "refs": { @@ -1101,6 +1326,46 @@ "refs": { } }, + "GetDistributionBundlesRequest": { + "base": null, + "refs": { + } + }, + "GetDistributionBundlesResult": { + "base": null, + "refs": { + } + }, + "GetDistributionLatestCacheResetRequest": { + "base": null, + "refs": { + } + }, + "GetDistributionLatestCacheResetResult": { + "base": null, + "refs": { + } + }, + "GetDistributionMetricDataRequest": { + "base": null, + "refs": { + } + }, + "GetDistributionMetricDataResult": { + "base": null, + "refs": { + } + }, + "GetDistributionsRequest": { + "base": null, + "refs": { + } + }, + "GetDistributionsResult": { + "base": null, + "refs": { + } + }, "GetDomainRequest": { "base": null, "refs": { @@ -1451,6 +1716,24 @@ "refs": { } }, + "HeaderEnum": { + "base": null, + "refs": { + "HeaderForwardList$member": null + } + }, + "HeaderForwardList": { + "base": null, + "refs": { + "HeaderObject$headersAllowList": "

The specific headers to forward to your distribution's origin.

" + } + }, + "HeaderObject": { + "base": "

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 value of either acme or apex, and you configure your distribution to cache your content based on values in the product header. Your distribution forwards the product header to the origin and caches the response from the origin once for each header value.

", + "refs": { + "CacheSettings$forwardedHeaders": "

An object that describes the headers that are forwarded to the origin. Your content is cached based on the headers that are forwarded.

" + } + }, "HostKeyAttributes": { "base": "

Describes the public SSH host keys or the RDP certificate.

", "refs": { @@ -1473,6 +1756,25 @@ "refs": { } }, + "InUseResourceCount": { + "base": null, + "refs": { + "Certificate$inUseResourceCount": "

The number of Lightsail resources that the certificate is attached to.

" + } + }, + "IncludeCertificateDetails": { + "base": null, + "refs": { + "GetCertificatesRequest$includeCertificateDetails": "

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.

" + } + }, + "InputOrigin": { + "base": "

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.

", + "refs": { + "CreateDistributionRequest$origin": "

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.

", + "UpdateDistributionRequest$origin": "

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.

" + } + }, "Instance": { "base": "

Describes an instance (a virtual private server).

", "refs": { @@ -1658,6 +1960,11 @@ "refs": { "Alarm$createdAt": "

The timestamp when the alarm was created.

", "AutoSnapshotDetails$createdAt": "

The timestamp when the automatic snapshot was created.

", + "Certificate$createdAt": "

The timestamp when the certificate was created.

", + "Certificate$issuedAt": "

The timestamp when the certificate was issued.

", + "Certificate$notBefore": "

The timestamp when the certificate is first valid.

", + "Certificate$notAfter": "

The timestamp when the certificate expires.

", + "Certificate$revokedAt": "

The timestamp when the certificate was revoked. This value is present only when the certificate status is REVOKED.

", "CloudFormationStackRecord$createdAt": "

The date when the CloudFormation stack record was created.

", "ContactMethod$createdAt": "

The timestamp when the contact method was created.

", "CreateRelationalDatabaseFromSnapshotRequest$restoreTime": "

The date and time to restore your database from.

Constraints:

", @@ -1666,6 +1973,7 @@ "Domain$createdAt": "

The date when the domain recordset was created.

", "ExportSnapshotRecord$createdAt": "

The date when the export snapshot record was created.

", "ExportSnapshotRecordSourceInfo$createdAt": "

The date when the source instance or disk snapshot was created.

", + "GetDistributionLatestCacheResetResult$createTime": "

The timestamp of the last cache reset (e.g., 1479734909.17) in Unix time format.

", "GetRelationalDatabaseLogEventsRequest$startTime": "

The start of the time interval from which to get log events.

Constraints:

", "GetRelationalDatabaseLogEventsRequest$endTime": "

The end of the time interval from which to get log events.

Constraints:

", "GetRelationalDatabaseMasterUserPasswordResult$createdAt": "

The timestamp when the specified version of the master user password was created.

", @@ -1674,16 +1982,17 @@ "HostKeyAttributes$witnessedAt": "

The time that the SSH host key or RDP certificate was recorded by Lightsail.

", "HostKeyAttributes$notValidBefore": "

The returned RDP certificate is valid after this point in time.

This value is listed only for RDP certificates.

", "HostKeyAttributes$notValidAfter": "

The returned RDP certificate is not valid after this point in time.

This value is listed only for RDP certificates.

", - "Instance$createdAt": "

The timestamp when the instance was created (e.g., 1479734909.17).

", + "Instance$createdAt": "

The timestamp when the instance was created (e.g., 1479734909.17) in Unix time format.

", "InstanceAccessDetails$expiresAt": "

For SSH access, the date on which the temporary keys expire.

", "InstanceSnapshot$createdAt": "

The timestamp when the snapshot was created (e.g., 1479907467.024).

", "KeyPair$createdAt": "

The timestamp when the key pair was created (e.g., 1479816991.349).

", + "LightsailDistribution$createdAt": "

The timestamp when the distribution was created.

", "LoadBalancer$createdAt": "

The date when your load balancer was created.

", "LoadBalancerTlsCertificate$createdAt": "

The time when you created your SSL/TLS certificate.

", "LoadBalancerTlsCertificate$issuedAt": "

The time when the SSL/TLS certificate was issued.

", "LoadBalancerTlsCertificate$notAfter": "

The timestamp when the SSL/TLS certificate expires.

", "LoadBalancerTlsCertificate$notBefore": "

The timestamp when the SSL/TLS certificate is first valid.

", - "LoadBalancerTlsCertificate$revokedAt": "

The timestamp when the SSL/TLS certificate was revoked.

", + "LoadBalancerTlsCertificate$revokedAt": "

The timestamp when the certificate was revoked. This value is present only when the certificate status is REVOKED.

", "LogEvent$createdAt": "

The timestamp when the database log event was created.

", "Operation$createdAt": "

The timestamp when the operation was initialized (e.g., 1479816991.349).

", "Operation$statusChangedAt": "

The timestamp when the status was changed (e.g., 1479816991.349).

", @@ -1692,9 +2001,23 @@ "RelationalDatabase$latestRestorableTime": "

The latest point in time to which the database can be restored. Formatted in Unix time.

", "RelationalDatabaseEvent$createdAt": "

The timestamp when the database event was created.

", "RelationalDatabaseSnapshot$createdAt": "

The timestamp when the database snapshot was created.

", + "RenewalSummary$updatedAt": "

The timestamp when the certificate was last updated.

", + "ResetDistributionCacheResult$createTime": "

The timestamp of the reset cache request (e.g., 1479734909.17) in Unix time format.

", "StaticIp$createdAt": "

The timestamp when the static IP was created (e.g., 1479735304.222).

" } }, + "IssuerCA": { + "base": null, + "refs": { + "Certificate$issuerCA": "

The certificate authority that issued the certificate.

" + } + }, + "KeyAlgorithm": { + "base": null, + "refs": { + "Certificate$keyAlgorithm": "

The algorithm used to generate the key pair (the public and private key) of the certificate.

" + } + }, "KeyPair": { "base": "

Describes the SSH key pair.

", "refs": { @@ -1709,6 +2032,13 @@ "GetKeyPairsResult$keyPairs": "

An array of key-value pairs containing information about the key pairs.

" } }, + "LightsailDistribution": { + "base": "

Describes an Amazon Lightsail content delivery network (CDN) distribution.

", + "refs": { + "CreateDistributionResult$distribution": "

An object that describes the distribution created.

", + "DistributionList$member": null + } + }, "LoadBalancer": { "base": "

Describes the Lightsail load balancer.

", "refs": { @@ -1794,7 +2124,7 @@ "LoadBalancerTlsCertificateFailureReason": { "base": null, "refs": { - "LoadBalancerTlsCertificate$failureReason": "

The reason for the SSL/TLS certificate validation failure.

" + "LoadBalancerTlsCertificate$failureReason": "

The validation failure reason, if any, of the certificate.

The following failure reasons are possible:

" } }, "LoadBalancerTlsCertificateList": { @@ -1806,19 +2136,19 @@ "LoadBalancerTlsCertificateRenewalStatus": { "base": null, "refs": { - "LoadBalancerTlsCertificateRenewalSummary$renewalStatus": "

The status of Lightsail's managed renewal of the certificate. Valid values are listed below.

" + "LoadBalancerTlsCertificateRenewalSummary$renewalStatus": "

The renewal status of the certificate.

The following renewal status are possible:

" } }, "LoadBalancerTlsCertificateRenewalSummary": { - "base": "

Contains information about the status of Lightsail's managed renewal for the certificate.

", + "base": "

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:

", "refs": { - "LoadBalancerTlsCertificate$renewalSummary": "

An object containing information about the status of Lightsail's managed renewal for the certificate.

" + "LoadBalancerTlsCertificate$renewalSummary": "

An object that describes the status of the certificate renewal managed by Lightsail.

" } }, "LoadBalancerTlsCertificateRevocationReason": { "base": null, "refs": { - "LoadBalancerTlsCertificate$revocationReason": "

The reason the certificate was revoked. Valid values are below.

" + "LoadBalancerTlsCertificate$revocationReason": "

The reason the certificate was revoked. This value is present only when the certificate status is REVOKED.

" } }, "LoadBalancerTlsCertificateStatus": { @@ -1860,6 +2190,7 @@ "MetricDatapointList": { "base": null, "refs": { + "GetDistributionMetricDataResult$metricData": "

An array of objects that describe the metric data returned.

", "GetInstanceMetricDataResult$metricData": "

An array of objects that describe the metric data returned.

", "GetLoadBalancerMetricDataResult$metricData": "

An array of objects that describe the metric data returned.

", "GetRelationalDatabaseMetricDataResult$metricData": "

An array of objects that describe the metric data returned.

" @@ -1876,6 +2207,7 @@ "base": null, "refs": { "Alarm$period": "

The period, in seconds, over which the statistic is applied.

", + "GetDistributionMetricDataRequest$period": "

The granularity, in seconds, for the metric data points that will be returned.

", "GetInstanceMetricDataRequest$period": "

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.

", "GetLoadBalancerMetricDataRequest$period": "

The granularity, in seconds, of the returned data points.

", "GetRelationalDatabaseMetricDataRequest$period": "

The granularity, in seconds, of the returned data points.

All relational database metric data is available in 1-minute (60 seconds) granularity.

" @@ -1891,6 +2223,7 @@ "MetricStatisticList": { "base": null, "refs": { + "GetDistributionMetricDataRequest$statistics": "

The statistic for the metric.

The following statistics are available:

", "GetInstanceMetricDataRequest$statistics": "

The statistic for the metric.

The following statistics are available:

", "GetLoadBalancerMetricDataRequest$statistics": "

The statistic for the metric.

The following statistics are available:

", "GetRelationalDatabaseMetricDataRequest$statistics": "

The statistic for the metric.

The following statistics are available:

" @@ -1900,6 +2233,7 @@ "base": null, "refs": { "Alarm$unit": "

The unit of the metric associated with the alarm.

", + "GetDistributionMetricDataRequest$unit": "

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.

", "GetInstanceMetricDataRequest$unit": "

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.

", "GetLoadBalancerMetricDataRequest$unit": "

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.

", "GetRelationalDatabaseMetricDataRequest$unit": "

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.

", @@ -1936,6 +2270,10 @@ "Blueprint$blueprintId": "

The ID for the virtual private server image (e.g., app_wordpress_4_4 or app_lamp_7_0).

", "Blueprint$group": "

The group name of the blueprint (e.g., amazon-linux).

", "Bundle$bundleId": "

The bundle ID (e.g., micro_1_0).

", + "CacheSettings$allowedHTTPMethods": "

The HTTP methods that are processed and forwarded to the distribution's origin.

You can specify the following options:

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.

", + "CacheSettings$cachedHTTPMethods": "

The HTTP method responses that are cached by your distribution.

You can specify the following options:

", + "Certificate$arn": "

The Amazon Resource Name (ARN) of the certificate.

", + "CertificateSummary$certificateArn": "

The Amazon Resource Name (ARN) of the certificate.

", "CloudFormationStackRecord$arn": "

The Amazon Resource Name (ARN) of the CloudFormation stack record.

", "CloudFormationStackRecordSourceInfo$name": "

The name of the record.

", "CloudFormationStackRecordSourceInfo$arn": "

The Amazon Resource Name (ARN) of the export snapshot record.

", @@ -1973,12 +2311,13 @@ "InstanceSnapshotInfo$fromBundleId": "

The bundle ID from which the source instance was created (e.g., micro_1_0).

", "InstanceSnapshotInfo$fromBlueprintId": "

The blueprint ID from which the source instance (e.g., os_debian_8_3).

", "KeyPair$arn": "

The Amazon Resource Name (ARN) of the key pair (e.g., arn:aws:lightsail:us-east-2:123456789101:KeyPair/05859e3d-331d-48ba-9034-12345EXAMPLE).

", + "LightsailDistribution$arn": "

The Amazon Resource Name (ARN) of the distribution.

", "LoadBalancer$arn": "

The Amazon Resource Name (ARN) of the load balancer.

", "LoadBalancer$dnsName": "

The DNS name of your Lightsail load balancer.

", "LoadBalancer$healthCheckPath": "

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.

", "LoadBalancerTlsCertificate$arn": "

The Amazon Resource Name (ARN) of the SSL/TLS certificate.

", "LoadBalancerTlsCertificate$issuer": "

The issuer of the certificate.

", - "LoadBalancerTlsCertificate$keyAlgorithm": "

The algorithm that was used to generate the key pair (the public and private key).

", + "LoadBalancerTlsCertificate$keyAlgorithm": "

The algorithm used to generate the key pair (the public and private key).

", "LoadBalancerTlsCertificate$serial": "

The serial number of the certificate.

", "LoadBalancerTlsCertificate$signatureAlgorithm": "

The algorithm that was used to sign the certificate.

", "LoadBalancerTlsCertificate$subject": "

The name of the entity that is associated with the public key contained in the certificate.

", @@ -2033,20 +2372,27 @@ "Operation": { "base": "

Describes the API operation.

", "refs": { + "AttachCertificateToDistributionResult$operation": "

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.

", "CloseInstancePublicPortsResult$operation": "

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.

", + "CreateDistributionResult$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.

", "CreateDomainEntryResult$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.

", "CreateDomainResult$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.

", "CreateKeyPairResult$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.

", + "DeleteDistributionResult$operation": "

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.

", "DeleteDomainEntryResult$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.

", "DeleteDomainResult$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.

", "DeleteKeyPairResult$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.

", + "DetachCertificateFromDistributionResult$operation": "

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.

", "GetOperationResult$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.

", "ImportKeyPairResult$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.

", "OpenInstancePublicPortsResult$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.

", "OperationList$member": null, "PeerVpcResult$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.

", "PutInstancePublicPortsResult$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.

", - "UnpeerVpcResult$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.

" + "ResetDistributionCacheResult$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.

", + "UnpeerVpcResult$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.

", + "UpdateDistributionBundleResult$operation": null, + "UpdateDistributionResult$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.

" } }, "OperationFailureException": { @@ -2063,6 +2409,7 @@ "AttachLoadBalancerTlsCertificateResult$operations": "

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.

These SSL/TLS certificates are only usable by Lightsail load balancers. You can't get the certificate and use it for another purpose.

", "AttachStaticIpResult$operations": "

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.

", "CopySnapshotResult$operations": "

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.

", + "CreateCertificateResult$operations": "

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.

", "CreateCloudFormationStackResult$operations": "

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.

", "CreateContactMethodResult$operations": "

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.

", "CreateDiskFromSnapshotResult$operations": "

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.

", @@ -2078,6 +2425,7 @@ "CreateRelationalDatabaseSnapshotResult$operations": "

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.

", "DeleteAlarmResult$operations": "

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.

", "DeleteAutoSnapshotResult$operations": "

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.

", + "DeleteCertificateResult$operations": "

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.

", "DeleteContactMethodResult$operations": "

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.

", "DeleteDiskResult$operations": "

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.

", "DeleteDiskSnapshotResult$operations": "

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.

", @@ -2126,6 +2474,19 @@ "Operation$operationType": "

The type of operation.

" } }, + "Origin": { + "base": "

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.

", + "refs": { + "LightsailDistribution$origin": "

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.

" + } + }, + "OriginProtocolPolicyEnum": { + "base": null, + "refs": { + "InputOrigin$protocolPolicy": "

The protocol that your Amazon Lightsail distribution uses when establishing a connection with your origin to pull content.

", + "Origin$protocolPolicy": "

The protocol that your Amazon Lightsail distribution uses when establishing a connection with your origin to pull content.

" + } + }, "PasswordData": { "base": "

The password data for the Windows Server-based instance, including the ciphertext and the key pair name.

", "refs": { @@ -2231,6 +2592,12 @@ "refs": { } }, + "QueryStringObject": { + "base": "

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.

", + "refs": { + "CacheSettings$forwardedQueryStrings": "

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.

" + } + }, "RebootInstanceRequest": { "base": null, "refs": { @@ -2274,6 +2641,8 @@ "base": null, "refs": { "CopySnapshotRequest$sourceRegion": "

The AWS Region where the source manual or automatic snapshot is located.

", + "InputOrigin$regionName": "

The AWS Region name of the origin resource.

", + "Origin$regionName": "

The AWS Region name of the origin resource.

", "Region$name": "

The region name (e.g., us-east-2).

", "ResourceLocation$regionName": "

The AWS Region name.

" } @@ -2394,6 +2763,40 @@ "refs": { } }, + "RenewalStatus": { + "base": null, + "refs": { + "RenewalSummary$renewalStatus": "

The renewal status of the certificate.

The following renewal status are possible:

" + } + }, + "RenewalStatusReason": { + "base": null, + "refs": { + "RenewalSummary$renewalStatusReason": "

The reason for the renewal status of the certificate.

" + } + }, + "RenewalSummary": { + "base": "

Describes the status of a SSL/TLS certificate renewal managed by Amazon Lightsail.

", + "refs": { + "Certificate$renewalSummary": "

An object that describes the status of the certificate renewal managed by Lightsail.

" + } + }, + "RequestFailureReason": { + "base": null, + "refs": { + "Certificate$requestFailureReason": "

The validation failure reason, if any, of the certificate.

The following failure reasons are possible:

" + } + }, + "ResetDistributionCacheRequest": { + "base": null, + "refs": { + } + }, + "ResetDistributionCacheResult": { + "base": null, + "refs": { + } + }, "ResourceArn": { "base": null, "refs": { @@ -2415,6 +2818,7 @@ "Instance$location": "

The region name and Availability Zone where the instance is located.

", "InstanceSnapshot$location": "

The region name and Availability Zone where you created the snapshot.

", "KeyPair$location": "

The region name and Availability Zone where the key pair was created.

", + "LightsailDistribution$location": "

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.

", "LoadBalancer$location": "

The AWS Region where your load balancer was created (e.g., us-east-2a). Lightsail automatically creates your load balancer across Availability Zones.

", "LoadBalancerTlsCertificate$location": "

The AWS Region and Availability Zone where you created your certificate.

", "Operation$location": "

The AWS Region and Availability Zone.

", @@ -2428,6 +2832,8 @@ "refs": { "Alarm$name": "

The name of the alarm.

", "AllocateStaticIpRequest$staticIpName": "

The name of the static IP address.

", + "AttachCertificateToDistributionRequest$distributionName": "

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.

", + "AttachCertificateToDistributionRequest$certificateName": "

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 certificate. For example, your certificate name might be WordPress-Blog-Certificate and the domain name of the certificate might be example.com.

", "AttachDiskRequest$diskName": "

The unique Lightsail disk name (e.g., my-disk).

", "AttachDiskRequest$instanceName": "

The name of the Lightsail instance where you want to utilize the storage disk.

", "AttachInstancesToLoadBalancerRequest$loadBalancerName": "

The name of the load balancer.

", @@ -2448,6 +2854,7 @@ "CreateDiskSnapshotRequest$diskName": "

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.

", "CreateDiskSnapshotRequest$diskSnapshotName": "

The name of the destination disk snapshot (e.g., my-disk-snapshot) based on the source disk.

", "CreateDiskSnapshotRequest$instanceName": "

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.

", + "CreateDistributionRequest$distributionName": "

The name for the distribution.

", "CreateInstanceSnapshotRequest$instanceSnapshotName": "

The name for your new snapshot.

", "CreateInstanceSnapshotRequest$instanceName": "

The Lightsail instance on which to base your snapshot.

", "CreateInstancesFromSnapshotRequest$instanceSnapshotName": "

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:

", @@ -2469,6 +2876,7 @@ "DeleteAutoSnapshotRequest$resourceName": "

The name of the source instance or disk from which to delete the automatic snapshot.

", "DeleteDiskRequest$diskName": "

The unique name of the disk you want to delete (e.g., my-disk).

", "DeleteDiskSnapshotRequest$diskSnapshotName": "

The name of the disk snapshot you want to delete (e.g., my-disk-snapshot).

", + "DeleteDistributionRequest$distributionName": "

The name of the distribution to delete.

Use the GetDistributions action to get a list of distribution names that you can specify.

", "DeleteInstanceRequest$instanceName": "

The name of the instance to delete.

", "DeleteInstanceSnapshotRequest$instanceSnapshotName": "

The name of the snapshot to delete.

", "DeleteKeyPairRequest$keyPairName": "

The name of the key pair to delete.

", @@ -2479,6 +2887,7 @@ "DeleteRelationalDatabaseRequest$relationalDatabaseName": "

The name of the database that you are deleting.

", "DeleteRelationalDatabaseRequest$finalRelationalDatabaseSnapshotName": "

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:

", "DeleteRelationalDatabaseSnapshotRequest$relationalDatabaseSnapshotName": "

The name of the database snapshot that you are deleting.

", + "DetachCertificateFromDistributionRequest$distributionName": "

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.

", "DetachDiskRequest$diskName": "

The unique name of the disk you want to detach from your instance (e.g., my-disk).

", "DetachInstancesFromLoadBalancerRequest$loadBalancerName": "

The name of the Lightsail load balancer.

", "DetachStaticIpRequest$staticIpName": "

The name of the static IP to detach from the instance.

", @@ -2499,6 +2908,9 @@ "GetAutoSnapshotsResult$resourceName": "

The name of the source instance or disk for the automatic snapshots.

", "GetDiskRequest$diskName": "

The name of the disk (e.g., my-disk).

", "GetDiskSnapshotRequest$diskSnapshotName": "

The name of the disk snapshot (e.g., my-disk-snapshot).

", + "GetDistributionLatestCacheResetRequest$distributionName": "

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.

", + "GetDistributionMetricDataRequest$distributionName": "

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.

", + "GetDistributionsRequest$distributionName": "

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.

", "GetInstanceAccessDetailsRequest$instanceName": "

The name of the instance to access.

", "GetInstanceMetricDataRequest$instanceName": "

The name of the instance for which you want to get metrics data.

", "GetInstancePortStatesRequest$instanceName": "

The name of the instance for which to return firewall port states.

", @@ -2520,6 +2932,7 @@ "GetRelationalDatabaseSnapshotRequest$relationalDatabaseSnapshotName": "

The name of the database snapshot for which to get information.

", "GetStaticIpRequest$staticIpName": "

The name of the static IP in Lightsail.

", "ImportKeyPairRequest$keyPairName": "

The name of the key pair for which you want to import the public key.

", + "InputOrigin$name": "

The name of the origin resource.

", "Instance$name": "

The name the user gave the instance (e.g., Amazon_Linux-1GB-Ohio-1).

", "Instance$sshKeyName": "

The name of the SSH key being used to connect to the instance (e.g., LightsailDefaultKeyPair).

", "InstanceAccessDetails$instanceName": "

The name of this Amazon Lightsail instance.

", @@ -2528,6 +2941,8 @@ "InstanceSnapshot$name": "

The name of the snapshot.

", "InstanceSnapshot$fromInstanceName": "

The instance from which the snapshot was created.

", "KeyPair$name": "

The friendly name of the SSH key pair.

", + "LightsailDistribution$name": "

The name of the distribution.

", + "LightsailDistribution$certificateName": "

The name of the SSL/TLS certificate attached to the distribution, if any.

", "LoadBalancer$name": "

The name of the load balancer (e.g., my-load-balancer).

", "LoadBalancerTlsCertificate$name": "

The name of the SSL/TLS certificate (e.g., my-certificate).

", "LoadBalancerTlsCertificate$loadBalancerName": "

The load balancer name where your SSL/TLS certificate is attached.

", @@ -2535,6 +2950,7 @@ "MonitoredResourceInfo$name": "

The name of the Lightsail resource being monitored.

", "OpenInstancePublicPortsRequest$instanceName": "

The name of the instance for which to open ports.

", "Operation$resourceName": "

The resource name.

", + "Origin$name": "

The name of the origin resource.

", "PasswordData$keyPairName": "

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.

", "PutAlarmRequest$alarmName": "

The name for the alarm. Specify the name of an existing alarm to update, and overwrite the previous configuration of the alarm.

", "PutAlarmRequest$monitoredResourceName": "

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.

", @@ -2545,6 +2961,7 @@ "RelationalDatabaseEvent$resource": "

The database that the database event relates to.

", "RelationalDatabaseSnapshot$name": "

The name of the database snapshot.

", "ReleaseStaticIpRequest$staticIpName": "

The name of the static IP to delete.

", + "ResetDistributionCacheRequest$distributionName": "

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.

", "ResourceNameList$member": null, "StartInstanceRequest$instanceName": "

The name of the instance (a virtual private server) to start.

", "StartRelationalDatabaseRequest$relationalDatabaseName": "

The name of your database to start.

", @@ -2556,6 +2973,8 @@ "TagResourceRequest$resourceName": "

The name of the resource to which you are adding tags.

", "TestAlarmRequest$alarmName": "

The name of the alarm to test.

", "UntagResourceRequest$resourceName": "

The name of the resource from which you are removing a tag.

", + "UpdateDistributionBundleRequest$distributionName": "

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.

", + "UpdateDistributionRequest$distributionName": "

The name of the distribution to update.

Use the GetDistributions action to get a list of distribution names that you can specify.

", "UpdateLoadBalancerAttributeRequest$loadBalancerName": "

The name of the load balancer that you want to modify (e.g., my-load-balancer.

", "UpdateRelationalDatabaseParametersRequest$relationalDatabaseName": "

The name of your database for which to update parameters.

", "UpdateRelationalDatabaseRequest$relationalDatabaseName": "

The name of your database to update.

" @@ -2568,6 +2987,12 @@ "DetachInstancesFromLoadBalancerRequest$instanceNames": "

An array of strings containing the names of the instances you want to detach from the load balancer.

" } }, + "ResourceRecord": { + "base": "

Describes the domain name system (DNS) records to add to your domain's DNS to validate it for an Amazon Lightsail certificate.

", + "refs": { + "DomainValidationRecord$resourceRecord": "

An object that describes the DNS records to add to your domain's DNS to validate it for the certificate.

" + } + }, "ResourceType": { "base": null, "refs": { @@ -2582,15 +3007,23 @@ "Instance$resourceType": "

The type of resource (usually Instance).

", "InstanceSnapshot$resourceType": "

The type of resource (usually InstanceSnapshot).

", "KeyPair$resourceType": "

The resource type (usually KeyPair).

", + "LightsailDistribution$resourceType": "

The Lightsail resource type (e.g., Distribution).

", "LoadBalancer$resourceType": "

The resource type (e.g., LoadBalancer.

", "LoadBalancerTlsCertificate$resourceType": "

The resource type (e.g., LoadBalancerTlsCertificate).

", "MonitoredResourceInfo$resourceType": "

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.

", "Operation$resourceType": "

The resource type.

", + "Origin$resourceType": "

The resource type of the origin resource (e.g., Instance).

", "RelationalDatabase$resourceType": "

The Lightsail resource type for the database (for example, RelationalDatabase).

", "RelationalDatabaseSnapshot$resourceType": "

The Lightsail resource type.

", "StaticIp$resourceType": "

The resource type (usually StaticIp).

" } }, + "RevocationReason": { + "base": null, + "refs": { + "Certificate$revocationReason": "

The reason the certificate was revoked. This value is present only when the certificate status is REVOKED.

" + } + }, "SendContactMethodVerificationRequest": { "base": null, "refs": { @@ -2609,6 +3042,12 @@ "UpdateRelationalDatabaseRequest$masterUserPassword": "

The password for the master user of your database. The password can include any printable ASCII character except \"/\", \"\"\", or \"@\".

Constraints: Must contain 8 to 41 characters.

" } }, + "SerialNumber": { + "base": null, + "refs": { + "Certificate$serialNumber": "

The serial number of the certificate.

" + } + }, "ServiceException": { "base": "

A general service exception.

", "refs": { @@ -2670,6 +3109,7 @@ "StringList": { "base": null, "refs": { + "CookieObject$cookiesAllowList": "

The specific cookies to forward to your distribution's origin.

", "CreateInstancesFromSnapshotRequest$instanceNames": "

The names for your new instances.

", "CreateInstancesRequest$instanceNames": "

The names to use for your new Lightsail instances. Separate multiple values using quotation marks and commas, for example: [\"MyFirstInstance\",\"MySecondInstance\"]

", "GetActiveNamesResult$activeNames": "

The list of active names returned by the get active names request.

", @@ -2678,9 +3118,11 @@ "InstancePortInfo$cidrListAliases": "

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.

", "InstancePortState$cidrs": "

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.

", "InstancePortState$cidrListAliases": "

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.

", - "LoadBalancerTlsCertificate$subjectAlternativeNames": "

One or more domains or subdomains included in the certificate. This list contains the domain names that are bound to the public key that is contained in the certificate. The subject alternative names include the canonical domain name (CNAME) of the certificate and additional domain names that can be used to connect to the website, such as example.com, www.example.com, or m.example.com.

", + "LightsailDistribution$alternativeDomainNames": "

The alternate domain names of the distribution.

", + "LoadBalancerTlsCertificate$subjectAlternativeNames": "

An array of strings that specify the alternate domains (e.g., example2.com) and subdomains (e.g., blog.example.com) for the certificate.

", "PortInfo$cidrs": "

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:

For more information about CIDR block notation, see Classless Inter-Domain Routing on Wikipedia.

", "PortInfo$cidrListAliases": "

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.

", + "QueryStringObject$queryStringsAllowList": "

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.

", "RelationalDatabaseEvent$eventCategories": "

The category that the database event belongs to.

" } }, @@ -2691,6 +3133,13 @@ "UpdateLoadBalancerAttributeRequest$attributeValue": "

The value that you want to specify for the attribute name.

" } }, + "SubjectAlternativeNameList": { + "base": null, + "refs": { + "Certificate$subjectAlternativeNames": "

An array of strings that specify the alternate domains (e.g., example2.com) and subdomains (e.g., blog.example.com) of the certificate.

", + "CreateCertificateRequest$subjectAlternativeNames": "

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.

" + } + }, "Tag": { "base": "

Describes a tag key and optional value assigned to an Amazon Lightsail resource.

For more information about tags in Lightsail, see the Lightsail Dev Guide.

", "refs": { @@ -2713,25 +3162,30 @@ "TagList": { "base": null, "refs": { - "CreateDiskFromSnapshotRequest$tags": "

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

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

", - "CreateDiskRequest$tags": "

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

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

", - "CreateDiskSnapshotRequest$tags": "

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

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

", - "CreateDomainRequest$tags": "

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

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

", - "CreateInstanceSnapshotRequest$tags": "

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

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

", - "CreateInstancesFromSnapshotRequest$tags": "

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

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

", - "CreateInstancesRequest$tags": "

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

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

", - "CreateKeyPairRequest$tags": "

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

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

", - "CreateLoadBalancerRequest$tags": "

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

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

", - "CreateLoadBalancerTlsCertificateRequest$tags": "

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

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

", - "CreateRelationalDatabaseFromSnapshotRequest$tags": "

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

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

", - "CreateRelationalDatabaseRequest$tags": "

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

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

", - "CreateRelationalDatabaseSnapshotRequest$tags": "

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

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

", + "Certificate$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", + "CertificateSummary$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", + "CreateCertificateRequest$tags": "

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.

", + "CreateDiskFromSnapshotRequest$tags": "

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.

", + "CreateDiskRequest$tags": "

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.

", + "CreateDiskSnapshotRequest$tags": "

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.

", + "CreateDistributionRequest$tags": "

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.

", + "CreateDomainRequest$tags": "

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.

", + "CreateInstanceSnapshotRequest$tags": "

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.

", + "CreateInstancesFromSnapshotRequest$tags": "

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.

", + "CreateInstancesRequest$tags": "

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.

", + "CreateKeyPairRequest$tags": "

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.

", + "CreateLoadBalancerRequest$tags": "

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.

", + "CreateLoadBalancerTlsCertificateRequest$tags": "

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.

", + "CreateRelationalDatabaseFromSnapshotRequest$tags": "

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.

", + "CreateRelationalDatabaseRequest$tags": "

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.

", + "CreateRelationalDatabaseSnapshotRequest$tags": "

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.

", "Disk$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", "DiskSnapshot$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", "Domain$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", "Instance$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", "InstanceSnapshot$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", "KeyPair$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", + "LightsailDistribution$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", "LoadBalancer$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", "LoadBalancerTlsCertificate$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", "RelationalDatabase$tags": "

The tag keys and optional values for the resource. For more information about tags in Lightsail, see the Lightsail Dev Guide.

", @@ -2805,6 +3259,26 @@ "refs": { } }, + "UpdateDistributionBundleRequest": { + "base": null, + "refs": { + } + }, + "UpdateDistributionBundleResult": { + "base": null, + "refs": { + } + }, + "UpdateDistributionRequest": { + "base": null, + "refs": { + } + }, + "UpdateDistributionResult": { + "base": null, + "refs": { + } + }, "UpdateDomainEntryRequest": { "base": null, "refs": { @@ -2865,6 +3339,7 @@ "Disk$isAttached": "

A Boolean value indicating whether the disk is attached.

", "DiskInfo$isSystemDisk": "

A Boolean value indicating whether this disk is a system disk (has an operating system loaded on it).

", "DiskSnapshot$isFromAutoSnapshot": "

A Boolean value indicating whether the snapshot was created from an automatic snapshot.

", + "DistributionBundle$isActive": "

Indicates whether the bundle is active, and can be specified for a new distribution.

", "DomainEntry$isAlias": "

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

", "GetBlueprintsRequest$includeInactive": "

A Boolean value indicating whether to include inactive results in your request.

", "GetBundlesRequest$includeInactive": "

A Boolean value that indicates whether to include inactive bundle results in your request.

", @@ -2874,11 +3349,14 @@ "Instance$isStaticIp": "

A Boolean value indicating whether this instance has a static IP assigned to it.

", "InstanceSnapshot$isFromAutoSnapshot": "

A Boolean value indicating whether the snapshot was created from an automatic snapshot.

", "IsVpcPeeredResult$isPeered": "

Returns true if the Lightsail VPC is peered; otherwise, false.

", + "LightsailDistribution$isEnabled": "

Indicates whether the distribution is enabled.

", + "LightsailDistribution$ableToUpdateBundle": "

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.

", "LoadBalancerTlsCertificate$isAttached": "

When true, the SSL/TLS certificate is attached to the Lightsail load balancer.

", "LoadBalancerTlsCertificateSummary$isAttached": "

When true, the SSL/TLS certificate is attached to the Lightsail load balancer.

", "Operation$isTerminal": "

A Boolean value indicating whether the operation is terminal.

", "PendingModifiedRelationalDatabaseValues$backupRetentionEnabled": "

A Boolean value indicating whether automated backup retention is enabled.

", "PutAlarmRequest$notificationEnabled": "

Indicates whether the alarm is enabled.

Notifications are enabled by default if you don't specify this parameter.

", + "QueryStringObject$option": "

Indicates whether the distribution forwards and caches based on query strings.

", "RelationalDatabase$backupRetentionEnabled": "

A Boolean value indicating whether automated backup retention is enabled for the database.

", "RelationalDatabase$publiclyAccessible": "

A Boolean value indicating whether the database is publicly accessible.

", "RelationalDatabaseBlueprint$isEngineDefault": "

A Boolean value indicating whether the engine version is the default for the database blueprint.

", @@ -2887,6 +3365,7 @@ "RelationalDatabaseParameter$isModifiable": "

A Boolean value indicating whether the parameter can be modified.

", "StaticIp$isAttached": "

A Boolean value indicating whether the static IP is attached.

", "StopInstanceRequest$force": "

When set to True, forces a Lightsail instance that is stuck in a stopping state to stop.

Only use the force parameter if your instance is stuck in the stopping state. In any other state, your instance should stop normally without adding this parameter to your API request.

", + "UpdateDistributionRequest$isEnabled": "

Indicates whether to enable the distribution.

", "UpdateRelationalDatabaseRequest$rotateMasterUserPassword": "

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.

", "UpdateRelationalDatabaseRequest$enableBackupRetention": "

When true, enables automated backup retention for your database.

Updates are applied during the next maintenance window because this can result in an outage.

", "UpdateRelationalDatabaseRequest$disableBackupRetention": "

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.

", @@ -2911,6 +3390,7 @@ "refs": { "Bundle$price": "

The price in US dollars (e.g., 5.0) of the bundle.

", "Bundle$ramSizeInGb": "

The amount of RAM in GB (e.g., 2.0).

", + "DistributionBundle$price": "

The monthly price, in US dollars, of the bundle.

", "InstanceHardware$ramSizeInGb": "

The amount of RAM in GB on the instance (e.g., 1.0).

", "RelationalDatabaseBundle$price": "

The cost of the database bundle in US currency.

", "RelationalDatabaseBundle$ramSizeInGb": "

The amount of RAM in GB (for example, 2.0) for the database bundle.

", @@ -2936,6 +3416,7 @@ "DiskInfo$sizeInGb": "

The size of the disk in GB (e.g., 32).

", "DiskSnapshot$sizeInGb": "

The size of the disk in GB.

", "DiskSnapshotInfo$sizeInGb": "

The size of the disk in GB (e.g., 32).

", + "DistributionBundle$transferPerMonthInGb": "

The monthly network transfer quota of the bundle.

", "GetRelationalDatabaseEventsRequest$durationInMinutes": "

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.

Default: 60

The minimum is 1 and the maximum is 14 days (20160 minutes).

", "InstanceHardware$cpuCount": "

The number of vCPUs the instance has.

", "InstanceSnapshot$sizeInGb": "

The size in GB of the SSD.

", @@ -2953,6 +3434,14 @@ "RelationalDatabaseSnapshot$sizeInGb": "

The size of the disk in GB (for example, 32) for the database snapshot.

" } }, + "long": { + "base": null, + "refs": { + "CacheSettings$defaultTTL": "

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 Expires to objects.

", + "CacheSettings$minimumTTL": "

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.

", + "CacheSettings$maximumTTL": "

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.

" + } + }, "string": { "base": null, "refs": { @@ -2976,11 +3465,14 @@ "Blueprint$licenseUrl": "

The end-user license agreement URL for the image or blueprint.

", "Bundle$instanceType": "

The Amazon EC2 instance type (e.g., t2.micro).

", "Bundle$name": "

A friendly name for the bundle (e.g., Micro).

", + "CacheBehaviorPerPath$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:

", + "Certificate$supportCode": "

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.

", "ContactMethod$supportCode": "

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.

", "CopySnapshotRequest$sourceResourceName": "

The name of the source instance or disk from which the source automatic snapshot was created.

Constraint:

", "CopySnapshotRequest$restoreDate": "

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:

", "CreateDiskFromSnapshotRequest$sourceDiskName": "

The name of the source disk from which the source automatic snapshot was created.

Constraints:

", "CreateDiskFromSnapshotRequest$restoreDate": "

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:

", + "CreateDistributionRequest$bundleId": "

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.

", "CreateInstancesFromSnapshotRequest$availabilityZone": "

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.

", "CreateInstancesFromSnapshotRequest$userData": "

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.

", "CreateInstancesFromSnapshotRequest$sourceInstanceName": "

The name of the source instance from which the source automatic snapshot was created.

Constraints:

", @@ -3003,6 +3495,8 @@ "DiskInfo$name": "

The disk name.

", "DiskSnapshot$supportCode": "

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.

", "DiskSnapshot$progress": "

The progress of the disk snapshot operation.

", + "DistributionBundle$bundleId": "

The ID of the bundle.

", + "DistributionBundle$name": "

The name of the distribution bundle.

", "Domain$supportCode": "

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.

", "DomainEntry$target": "

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.

", "DomainEntryOptions$value": null, @@ -3020,6 +3514,9 @@ "GetDiskSnapshotsResult$nextPageToken": "

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 GetDiskSnapshots request and specify the next page token using the pageToken parameter.

", "GetDisksRequest$pageToken": "

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.

", "GetDisksResult$nextPageToken": "

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.

", + "GetDistributionLatestCacheResetResult$status": "

The status of the last cache reset.

", + "GetDistributionsRequest$pageToken": "

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.

", + "GetDistributionsResult$nextPageToken": "

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.

", "GetDomainsRequest$pageToken": "

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.

", "GetDomainsResult$nextPageToken": "

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.

", "GetExportSnapshotRecordsRequest$pageToken": "

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.

", @@ -3078,6 +3575,11 @@ "InvalidInputException$message": null, "InvalidInputException$tip": null, "KeyPair$supportCode": "

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.

", + "LightsailDistribution$supportCode": "

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.

", + "LightsailDistribution$status": "

The status of the distribution.

", + "LightsailDistribution$domainName": "

The domain name of the distribution.

", + "LightsailDistribution$bundleId": "

The ID of the bundle currently applied to the distribution.

", + "LightsailDistribution$originPublicDNS": "

The public DNS of the origin.

", "LoadBalancer$supportCode": "

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.

", "LoadBalancerConfigurationOptions$value": null, "LoadBalancerTlsCertificate$supportCode": "

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.

", @@ -3120,7 +3622,11 @@ "RelationalDatabaseSnapshot$supportCode": "

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.

", "RelationalDatabaseSnapshot$fromRelationalDatabaseBundleId": "

The bundle ID of the database from which the database snapshot was created.

", "RelationalDatabaseSnapshot$fromRelationalDatabaseBlueprintId": "

The blueprint ID of the database from which the database snapshot was created. A blueprint describes the major engine version of a database.

", + "ResetDistributionCacheResult$status": "

The status of the reset cache request.

", "ResourceLocation$availabilityZone": "

The Availability Zone. Follows the format us-east-2a (case-sensitive).

", + "ResourceRecord$name": "

The name of the record.

", + "ResourceRecord$type": "

The DNS record type.

", + "ResourceRecord$value": "

The value for the DNS record.

", "ServiceException$code": null, "ServiceException$docs": null, "ServiceException$message": null, @@ -3131,6 +3637,7 @@ "UnauthenticatedException$docs": null, "UnauthenticatedException$message": null, "UnauthenticatedException$tip": null, + "UpdateDistributionBundleRequest$bundleId": "

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.

", "UpdateRelationalDatabaseRequest$preferredBackupWindow": "

The daily time range during which automated backups are created for your database if automated backups are enabled.

Constraints:

", "UpdateRelationalDatabaseRequest$preferredMaintenanceWindow": "

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 AWS Region, occurring on a random day of the week.

Constraints:

", "UpdateRelationalDatabaseRequest$caCertificateIdentifier": "

Indicates the certificate that needs to be associated with the database.

" @@ -3139,6 +3646,8 @@ "timestamp": { "base": null, "refs": { + "GetDistributionMetricDataRequest$startTime": "

The start of the time interval for which to get metric data.

Constraints:

You can convert a human-friendly time to Unix time format using a converter like Epoch converter.

", + "GetDistributionMetricDataRequest$endTime": "

The end of the time interval for which to get metric data.

Constraints:

You can convert a human-friendly time to Unix time format using a converter like Epoch converter.

", "GetInstanceMetricDataRequest$startTime": "

The start time of the time period.

", "GetInstanceMetricDataRequest$endTime": "

The end time of the time period.

", "GetLoadBalancerMetricDataRequest$startTime": "

The start time of the period.

", diff --git a/models/apis/workspaces/2015-04-08/api-2.json b/models/apis/workspaces/2015-04-08/api-2.json index 7878c1552bf..6f44dafde8e 100644 --- a/models/apis/workspaces/2015-04-08/api-2.json +++ b/models/apis/workspaces/2015-04-08/api-2.json @@ -251,6 +251,20 @@ {"shape":"InvalidParameterValuesException"} ] }, + "DescribeWorkspaceImagePermissions":{ + "name":"DescribeWorkspaceImagePermissions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeWorkspaceImagePermissionsRequest"}, + "output":{"shape":"DescribeWorkspaceImagePermissionsResult"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValuesException"} + ] + }, "DescribeWorkspaceImages":{ "name":"DescribeWorkspaceImages", "http":{ @@ -575,6 +589,22 @@ {"shape":"InvalidResourceStateException"}, {"shape":"AccessDeniedException"} ] + }, + "UpdateWorkspaceImagePermission":{ + "name":"UpdateWorkspaceImagePermission", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateWorkspaceImagePermissionRequest"}, + "output":{"shape":"UpdateWorkspaceImagePermissionResult"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceUnavailableException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValuesException"}, + {"shape":"OperationNotSupportedException"} + ] } }, "shapes":{ @@ -644,6 +674,10 @@ "members":{ } }, + "AwsAccount":{ + "type":"string", + "pattern":"^\\d{12}$" + }, "BooleanObject":{"type":"boolean"}, "BundleId":{ "type":"string", @@ -958,10 +992,28 @@ "NextToken":{"shape":"PaginationToken"} } }, + "DescribeWorkspaceImagePermissionsRequest":{ + "type":"structure", + "required":["ImageId"], + "members":{ + "ImageId":{"shape":"WorkspaceImageId"}, + "NextToken":{"shape":"PaginationToken"}, + "MaxResults":{"shape":"Limit"} + } + }, + "DescribeWorkspaceImagePermissionsResult":{ + "type":"structure", + "members":{ + "ImageId":{"shape":"WorkspaceImageId"}, + "ImagePermissions":{"shape":"ImagePermissions"}, + "NextToken":{"shape":"PaginationToken"} + } + }, "DescribeWorkspaceImagesRequest":{ "type":"structure", "members":{ "ImageIds":{"shape":"WorkspaceImageIdList"}, + "ImageType":{"shape":"ImageType"}, "NextToken":{"shape":"PaginationToken"}, "MaxResults":{"shape":"Limit"} } @@ -1103,6 +1155,23 @@ "ErrorMessage":{"shape":"Description"} } }, + "ImagePermission":{ + "type":"structure", + "members":{ + "SharedAccountId":{"shape":"AwsAccount"} + } + }, + "ImagePermissions":{ + "type":"list", + "member":{"shape":"ImagePermission"} + }, + "ImageType":{ + "type":"string", + "enum":[ + "OWNED", + "SHARED" + ] + }, "ImportWorkspaceImageRequest":{ "type":"structure", "required":[ @@ -1751,6 +1820,24 @@ "members":{ } }, + "UpdateWorkspaceImagePermissionRequest":{ + "type":"structure", + "required":[ + "ImageId", + "AllowCopyImage", + "SharedAccountId" + ], + "members":{ + "ImageId":{"shape":"WorkspaceImageId"}, + "AllowCopyImage":{"shape":"BooleanObject"}, + "SharedAccountId":{"shape":"AwsAccount"} + } + }, + "UpdateWorkspaceImagePermissionResult":{ + "type":"structure", + "members":{ + } + }, "UserName":{ "type":"string", "max":63, @@ -1892,7 +1979,9 @@ "State":{"shape":"WorkspaceImageState"}, "RequiredTenancy":{"shape":"WorkspaceImageRequiredTenancy"}, "ErrorCode":{"shape":"WorkspaceImageErrorCode"}, - "ErrorMessage":{"shape":"Description"} + "ErrorMessage":{"shape":"Description"}, + "Created":{"shape":"Timestamp"}, + "OwnerAccountId":{"shape":"AwsAccount"} } }, "WorkspaceImageDescription":{ diff --git a/models/apis/workspaces/2015-04-08/docs-2.json b/models/apis/workspaces/2015-04-08/docs-2.json index bfd3190dd96..73702719148 100644 --- a/models/apis/workspaces/2015-04-08/docs-2.json +++ b/models/apis/workspaces/2015-04-08/docs-2.json @@ -10,7 +10,7 @@ "CreateWorkspaces": "

Creates one or more WorkSpaces.

This operation is asynchronous and returns before the WorkSpaces are created.

", "DeleteIpGroup": "

Deletes the specified IP access control group.

You cannot delete an IP access control group that is associated with a directory.

", "DeleteTags": "

Deletes the specified tags from the specified WorkSpaces resource.

", - "DeleteWorkspaceImage": "

Deletes the specified image from your account. To delete an image, you must first delete any bundles that are associated with the image and un-share the image if it is shared with other accounts.

", + "DeleteWorkspaceImage": "

Deletes the specified image from your account. To delete an image, you must first delete any bundles that are associated with the image and unshare the image if it is shared with other accounts.

", "DeregisterWorkspaceDirectory": "

Deregisters the specified directory. This operation is asynchronous and returns before the WorkSpace directory is deregistered. If any WorkSpaces are registered to this directory, you must remove them before you can deregister the directory.

", "DescribeAccount": "

Retrieves a list that describes the configuration of Bring Your Own License (BYOL) for the specified account.

", "DescribeAccountModifications": "

Retrieves a list that describes modifications to the configuration of Bring Your Own License (BYOL) for the specified account.

", @@ -19,6 +19,7 @@ "DescribeTags": "

Describes the specified tags for the specified WorkSpaces resource.

", "DescribeWorkspaceBundles": "

Retrieves a list that describes the available WorkSpace bundles.

You can filter the results using either bundle ID or owner, but not both.

", "DescribeWorkspaceDirectories": "

Describes the available directories that are registered with Amazon WorkSpaces.

", + "DescribeWorkspaceImagePermissions": "

Describes the permissions that the owner of an image has granted to other AWS accounts for an image.

", "DescribeWorkspaceImages": "

Retrieves a list that describes one or more specified images, if the image identifiers are provided. Otherwise, all images in the account are described.

", "DescribeWorkspaceSnapshots": "

Describes the snapshots for the specified WorkSpace.

", "DescribeWorkspaces": "

Describes the specified WorkSpaces.

You can filter the results by using the bundle identifier, directory identifier, or owner, but you can specify only one filter at a time.

", @@ -32,17 +33,18 @@ "ModifySelfservicePermissions": "

Modifies the self-service WorkSpace management capabilities for your users. For more information, see Enable Self-Service WorkSpace Management Capabilities for Your Users.

", "ModifyWorkspaceAccessProperties": "

Specifies which devices and operating systems users can use to access their WorkSpaces. For more information, see Control Device Access.

", "ModifyWorkspaceCreationProperties": "

Modify the default properties used to create WorkSpaces.

", - "ModifyWorkspaceProperties": "

Modifies the specified WorkSpace properties.

", + "ModifyWorkspaceProperties": "

Modifies the specified WorkSpace properties. For important information about how to modify the size of the root and user volumes, see Modify a WorkSpace.

", "ModifyWorkspaceState": "

Sets the state of the specified WorkSpace.

To maintain a WorkSpace without being interrupted, set the WorkSpace state to ADMIN_MAINTENANCE. WorkSpaces in this state do not respond to requests to reboot, stop, start, rebuild, or restore. An AutoStop WorkSpace in this state is not stopped. Users cannot log into a WorkSpace in the ADMIN_MAINTENANCE state.

", "RebootWorkspaces": "

Reboots the specified WorkSpaces.

You cannot reboot a WorkSpace unless its state is AVAILABLE or UNHEALTHY.

This operation is asynchronous and returns before the WorkSpaces have rebooted.

", - "RebuildWorkspaces": "

Rebuilds the specified WorkSpace.

You cannot rebuild a WorkSpace unless its state is AVAILABLE, ERROR, UNHEALTHY, or STOPPED.

Rebuilding a WorkSpace is a potentially destructive action that can result in the loss of data. For more information, see Rebuild a WorkSpace.

This operation is asynchronous and returns before the WorkSpaces have been completely rebuilt.

", + "RebuildWorkspaces": "

Rebuilds the specified WorkSpace.

You cannot rebuild a WorkSpace unless its state is AVAILABLE, ERROR, UNHEALTHY, STOPPED, or REBOOTING.

Rebuilding a WorkSpace is a potentially destructive action that can result in the loss of data. For more information, see Rebuild a WorkSpace.

This operation is asynchronous and returns before the WorkSpaces have been completely rebuilt.

", "RegisterWorkspaceDirectory": "

Registers the specified directory. This operation is asynchronous and returns before the WorkSpace directory is registered. If this is the first time you are registering a directory, you will need to create the workspaces_DefaultRole role before you can register a directory. For more information, see Creating the workspaces_DefaultRole Role.

", "RestoreWorkspace": "

Restores the specified WorkSpace to its last known healthy state.

You cannot restore a WorkSpace unless its state is AVAILABLE, ERROR, UNHEALTHY, or STOPPED.

Restoring a WorkSpace is a potentially destructive action that can result in the loss of data. For more information, see Restore a WorkSpace.

This operation is asynchronous and returns before the WorkSpace is completely restored.

", "RevokeIpRules": "

Removes one or more rules from the specified IP access control group.

", "StartWorkspaces": "

Starts the specified WorkSpaces.

You cannot start a WorkSpace unless it has a running mode of AutoStop and a state of STOPPED.

", "StopWorkspaces": "

Stops the specified WorkSpaces.

You cannot stop a WorkSpace unless it has a running mode of AutoStop and a state of AVAILABLE, IMPAIRED, UNHEALTHY, or ERROR.

", "TerminateWorkspaces": "

Terminates the specified WorkSpaces.

Terminating a WorkSpace is a permanent action and cannot be undone. The user's data is destroyed. If you need to archive any user data, contact Amazon Web Services before terminating the WorkSpace.

You can terminate a WorkSpace that is in any state except SUSPENDED.

This operation is asynchronous and returns before the WorkSpaces have been completely terminated.

", - "UpdateRulesOfIpGroup": "

Replaces the current rules of the specified IP access control group with the specified rules.

" + "UpdateRulesOfIpGroup": "

Replaces the current rules of the specified IP access control group with the specified rules.

", + "UpdateWorkspaceImagePermission": "

Shares or unshares an image with one account by specifying whether that account has permission to copy the image. If the copy image permission is granted, the image is shared with that account. If the copy image permission is revoked, the image is unshared with the account.

" }, "shapes": { "ARN": { @@ -106,6 +108,14 @@ "refs": { } }, + "AwsAccount": { + "base": null, + "refs": { + "ImagePermission$SharedAccountId": "

The identifier of the AWS account that an image has been shared with.

", + "UpdateWorkspaceImagePermissionRequest$SharedAccountId": "

The identifier of the AWS account to share or unshare the image with.

", + "WorkspaceImage$OwnerAccountId": "

The identifier of the AWS account that owns the image.

" + } + }, "BooleanObject": { "base": null, "refs": { @@ -115,6 +125,7 @@ "DefaultWorkspaceCreationProperties$EnableMaintenanceMode": "

Specifies whether maintenance mode is enabled for WorkSpaces. For more information, see WorkSpace Maintenance.

", "RegisterWorkspaceDirectoryRequest$EnableWorkDocs": "

Indicates whether Amazon WorkDocs is enabled or disabled. If you have enabled this parameter and WorkDocs is not available in the Region, you will receive an OperationNotSupportedException error. Set EnableWorkDocs to disabled, and try again.

", "RegisterWorkspaceDirectoryRequest$EnableSelfService": "

Indicates whether self-service capabilities are enabled or disabled.

", + "UpdateWorkspaceImagePermissionRequest$AllowCopyImage": "

The permission to copy the image. This permission can be revoked only after an image has been shared.

", "Workspace$UserVolumeEncryptionEnabled": "

Indicates whether the data stored on the user volume is encrypted.

", "Workspace$RootVolumeEncryptionEnabled": "

Indicates whether the data stored on the root volume is encrypted.

", "WorkspaceCreationProperties$EnableInternetAccess": "

Indicates whether internet access is enabled for your WorkSpaces.

", @@ -395,6 +406,16 @@ "refs": { } }, + "DescribeWorkspaceImagePermissionsRequest": { + "base": null, + "refs": { + } + }, + "DescribeWorkspaceImagePermissionsResult": { + "base": null, + "refs": { + } + }, "DescribeWorkspaceImagesRequest": { "base": null, "refs": { @@ -581,6 +602,24 @@ "FailedTerminateWorkspaceRequests$member": null } }, + "ImagePermission": { + "base": "

Describes the AWS accounts that have been granted permission to use a shared image.

", + "refs": { + "ImagePermissions$member": null + } + }, + "ImagePermissions": { + "base": null, + "refs": { + "DescribeWorkspaceImagePermissionsResult$ImagePermissions": "

The identifiers of the AWS accounts that the image has been shared with.

" + } + }, + "ImageType": { + "base": null, + "refs": { + "DescribeWorkspaceImagesRequest$ImageType": "

The type (owned or shared) of the image.

" + } + }, "ImportWorkspaceImageRequest": { "base": null, "refs": { @@ -682,6 +721,7 @@ "refs": { "DescribeIpGroupsRequest$MaxResults": "

The maximum number of items to return.

", "DescribeWorkspaceDirectoriesRequest$Limit": "

The maximum number of directories to return.

", + "DescribeWorkspaceImagePermissionsRequest$MaxResults": "

The maximum number of items to return.

", "DescribeWorkspaceImagesRequest$MaxResults": "

The maximum number of items to return.

", "DescribeWorkspacesRequest$Limit": "

The maximum number of items to return.

" } @@ -862,6 +902,8 @@ "DescribeWorkspaceBundlesResult$NextToken": "

The token to use to retrieve the next set of results, or null if there are no more results available. This token is valid for one day and must be used within that time frame.

", "DescribeWorkspaceDirectoriesRequest$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", "DescribeWorkspaceDirectoriesResult$NextToken": "

The token to use to retrieve the next set of results, or null if no more results are available.

", + "DescribeWorkspaceImagePermissionsRequest$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", + "DescribeWorkspaceImagePermissionsResult$NextToken": "

The token to use to retrieve the next set of results, or null if no more results are available.

", "DescribeWorkspaceImagesRequest$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", "DescribeWorkspaceImagesResult$NextToken": "

The token to use to retrieve the next set of results, or null if no more results are available.

", "DescribeWorkspacesConnectionStatusRequest$NextToken": "

If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

", @@ -1014,7 +1056,7 @@ "RootVolumeSizeGib": { "base": null, "refs": { - "WorkspaceProperties$RootVolumeSizeGib": "

The size of the root volume.

" + "WorkspaceProperties$RootVolumeSizeGib": "

The size of the root volume. For important information about how to modify the size of the root and user volumes, see Modify a WorkSpace.

" } }, "RunningMode": { @@ -1032,7 +1074,7 @@ "SecurityGroupId": { "base": null, "refs": { - "DefaultWorkspaceCreationProperties$CustomSecurityGroupId": "

The identifier of any security groups to apply to WorkSpaces when they are created.

", + "DefaultWorkspaceCreationProperties$CustomSecurityGroupId": "

The identifier of the default security group to apply to WorkSpaces when they are created. For more information, see Security Groups for Your WorkSpaces.

", "WorkspaceCreationProperties$CustomSecurityGroupId": "

The identifier of your custom security group.

", "WorkspaceDirectory$WorkspaceSecurityGroupId": "

The identifier of the security group that is assigned to new WorkSpaces.

" } @@ -1193,7 +1235,8 @@ "Snapshot$SnapshotTime": "

The time when the snapshot was created.

", "WorkspaceBundle$LastUpdatedTime": "

The last time that the bundle was updated.

", "WorkspaceConnectionStatus$ConnectionStateCheckTimestamp": "

The timestamp of the connection status check.

", - "WorkspaceConnectionStatus$LastKnownUserConnectionTimestamp": "

The timestamp of the last known user connection.

" + "WorkspaceConnectionStatus$LastKnownUserConnectionTimestamp": "

The timestamp of the last known user connection.

", + "WorkspaceImage$Created": "

The date when the image was created. If the image has been shared, the AWS account that the image has been shared with sees the original creation date of the image.

" } }, "UnsupportedNetworkConfigurationException": { @@ -1216,6 +1259,16 @@ "refs": { } }, + "UpdateWorkspaceImagePermissionRequest": { + "base": null, + "refs": { + } + }, + "UpdateWorkspaceImagePermissionResult": { + "base": null, + "refs": { + } + }, "UserName": { "base": null, "refs": { @@ -1234,7 +1287,7 @@ "UserVolumeSizeGib": { "base": null, "refs": { - "WorkspaceProperties$UserVolumeSizeGib": "

The size of the user storage.

" + "WorkspaceProperties$UserVolumeSizeGib": "

The size of the user storage. For important information about how to modify the size of the root and user volumes, see Modify a WorkSpace.

" } }, "VolumeEncryptionKey": { @@ -1360,7 +1413,10 @@ "CopyWorkspaceImageRequest$SourceImageId": "

The identifier of the source image.

", "CopyWorkspaceImageResult$ImageId": "

The identifier of the image.

", "DeleteWorkspaceImageRequest$ImageId": "

The identifier of the image.

", + "DescribeWorkspaceImagePermissionsRequest$ImageId": "

The identifier of the image.

", + "DescribeWorkspaceImagePermissionsResult$ImageId": "

The identifier of the image.

", "ImportWorkspaceImageResult$ImageId": "

The identifier of the WorkSpace image.

", + "UpdateWorkspaceImagePermissionRequest$ImageId": "

The identifier of the image.

", "WorkspaceBundle$ImageId": "

The image identifier of the bundle.

", "WorkspaceImage$ImageId": "

The identifier of the image.

", "WorkspaceImageIdList$member": null diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index c38adcf899d..524e8d62c22 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -8514,6 +8514,14 @@ "us-iso-east-1" : { } } }, + "transcribe" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "us-iso-east-1" : { } + } + }, "transcribestreaming" : { "endpoints" : { "us-iso-east-1" : { } diff --git a/service/configservice/api.go b/service/configservice/api.go index f767f1baf2d..1d642bb8207 100644 --- a/service/configservice/api.go +++ b/service/configservice/api.go @@ -915,8 +915,12 @@ func (c *ConfigService) DeleteOrganizationConfigRuleRequest(input *DeleteOrganiz // DeleteOrganizationConfigRule API operation for AWS Config. // // Deletes the specified organization config rule and all of its evaluation -// results from all member accounts in that organization. Only a master account -// can delete an organization config rule. +// results from all member accounts in that organization. +// +// Only a master account and a delegated administrator account can delete an +// organization config rule. When calling this API with a delegated administrator, +// you must ensure AWS Organizations ListDelegatedAdministrator permissions +// are added. // // AWS Config sets the state of a rule to DELETE_IN_PROGRESS until the deletion // is complete. You cannot update a rule while it is in this state. @@ -1036,7 +1040,11 @@ func (c *ConfigService) DeleteOrganizationConformancePackRequest(input *DeleteOr // // Deletes the specified organization conformance pack and all of the config // rules and remediation actions from all member accounts in that organization. -// Only a master account can delete an organization conformance pack. +// +// Only a master account or a delegated administrator account can delete an +// organization conformance pack. When calling this API with a delegated administrator, +// you must ensure AWS Organizations ListDelegatedAdministrator permissions +// are added. // // AWS Config sets the state of a conformance pack to DELETE_IN_PROGRESS until // the deletion is complete. You cannot update a conformance pack while it is @@ -1343,6 +1351,10 @@ func (c *ConfigService) DeleteRemediationExceptionsRequest(input *DeleteRemediat // // Deletes one or more remediation exceptions mentioned in the resource keys. // +// AWS Config generates a remediation exception when a problem occurs executing +// a remediation action to a specific resource. Remediation exceptions blocks +// auto-remediation until the exception is cleared. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -2727,6 +2739,10 @@ func (c *ConfigService) DescribeConformancePackStatusRequest(input *DescribeConf // The specified next token is invalid. Specify the nextToken string that was // returned in the previous response to get the next page of results. // +// * InvalidParameterValueException +// One or more of the specified parameters are invalid. Verify that your parameters +// are valid and try again. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DescribeConformancePackStatus func (c *ConfigService) DescribeConformancePackStatus(input *DescribeConformancePackStatusInput) (*DescribeConformancePackStatusOutput, error) { req, out := c.DescribeConformancePackStatusRequest(input) @@ -2813,6 +2829,10 @@ func (c *ConfigService) DescribeConformancePacksRequest(input *DescribeConforman // The specified next token is invalid. Specify the nextToken string that was // returned in the previous response to get the next page of results. // +// * InvalidParameterValueException +// One or more of the specified parameters are invalid. Verify that your parameters +// are valid and try again. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/DescribeConformancePacks func (c *ConfigService) DescribeConformancePacks(input *DescribeConformancePacksInput) (*DescribeConformancePacksOutput, error) { req, out := c.DescribeConformancePacksRequest(input) @@ -3047,6 +3067,10 @@ func (c *ConfigService) DescribeOrganizationConfigRuleStatusesRequest(input *Des // // Provides organization config rule deployment status for an organization. // +// Only a master account and a delegated administrator account can call this +// API. When calling this API with a delegated administrator, you must ensure +// AWS Organizations ListDelegatedAdministrator permissions are added. +// // The status is not considered successful until organization config rule is // successfully deployed in all the member accounts with an exception of excluded // accounts. @@ -3056,8 +3080,6 @@ func (c *ConfigService) DescribeOrganizationConfigRuleStatusesRequest(input *Des // rule names. It is only applicable, when you request all the organization // config rules. // -// Only a master account can call this API. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -3152,13 +3174,15 @@ func (c *ConfigService) DescribeOrganizationConfigRulesRequest(input *DescribeOr // // Returns a list of organization config rules. // +// Only a master account and a delegated administrator account can call this +// API. When calling this API with a delegated administrator, you must ensure +// AWS Organizations ListDelegatedAdministrator permissions are added. +// // When you specify the limit and the next token, you receive a paginated response. // Limit and next token are not applicable if you specify organization config // rule names. It is only applicable, when you request all the organization // config rules. // -// Only a master account can call this API. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -3253,6 +3277,10 @@ func (c *ConfigService) DescribeOrganizationConformancePackStatusesRequest(input // // Provides organization conformance pack deployment status for an organization. // +// Only a master account and a delegated administrator account can call this +// API. When calling this API with a delegated administrator, you must ensure +// AWS Organizations ListDelegatedAdministrator permissions are added. +// // The status is not considered successful until organization conformance pack // is successfully deployed in all the member accounts with an exception of // excluded accounts. @@ -3262,8 +3290,6 @@ func (c *ConfigService) DescribeOrganizationConformancePackStatusesRequest(input // pack names. They are only applicable, when you request all the organization // conformance packs. // -// Only a master account can call this API. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -3362,14 +3388,16 @@ func (c *ConfigService) DescribeOrganizationConformancePacksRequest(input *Descr // // Returns a list of organization conformance packs. // +// Only a master account and a delegated administrator account can call this +// API. When calling this API with a delegated administrator, you must ensure +// AWS Organizations ListDelegatedAdministrator permissions are added. +// // When you specify the limit and the next token, you receive a paginated response. // // Limit and next token are not applicable if you specify organization conformance // packs names. They are only applicable, when you request all the organization // conformance packs. // -// Only a master account can call this API. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -3638,6 +3666,10 @@ func (c *ConfigService) DescribeRemediationExceptionsRequest(input *DescribeReme // of an exception and the time when the exception will be deleted. When you // specify the limit and the next token, you receive a paginated response. // +// AWS Config generates a remediation exception when a problem occurs executing +// a remediation action to a specific resource. Remediation exceptions blocks +// auto-remediation until the exception is cleared. +// // When you specify the limit and the next token, you receive a paginated response. // // Limit and next token are not applicable if you request resources in batch. @@ -5019,7 +5051,9 @@ func (c *ConfigService) GetOrganizationConfigRuleDetailedStatusRequest(input *Ge // Returns detailed status for each member account within an organization for // a given organization config rule. // -// Only a master account can call this API. +// Only a master account and a delegated administrator account can call this +// API. When calling this API with a delegated administrator, you must ensure +// AWS Organizations ListDelegatedAdministrator permissions are added. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -5116,7 +5150,9 @@ func (c *ConfigService) GetOrganizationConformancePackDetailedStatusRequest(inpu // Returns detailed status for each member account within an organization for // a given organization conformance pack. // -// Only a master account can call this API. +// Only a master account and a delegated administrator account can call this +// API. When calling this API with a delegated administrator, you must ensure +// AWS Organizations ListDelegatedAdministrator permissions are added. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6143,8 +6179,7 @@ func (c *ConfigService) PutConformancePackRequest(input *PutConformancePackInput // // This API creates a service linked role AWSServiceRoleForConfigConforms in // your account. The service linked role is created only when the role does -// not exist in your account. AWS Config verifies the existence of role with -// GetRole action. +// not exist in your account. // // You must specify either the TemplateS3Uri or the TemplateBody parameter, // but not both. If you provide both AWS Config uses the TemplateS3Uri parameter @@ -6481,25 +6516,36 @@ func (c *ConfigService) PutOrganizationConfigRuleRequest(input *PutOrganizationC // PutOrganizationConfigRule API operation for AWS Config. // // Adds or updates organization config rule for your entire organization evaluating -// whether your AWS resources comply with your desired configurations. Only -// a master account can create or update an organization config rule. +// whether your AWS resources comply with your desired configurations. +// +// Only a master account and a delegated administrator can create or update +// an organization config rule. When calling this API with a delegated administrator, +// you must ensure AWS Organizations ListDelegatedAdministrator permissions +// are added. // // This API enables organization service access through the EnableAWSServiceAccess // action and creates a service linked role AWSServiceRoleForConfigMultiAccountSetup -// in the master account of your organization. The service linked role is created -// only when the role does not exist in the master account. AWS Config verifies -// the existence of role with GetRole action. +// in the master or delegated administrator account of your organization. The +// service linked role is created only when the role does not exist in the caller +// account. AWS Config verifies the existence of role with GetRole action. +// +// To use this API with delegated administrator, register a delegated administrator +// by calling AWS Organization register-delegated-administrator for config-multiaccountsetup.amazonaws.com. // // You can use this action to create both custom AWS Config rules and AWS managed // Config rules. If you are adding a new custom AWS Config rule, you must first -// create AWS Lambda function in the master account that the rule invokes to -// evaluate your resources. When you use the PutOrganizationConfigRule action -// to add the rule to AWS Config, you must specify the Amazon Resource Name -// (ARN) that AWS Lambda assigns to the function. If you are adding an AWS managed -// Config rule, specify the rule's identifier for the RuleIdentifier key. +// create AWS Lambda function in the master account or a delegated administrator +// that the rule invokes to evaluate your resources. When you use the PutOrganizationConfigRule +// action to add the rule to AWS Config, you must specify the Amazon Resource +// Name (ARN) that AWS Lambda assigns to the function. If you are adding an +// AWS managed Config rule, specify the rule's identifier for the RuleIdentifier +// key. // // The maximum number of organization config rules that AWS Config supports -// is 150. +// is 150 and 3 delegated administrator per organization. +// +// Prerequisite: Ensure you call EnableAllFeatures API to enable all features +// in an organization. // // Specify either OrganizationCustomRuleMetadata or OrganizationManagedRuleMetadata. // @@ -6649,21 +6695,31 @@ func (c *ConfigService) PutOrganizationConformancePackRequest(input *PutOrganiza // // Deploys conformance packs across member accounts in an AWS Organization. // +// Only a master account and a delegated administrator can call this API. When +// calling this API with a delegated administrator, you must ensure AWS Organizations +// ListDelegatedAdministrator permissions are added. +// // This API enables organization service access for config-multiaccountsetup.amazonaws.com // through the EnableAWSServiceAccess action and creates a service linked role -// AWSServiceRoleForConfigMultiAccountSetup in the master account of your organization. -// The service linked role is created only when the role does not exist in the -// master account. AWS Config verifies the existence of role with GetRole action. +// AWSServiceRoleForConfigMultiAccountSetup in the master or delegated administrator +// account of your organization. The service linked role is created only when +// the role does not exist in the caller account. To use this API with delegated +// administrator, register a delegated administrator by calling AWS Organization +// register-delegate-admin for config-multiaccountsetup.amazonaws.com. +// +// Prerequisite: Ensure you call EnableAllFeatures API to enable all features +// in an organization. // // You must specify either the TemplateS3Uri or the TemplateBody parameter, // but not both. If you provide both AWS Config uses the TemplateS3Uri parameter // and ignores the TemplateBody parameter. // // AWS Config sets the state of a conformance pack to CREATE_IN_PROGRESS and -// UPDATE_IN_PROGRESS until the confomance pack is created or updated. You cannot -// update a conformance pack while it is in this state. +// UPDATE_IN_PROGRESS until the conformance pack is created or updated. You +// cannot update a conformance pack while it is in this state. // -// You can create 6 conformance packs with 25 AWS Config rules in each pack. +// You can create 6 conformance packs with 25 AWS Config rules in each pack +// and 3 delegated administrator per organization. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6815,6 +6871,9 @@ func (c *ConfigService) PutRemediationConfigurationsRequest(input *PutRemediatio // you to add a remediation configuration. The target (SSM document) must exist // and have permissions to use the target. // +// If you make backward incompatible changes to the SSM document, you must call +// this again to ensure the remediations can run. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -6914,6 +6973,10 @@ func (c *ConfigService) PutRemediationExceptionsRequest(input *PutRemediationExc // for auto-remediation. This API adds a new exception or updates an exisiting // exception for a specific resource with a specific AWS Config rule. // +// AWS Config generates a remediation exception when a problem occurs executing +// a remediation action to a specific resource. Remediation exceptions blocks +// auto-remediation until the exception is cleared. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -6926,6 +6989,23 @@ func (c *ConfigService) PutRemediationExceptionsRequest(input *PutRemediationExc // One or more of the specified parameters are invalid. Verify that your parameters // are valid and try again. // +// * InsufficientPermissionsException +// Indicates one of the following errors: +// +// * For PutConfigRule, the rule cannot be created because the IAM role assigned +// to AWS Config lacks permissions to perform the config:Put* action. +// +// * For PutConfigRule, the AWS Lambda function cannot be invoked. Check +// the function ARN, and check the function's permissions. +// +// * For PutOrganizationConfigRule, organization config rule cannot be created +// because you do not have permissions to call IAM GetRole action or create +// a service linked role. +// +// * For PutConformancePack and PutOrganizationConformancePack, a conformance +// pack cannot be created because you do not have permissions: To call IAM +// GetRole action or create a service linked role. To read Amazon S3 bucket. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/PutRemediationExceptions func (c *ConfigService) PutRemediationExceptions(input *PutRemediationExceptionsInput) (*PutRemediationExceptionsOutput, error) { req, out := c.PutRemediationExceptionsRequest(input) @@ -7006,6 +7086,9 @@ func (c *ConfigService) PutResourceConfigRequest(input *PutResourceConfigInput) // resource provided in the request. This API does not change or remediate the // configuration of the resource. // +// Write-only schema properites are not recorded as part of the published configuration +// item. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -8489,7 +8572,23 @@ type BaseConfigurationItem struct { // The time when the configuration recording was initiated. ConfigurationItemCaptureTime *time.Time `locationName:"configurationItemCaptureTime" type:"timestamp"` - // The configuration item status. + // The configuration item status. The valid values are: + // + // * OK – The resource configuration has been updated + // + // * ResourceDiscovered – The resource was newly discovered + // + // * ResourceNotRecorded – The resource was discovered but its configuration + // was not recorded since the recorder excludes the recording of resources + // of this type + // + // * ResourceDeleted – The resource was deleted + // + // * ResourceDeletedNotRecorded – The resource was deleted but its configuration + // was not recorded since the recorder excludes the recording of resources + // of this type + // + // The CIs do not incur any cost. ConfigurationItemStatus *string `locationName:"configurationItemStatus" type:"string" enum:"ConfigurationItemStatus"` // An identifier that indicates the ordering of the configuration items of a @@ -9190,6 +9289,8 @@ type ConfigRule struct { // to constrain the resources that can trigger an evaluation for the rule. If // you do not specify a scope, evaluations are triggered when any resource in // the recording group changes. + // + // The scope can be empty. Scope *Scope `type:"structure"` // Provides the rule owner (AWS or customer), the rule identifier, and the notifications @@ -9455,6 +9556,7 @@ type ConfigRuleEvaluationStatus struct { // against the rule. FirstEvaluationStarted *bool `type:"boolean"` + // The time that you last turned off the AWS Config rule. LastDeactivatedTime *time.Time `type:"timestamp"` // The error code that AWS Config returned when the rule last failed. @@ -9691,6 +9793,9 @@ type ConfigurationAggregator struct { // The name of the aggregator. ConfigurationAggregatorName *string `min:"1" type:"string"` + // AWS service that created the configuration aggregator. + CreatedBy *string `min:"1" type:"string"` + // The time stamp when the configuration aggregator was created. CreationTime *time.Time `type:"timestamp"` @@ -9729,6 +9834,12 @@ func (s *ConfigurationAggregator) SetConfigurationAggregatorName(v string) *Conf return s } +// SetCreatedBy sets the CreatedBy field's value. +func (s *ConfigurationAggregator) SetCreatedBy(v string) *ConfigurationAggregator { + s.CreatedBy = &v + return s +} + // SetCreationTime sets the CreationTime field's value. func (s *ConfigurationAggregator) SetCreationTime(v time.Time) *ConfigurationAggregator { s.CreationTime = &v @@ -9775,7 +9886,23 @@ type ConfigurationItem struct { // that are associated with the same resource. ConfigurationItemMD5Hash *string `locationName:"configurationItemMD5Hash" type:"string"` - // The configuration item status. + // The configuration item status. The valid values are: + // + // * OK – The resource configuration has been updated + // + // * ResourceDiscovered – The resource was newly discovered + // + // * ResourceNotRecorded – The resource was discovered but its configuration + // was not recorded since the recorder excludes the recording of resources + // of this type + // + // * ResourceDeleted – The resource was deleted + // + // * ResourceDeletedNotRecorded – The resource was deleted but its configuration + // was not recorded since the recorder excludes the recording of resources + // of this type + // + // The CIs do not incur any cost. ConfigurationItemStatus *string `locationName:"configurationItemStatus" type:"string" enum:"ConfigurationItemStatus"` // An identifier that indicates the ordering of the configuration items of a @@ -10397,8 +10524,8 @@ func (s *ConformancePackEvaluationResult) SetResultRecordedTime(v time.Time) *Co } // Input parameters in the form of key-value pairs for the conformance pack, -// both of which you define. Keys can have a maximum character length of 128 -// characters, and values can have a maximum length of 256 characters. +// both of which you define. Keys can have a maximum character length of 255 +// characters, and values can have a maximum length of 4096 characters. type ConformancePackInputParameter struct { _ struct{} `type:"structure"` @@ -21000,8 +21127,8 @@ type RemediationConfiguration struct { // select a number, the default is 5. // // For example, if you specify MaximumAutomaticAttempts as 5 with RetryAttemptsSeconds - // as 50 seconds, AWS Config throws an exception after the 5th failed attempt - // within 50 seconds. + // as 50 seconds, AWS Config will put a RemediationException on your behalf + // for the failing resource after the 5th failed attempt within 50 seconds. MaximumAutomaticAttempts *int64 `min:"1" type:"integer"` // An object of the RemediationParameterValue. @@ -21029,6 +21156,9 @@ type RemediationConfiguration struct { TargetType *string `type:"string" required:"true" enum:"RemediationTargetType"` // Version of the target. For example, version of the SSM document. + // + // If you make backward incompatible changes to the SSM document, you must call + // PutRemediationConfiguration API again to ensure the remediations can run. TargetVersion *string `type:"string"` } @@ -22152,6 +22282,8 @@ type SelectAggregateResourceConfigInput struct { // The maximum number of query results returned on each page. Limit *int64 `type:"integer"` + // The maximum number of query results returned on each page. AWS Config also + // allows the Limit request parameter. MaxResults *int64 `type:"integer"` // The nextToken string returned in a previous request that you use to request @@ -23867,6 +23999,15 @@ const ( // ResourceTypeAwsQldbLedger is a ResourceType enum value ResourceTypeAwsQldbLedger = "AWS::QLDB::Ledger" + + // ResourceTypeAwsSecretsManagerSecret is a ResourceType enum value + ResourceTypeAwsSecretsManagerSecret = "AWS::SecretsManager::Secret" + + // ResourceTypeAwsSnsTopic is a ResourceType enum value + ResourceTypeAwsSnsTopic = "AWS::SNS::Topic" + + // ResourceTypeAwsSsmFileData is a ResourceType enum value + ResourceTypeAwsSsmFileData = "AWS::SSM::FileData" ) const ( diff --git a/service/directconnect/api.go b/service/directconnect/api.go index a611388eb9e..e68e32007c6 100644 --- a/service/directconnect/api.go +++ b/service/directconnect/api.go @@ -1620,10 +1620,8 @@ func (c *DirectConnect) CreateDirectConnectGatewayAssociationProposalRequest(inp // Creates a proposal to associate the specified virtual private gateway or // transit gateway with the specified Direct Connect gateway. // -// You can only associate a Direct Connect gateway and virtual private gateway -// or transit gateway when the account that owns the Direct Connect gateway -// and the account that owns the virtual private gateway or transit gateway -// have the same AWS Payer ID. +// You can associate a Direct Connect gateway and virtual private gateway or +// transit gateway that is owned by any AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about diff --git a/service/fsx/api.go b/service/fsx/api.go index 1a0041431ed..5519d4c1790 100644 --- a/service/fsx/api.go +++ b/service/fsx/api.go @@ -3200,6 +3200,27 @@ func (s *CreateFileSystemInput) SetWindowsConfiguration(v *CreateFileSystemWindo type CreateFileSystemLustreConfiguration struct { _ struct{} `type:"structure"` + // Use this property to turn the Autoimport feature on and off. AutoImport enables + // your FSx for Lustre file system to automatically update its contents with + // changes that have been made to its linked Amazon S3 data repository. You + // can set the policy to have one the following values: + // + // * NONE - (Default) Autoimport is turned off. Changes to your S3 repository + // will not be reflected on the FSx file system. + // + // * NEW - Autoimport is turned on; only new files in the linked S3 repository + // will be imported to the FSx file system. Updates to existing files and + // deleted files will not be imported to the FSx file system. + // + // * NEW_CHANGED - Autoimport is turned on; new files and changes to existing + // files in the linked S3 repository will be imported to the FSx file system. + // Files deleted in S3 are not deleted in the FSx file system. + // + // * NEW_CHANGED_DELETED - Autoimport is turned on; new files, changes to + // existing files, and deleted files in the linked S3 repository will be + // imported to the FSx file system. + AutoImportPolicy *string `type:"string" enum:"AutoImportPolicyType"` + // The number of days to retain automatic backups. Setting this to 0 disables // automatic backups. You can retain automatic backups for a maximum of 35 days. // The default is 0. @@ -3327,6 +3348,12 @@ func (s *CreateFileSystemLustreConfiguration) Validate() error { return nil } +// SetAutoImportPolicy sets the AutoImportPolicy field's value. +func (s *CreateFileSystemLustreConfiguration) SetAutoImportPolicy(v string) *CreateFileSystemLustreConfiguration { + s.AutoImportPolicy = &v + return s +} + // SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. func (s *CreateFileSystemLustreConfiguration) SetAutomaticBackupRetentionDays(v int64) *CreateFileSystemLustreConfiguration { s.AutomaticBackupRetentionDays = &v @@ -3576,10 +3603,35 @@ func (s *CreateFileSystemWindowsConfiguration) SetWeeklyMaintenanceStartTime(v s type DataRepositoryConfiguration struct { _ struct{} `type:"structure"` + // Describes the data repository's AutoImportPolicy. AutoImport enables your + // FSx for Lustre file system to automatically update its contents with changes + // that have been made to its linked Amazon S3 data repository. The policy can + // have the following values: + // + // * NONE - (Default) Autoimport is turned off, Changes to your S3 repository + // will not be reflected on the FSx file system. + // + // * NEW - Autoimport is turned on; only new files in the linked S3 repository + // will be imported to the FSx file system. Updates to existing files and + // deleted files will not be imported to the FSx file system. + // + // * NEW_CHANGED - Autoimport is turned on; new files and changes to existing + // files in the linked S3 repository will be imported to the FSx file system. + // Files deleted in S3 are not deleted in the FSx file system. + // + // * NEW_CHANGED_DELETED - Autoimport is turned on; new files, changes to + // existing files, and deleted files in the linked S3 repository will be + // imported to the FSx file system. + AutoImportPolicy *string `type:"string" enum:"AutoImportPolicyType"` + // The export path to the Amazon S3 bucket (and prefix) that you are using to // store new and changed Lustre file system files in S3. ExportPath *string `min:"3" type:"string"` + // Provides detailed information about the data respository if its Lifecycle + // is set to MISCONFIGURED. + FailureDetails *DataRepositoryFailureDetails `type:"structure"` + // The import path to the Amazon S3 bucket (and optional prefix) that you're // using as the data repository for your FSx for Lustre file system, for example // s3://import-bucket/optional-prefix. If a prefix is specified after the Amazon @@ -3595,6 +3647,19 @@ type DataRepositoryConfiguration struct { // The default chunk size is 1,024 MiB (1 GiB) and can go as high as 512,000 // MiB (500 GiB). Amazon S3 objects have a maximum size of 5 TB. ImportedFileChunkSize *int64 `min:"1" type:"integer"` + + // Describes the state of the file system's S3 durable data repository, if it + // is configured with an S3 repository. The lifecycle can have the following + // values: + // + // * CREATING - Amazon FSx is creating the new data repository. + // + // * AVAILABLE - The data repository is available for use. + // + // * MISCONFIGURED - The data repository is in a failed but recoverable state. + // + // * UPDATING - The data repository is undergoing a customer initiated update. + Lifecycle *string `type:"string" enum:"DataRepositoryLifecycle"` } // String returns the string representation @@ -3607,12 +3672,24 @@ func (s DataRepositoryConfiguration) GoString() string { return s.String() } +// SetAutoImportPolicy sets the AutoImportPolicy field's value. +func (s *DataRepositoryConfiguration) SetAutoImportPolicy(v string) *DataRepositoryConfiguration { + s.AutoImportPolicy = &v + return s +} + // SetExportPath sets the ExportPath field's value. func (s *DataRepositoryConfiguration) SetExportPath(v string) *DataRepositoryConfiguration { s.ExportPath = &v return s } +// SetFailureDetails sets the FailureDetails field's value. +func (s *DataRepositoryConfiguration) SetFailureDetails(v *DataRepositoryFailureDetails) *DataRepositoryConfiguration { + s.FailureDetails = v + return s +} + // SetImportPath sets the ImportPath field's value. func (s *DataRepositoryConfiguration) SetImportPath(v string) *DataRepositoryConfiguration { s.ImportPath = &v @@ -3625,6 +3702,37 @@ func (s *DataRepositoryConfiguration) SetImportedFileChunkSize(v int64) *DataRep return s } +// SetLifecycle sets the Lifecycle field's value. +func (s *DataRepositoryConfiguration) SetLifecycle(v string) *DataRepositoryConfiguration { + s.Lifecycle = &v + return s +} + +// Provides detailed information about the data respository if its Lifecycle +// is set to MISCONFIGURED. +type DataRepositoryFailureDetails struct { + _ struct{} `type:"structure"` + + // A detailed error message. + Message *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DataRepositoryFailureDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DataRepositoryFailureDetails) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *DataRepositoryFailureDetails) SetMessage(v string) *DataRepositoryFailureDetails { + s.Message = &v + return s +} + // A description of the data repository task. You use data repository tasks // to perform bulk transfer operations between your Amazon FSx file system and // its linked data repository. @@ -6365,13 +6473,17 @@ type Tag struct { // A value that specifies the TagKey, the name of the tag. Tag keys must be // unique for the resource to which they are attached. - Key *string `min:"1" type:"string"` + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` // A value that specifies the TagValue, the value assigned to the corresponding // tag key. Tag values can be null and don't have to be unique in a tag set. // For example, you can have a key-value pair in a tag set of finances : April // and also of payroll : April. - Value *string `type:"string"` + // + // Value is a required field + Value *string `type:"string" required:"true"` } // String returns the string representation @@ -6387,9 +6499,15 @@ func (s Tag) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } if invalidParams.Len() > 0 { return invalidParams @@ -6734,6 +6852,27 @@ func (s *UpdateFileSystemInput) SetWindowsConfiguration(v *UpdateFileSystemWindo type UpdateFileSystemLustreConfiguration struct { _ struct{} `type:"structure"` + // Use this property to turn the Autoimport feature on and off. AutoImport enables + // your FSx for Lustre file system to automatically update its contents with + // changes that have been made to its linked Amazon S3 data repository. You + // can set the policy to have one the following values: + // + // * NONE - (Default) Autoimport is turned off. Changes to your S3 repository + // will not be reflected on the FSx file system. + // + // * NEW - Autoimport is turned on; only new files in the linked S3 repository + // will be imported to the FSx file system. Updates to existing files and + // deleted files will not be imported to the FSx file system. + // + // * NEW_CHANGED - Autoimport is turned on; new files and changes to existing + // files in the linked S3 repository will be imported to the FSx file system. + // Files deleted in S3 are not deleted in the FSx file system. + // + // * NEW_CHANGED_DELETED - Autoimport is turned on; new files, changes to + // existing files, and deleted files in the linked S3 repository will be + // imported to the FSx file system. + AutoImportPolicy *string `type:"string" enum:"AutoImportPolicyType"` + // The number of days to retain automatic backups. Setting this to 0 disables // automatic backups. You can retain automatic backups for a maximum of 35 days. // The default is 0. @@ -6776,6 +6915,12 @@ func (s *UpdateFileSystemLustreConfiguration) Validate() error { return nil } +// SetAutoImportPolicy sets the AutoImportPolicy field's value. +func (s *UpdateFileSystemLustreConfiguration) SetAutoImportPolicy(v string) *UpdateFileSystemLustreConfiguration { + s.AutoImportPolicy = &v + return s +} + // SetAutomaticBackupRetentionDays sets the AutomaticBackupRetentionDays field's value. func (s *UpdateFileSystemLustreConfiguration) SetAutomaticBackupRetentionDays(v int64) *UpdateFileSystemLustreConfiguration { s.AutomaticBackupRetentionDays = &v @@ -7128,6 +7273,17 @@ const ( AdministrativeActionTypeStorageOptimization = "STORAGE_OPTIMIZATION" ) +const ( + // AutoImportPolicyTypeNone is a AutoImportPolicyType enum value + AutoImportPolicyTypeNone = "NONE" + + // AutoImportPolicyTypeNew is a AutoImportPolicyType enum value + AutoImportPolicyTypeNew = "NEW" + + // AutoImportPolicyTypeNewChanged is a AutoImportPolicyType enum value + AutoImportPolicyTypeNewChanged = "NEW_CHANGED" +) + // The lifecycle status of the backup. const ( // BackupLifecycleAvailable is a BackupLifecycle enum value @@ -7152,6 +7308,23 @@ const ( BackupTypeUserInitiated = "USER_INITIATED" ) +const ( + // DataRepositoryLifecycleCreating is a DataRepositoryLifecycle enum value + DataRepositoryLifecycleCreating = "CREATING" + + // DataRepositoryLifecycleAvailable is a DataRepositoryLifecycle enum value + DataRepositoryLifecycleAvailable = "AVAILABLE" + + // DataRepositoryLifecycleMisconfigured is a DataRepositoryLifecycle enum value + DataRepositoryLifecycleMisconfigured = "MISCONFIGURED" + + // DataRepositoryLifecycleUpdating is a DataRepositoryLifecycle enum value + DataRepositoryLifecycleUpdating = "UPDATING" + + // DataRepositoryLifecycleDeleting is a DataRepositoryLifecycle enum value + DataRepositoryLifecycleDeleting = "DELETING" +) + const ( // DataRepositoryTaskFilterNameFileSystemId is a DataRepositoryTaskFilterName enum value DataRepositoryTaskFilterNameFileSystemId = "file-system-id" diff --git a/service/glue/api.go b/service/glue/api.go index d355b4d6998..a2854bf7792 100644 --- a/service/glue/api.go +++ b/service/glue/api.go @@ -7273,6 +7273,11 @@ func (c *Glue) GetResourcePoliciesRequest(input *GetResourcePoliciesInput) (req // Retrieves the security configurations for the resource policies set on individual // resources, and also the account-level policy. // +// This operation also returns the Data Catalog resource policy. However, if +// you enabled metadata encryption in Data Catalog settings, and you do not +// have permission on the AWS KMS key, the operation can't return the Data Catalog +// resource policy. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -16241,6 +16246,16 @@ type Connection struct { // * KAFKA_BOOTSTRAP_SERVERS - A comma-separated list of host and port pairs // that are the addresses of the Apache Kafka brokers in a Kafka cluster // to which a Kafka client will connect to and bootstrap itself. + // + // * KAFKA_SSL_ENABLED - Whether to enable or disable SSL on an Apache Kafka + // connection. Default value is "true". + // + // * KAFKA_CUSTOM_CERT - The Amazon S3 URL for the private CA cert file (.pem + // format). The default is an empty string. + // + // * KAFKA_SKIP_CUSTOM_CERT_VALIDATION - Whether to skip the validation of + // the CA cert file or not. AWS Glue validates for three algorithms: SHA256withRSA, + // SHA384withRSA and SHA512withRSA. Default value is "false". ConnectionProperties map[string]*string `type:"map"` // The type of the connection. Currently, SFTP is not supported. @@ -31380,11 +31395,20 @@ func (s *SchemaColumn) SetName(v string) *SchemaColumn { type SearchTablesInput struct { _ struct{} `type:"structure"` - // A unique identifier, consisting of account_id/datalake. + // A unique identifier, consisting of account_id . CatalogId *string `min:"1" type:"string"` // A list of key-value pairs, and a comparator used to filter the search results. // Returns all entities matching the predicate. + // + // The Comparator member of the PropertyPredicate struct is used only for time + // fields, and can be omitted for other field types. Also, when comparing string + // values, such as when Key=Name, a fuzzy match algorithm is used. The Key field + // (for example, the value of the Name field) is split on certain punctuation + // characters, for example, -, :, #, etc. into tokens. Then each token is exact-match + // compared with the Value member of PropertyPredicate. For example, if Key=Name + // and Value=link, tables named customer-link and xx-link-yy are returned, but + // xxlinkyy is not returned. Filters []*PropertyPredicate `type:"list"` // The maximum number of tables to return in a single response. @@ -35900,10 +35924,13 @@ type UpdatePartitionInput struct { // The new partition object to update the partition to. // + // The Values property can't be changed. If you want to change the partition + // key values for a partition, delete and recreate the partition. + // // PartitionInput is a required field PartitionInput *PartitionInput `type:"structure" required:"true"` - // A list of the values defining the partition. + // List of partition key values that define the partition to update. // // PartitionValueList is a required field PartitionValueList []*string `type:"list" required:"true"` @@ -37187,6 +37214,15 @@ const ( // ConnectionPropertyKeyKafkaBootstrapServers is a ConnectionPropertyKey enum value ConnectionPropertyKeyKafkaBootstrapServers = "KAFKA_BOOTSTRAP_SERVERS" + + // ConnectionPropertyKeyKafkaSslEnabled is a ConnectionPropertyKey enum value + ConnectionPropertyKeyKafkaSslEnabled = "KAFKA_SSL_ENABLED" + + // ConnectionPropertyKeyKafkaCustomCert is a ConnectionPropertyKey enum value + ConnectionPropertyKeyKafkaCustomCert = "KAFKA_CUSTOM_CERT" + + // ConnectionPropertyKeyKafkaSkipCustomCertValidation is a ConnectionPropertyKey enum value + ConnectionPropertyKeyKafkaSkipCustomCertValidation = "KAFKA_SKIP_CUSTOM_CERT_VALIDATION" ) const ( diff --git a/service/lightsail/api.go b/service/lightsail/api.go index 6bdd725ef20..314d92ed41f 100644 --- a/service/lightsail/api.go +++ b/service/lightsail/api.go @@ -116,6 +116,118 @@ func (c *Lightsail) AllocateStaticIpWithContext(ctx aws.Context, input *Allocate return out, req.Send() } +const opAttachCertificateToDistribution = "AttachCertificateToDistribution" + +// AttachCertificateToDistributionRequest generates a "aws/request.Request" representing the +// client's request for the AttachCertificateToDistribution operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See AttachCertificateToDistribution for more information on using the AttachCertificateToDistribution +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the AttachCertificateToDistributionRequest method. +// req, resp := client.AttachCertificateToDistributionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/AttachCertificateToDistribution +func (c *Lightsail) AttachCertificateToDistributionRequest(input *AttachCertificateToDistributionInput) (req *request.Request, output *AttachCertificateToDistributionOutput) { + op := &request.Operation{ + Name: opAttachCertificateToDistribution, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &AttachCertificateToDistributionInput{} + } + + output = &AttachCertificateToDistributionOutput{} + req = c.newRequest(op, input, output) + return +} + +// AttachCertificateToDistribution API operation for Amazon Lightsail. +// +// 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 an origin in any AWS Region, and distribute its content globally. +// However, all distributions are located in the us-east-1 Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation AttachCertificateToDistribution for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/AttachCertificateToDistribution +func (c *Lightsail) AttachCertificateToDistribution(input *AttachCertificateToDistributionInput) (*AttachCertificateToDistributionOutput, error) { + req, out := c.AttachCertificateToDistributionRequest(input) + return out, req.Send() +} + +// AttachCertificateToDistributionWithContext is the same as AttachCertificateToDistribution with the addition of +// the ability to pass a context and additional request options. +// +// See AttachCertificateToDistribution for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) AttachCertificateToDistributionWithContext(ctx aws.Context, input *AttachCertificateToDistributionInput, opts ...request.Option) (*AttachCertificateToDistributionOutput, error) { + req, out := c.AttachCertificateToDistributionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opAttachDisk = "AttachDisk" // AttachDiskRequest generates a "aws/request.Request" representing the @@ -777,6 +889,112 @@ func (c *Lightsail) CopySnapshotWithContext(ctx aws.Context, input *CopySnapshot return out, req.Send() } +const opCreateCertificate = "CreateCertificate" + +// CreateCertificateRequest generates a "aws/request.Request" representing the +// client's request for the CreateCertificate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateCertificate for more information on using the CreateCertificate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateCertificateRequest method. +// req, resp := client.CreateCertificateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/CreateCertificate +func (c *Lightsail) CreateCertificateRequest(input *CreateCertificateInput) (req *request.Request, output *CreateCertificateOutput) { + op := &request.Operation{ + Name: opCreateCertificate, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateCertificateInput{} + } + + output = &CreateCertificateOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateCertificate API operation for Amazon Lightsail. +// +// 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 an origin in any AWS Region, and distribute its content globally. +// However, all distributions are located in the us-east-1 Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation CreateCertificate for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/CreateCertificate +func (c *Lightsail) CreateCertificate(input *CreateCertificateInput) (*CreateCertificateOutput, error) { + req, out := c.CreateCertificateRequest(input) + return out, req.Send() +} + +// CreateCertificateWithContext is the same as CreateCertificate with the addition of +// the ability to pass a context and additional request options. +// +// See CreateCertificate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) CreateCertificateWithContext(ctx aws.Context, input *CreateCertificateInput, opts ...request.Option) (*CreateCertificateOutput, error) { + req, out := c.CreateCertificateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateCloudFormationStack = "CreateCloudFormationStack" // CreateCloudFormationStackRequest generates a "aws/request.Request" representing the @@ -1343,6 +1561,111 @@ func (c *Lightsail) CreateDiskSnapshotWithContext(ctx aws.Context, input *Create return out, req.Send() } +const opCreateDistribution = "CreateDistribution" + +// CreateDistributionRequest generates a "aws/request.Request" representing the +// client's request for the CreateDistribution operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateDistribution for more information on using the CreateDistribution +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateDistributionRequest method. +// req, resp := client.CreateDistributionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/CreateDistribution +func (c *Lightsail) CreateDistributionRequest(input *CreateDistributionInput) (req *request.Request, output *CreateDistributionOutput) { + op := &request.Operation{ + Name: opCreateDistribution, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateDistributionInput{} + } + + output = &CreateDistributionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateDistribution API operation for Amazon Lightsail. +// +// 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 +// (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-content-delivery-networks). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation CreateDistribution for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/CreateDistribution +func (c *Lightsail) CreateDistribution(input *CreateDistributionInput) (*CreateDistributionOutput, error) { + req, out := c.CreateDistributionRequest(input) + return out, req.Send() +} + +// CreateDistributionWithContext is the same as CreateDistribution with the addition of +// the ability to pass a context and additional request options. +// +// See CreateDistribution for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) CreateDistributionWithContext(ctx aws.Context, input *CreateDistributionInput, opts ...request.Option) (*CreateDistributionOutput, error) { + req, out := c.CreateDistributionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateDomain = "CreateDomain" // CreateDomainRequest generates a "aws/request.Request" representing the @@ -2752,55 +3075,157 @@ func (c *Lightsail) DeleteAutoSnapshotWithContext(ctx aws.Context, input *Delete return out, req.Send() } -const opDeleteContactMethod = "DeleteContactMethod" +const opDeleteCertificate = "DeleteCertificate" -// DeleteContactMethodRequest generates a "aws/request.Request" representing the -// client's request for the DeleteContactMethod operation. The "output" return +// DeleteCertificateRequest generates a "aws/request.Request" representing the +// client's request for the DeleteCertificate operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See DeleteContactMethod for more information on using the DeleteContactMethod +// See DeleteCertificate for more information on using the DeleteCertificate // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the DeleteContactMethodRequest method. -// req, resp := client.DeleteContactMethodRequest(params) +// // Example sending a request using the DeleteCertificateRequest method. +// req, resp := client.DeleteCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/DeleteContactMethod -func (c *Lightsail) DeleteContactMethodRequest(input *DeleteContactMethodInput) (req *request.Request, output *DeleteContactMethodOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/DeleteCertificate +func (c *Lightsail) DeleteCertificateRequest(input *DeleteCertificateInput) (req *request.Request, output *DeleteCertificateOutput) { op := &request.Operation{ - Name: opDeleteContactMethod, + Name: opDeleteCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &DeleteContactMethodInput{} + input = &DeleteCertificateInput{} } - output = &DeleteContactMethodOutput{} + output = &DeleteCertificateOutput{} req = c.newRequest(op, input, output) return } -// DeleteContactMethod API operation for Amazon Lightsail. +// DeleteCertificate API operation for Amazon Lightsail. // -// Deletes a contact method. +// Deletes an SSL/TLS certificate for your Amazon Lightsail content delivery +// network (CDN) distribution. // -// A contact method is used to send you notifications about your Amazon Lightsail -// resources. You can add one email address and one mobile phone number contact -// method in each AWS Region. However, SMS text messaging is not supported in +// Certificates that are currently attached to a distribution cannot be deleted. +// Use the DetachCertificateFromDistribution action to detach a certificate +// from a distribution. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation DeleteCertificate for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/DeleteCertificate +func (c *Lightsail) DeleteCertificate(input *DeleteCertificateInput) (*DeleteCertificateOutput, error) { + req, out := c.DeleteCertificateRequest(input) + return out, req.Send() +} + +// DeleteCertificateWithContext is the same as DeleteCertificate with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteCertificate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) DeleteCertificateWithContext(ctx aws.Context, input *DeleteCertificateInput, opts ...request.Option) (*DeleteCertificateOutput, error) { + req, out := c.DeleteCertificateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteContactMethod = "DeleteContactMethod" + +// DeleteContactMethodRequest generates a "aws/request.Request" representing the +// client's request for the DeleteContactMethod operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteContactMethod for more information on using the DeleteContactMethod +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteContactMethodRequest method. +// req, resp := client.DeleteContactMethodRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/DeleteContactMethod +func (c *Lightsail) DeleteContactMethodRequest(input *DeleteContactMethodInput) (req *request.Request, output *DeleteContactMethodOutput) { + op := &request.Operation{ + Name: opDeleteContactMethod, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteContactMethodInput{} + } + + output = &DeleteContactMethodOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteContactMethod API operation for Amazon Lightsail. +// +// Deletes a contact method. +// +// A contact method is used to send you notifications about your Amazon Lightsail +// resources. You can add one email address and one mobile phone number contact +// method in each AWS Region. However, SMS text messaging is not supported in // some AWS Regions, and SMS text messages cannot be sent to some countries/regions. // For more information, see Notifications in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-notifications). // @@ -3084,6 +3509,106 @@ func (c *Lightsail) DeleteDiskSnapshotWithContext(ctx aws.Context, input *Delete return out, req.Send() } +const opDeleteDistribution = "DeleteDistribution" + +// DeleteDistributionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDistribution operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteDistribution for more information on using the DeleteDistribution +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteDistributionRequest method. +// req, resp := client.DeleteDistributionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/DeleteDistribution +func (c *Lightsail) DeleteDistributionRequest(input *DeleteDistributionInput) (req *request.Request, output *DeleteDistributionOutput) { + op := &request.Operation{ + Name: opDeleteDistribution, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteDistributionInput{} + } + + output = &DeleteDistributionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteDistribution API operation for Amazon Lightsail. +// +// Deletes your Amazon Lightsail content delivery network (CDN) distribution. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation DeleteDistribution for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/DeleteDistribution +func (c *Lightsail) DeleteDistribution(input *DeleteDistributionInput) (*DeleteDistributionOutput, error) { + req, out := c.DeleteDistributionRequest(input) + return out, req.Send() +} + +// DeleteDistributionWithContext is the same as DeleteDistribution with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDistribution for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) DeleteDistributionWithContext(ctx aws.Context, input *DeleteDistributionInput, opts ...request.Option) (*DeleteDistributionOutput, error) { + req, out := c.DeleteDistributionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteDomain = "DeleteDomain" // DeleteDomainRequest generates a "aws/request.Request" representing the @@ -4170,6 +4695,110 @@ func (c *Lightsail) DeleteRelationalDatabaseSnapshotWithContext(ctx aws.Context, return out, req.Send() } +const opDetachCertificateFromDistribution = "DetachCertificateFromDistribution" + +// DetachCertificateFromDistributionRequest generates a "aws/request.Request" representing the +// client's request for the DetachCertificateFromDistribution operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DetachCertificateFromDistribution for more information on using the DetachCertificateFromDistribution +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DetachCertificateFromDistributionRequest method. +// req, resp := client.DetachCertificateFromDistributionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/DetachCertificateFromDistribution +func (c *Lightsail) DetachCertificateFromDistributionRequest(input *DetachCertificateFromDistributionInput) (req *request.Request, output *DetachCertificateFromDistributionOutput) { + op := &request.Operation{ + Name: opDetachCertificateFromDistribution, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DetachCertificateFromDistributionInput{} + } + + output = &DetachCertificateFromDistributionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DetachCertificateFromDistribution API operation for Amazon Lightsail. +// +// 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. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation DetachCertificateFromDistribution for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/DetachCertificateFromDistribution +func (c *Lightsail) DetachCertificateFromDistribution(input *DetachCertificateFromDistributionInput) (*DetachCertificateFromDistributionOutput, error) { + req, out := c.DetachCertificateFromDistributionRequest(input) + return out, req.Send() +} + +// DetachCertificateFromDistributionWithContext is the same as DetachCertificateFromDistribution with the addition of +// the ability to pass a context and additional request options. +// +// See DetachCertificateFromDistribution for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) DetachCertificateFromDistributionWithContext(ctx aws.Context, input *DetachCertificateFromDistributionInput, opts ...request.Option) (*DetachCertificateFromDistributionOutput, error) { + req, out := c.DetachCertificateFromDistributionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDetachDisk = "DetachDisk" // DetachDiskRequest generates a "aws/request.Request" representing the @@ -5450,17 +6079,118 @@ func (c *Lightsail) GetBundlesWithContext(ctx aws.Context, input *GetBundlesInpu return out, req.Send() } -const opGetCloudFormationStackRecords = "GetCloudFormationStackRecords" +const opGetCertificates = "GetCertificates" -// GetCloudFormationStackRecordsRequest generates a "aws/request.Request" representing the -// client's request for the GetCloudFormationStackRecords operation. The "output" return +// GetCertificatesRequest generates a "aws/request.Request" representing the +// client's request for the GetCertificates operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetCloudFormationStackRecords for more information on using the GetCloudFormationStackRecords +// See GetCertificates for more information on using the GetCertificates +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetCertificatesRequest method. +// req, resp := client.GetCertificatesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetCertificates +func (c *Lightsail) GetCertificatesRequest(input *GetCertificatesInput) (req *request.Request, output *GetCertificatesOutput) { + op := &request.Operation{ + Name: opGetCertificates, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetCertificatesInput{} + } + + output = &GetCertificatesOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetCertificates API operation for Amazon Lightsail. +// +// 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), certificate name, domain name, and tags. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation GetCertificates for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetCertificates +func (c *Lightsail) GetCertificates(input *GetCertificatesInput) (*GetCertificatesOutput, error) { + req, out := c.GetCertificatesRequest(input) + return out, req.Send() +} + +// GetCertificatesWithContext is the same as GetCertificates with the addition of +// the ability to pass a context and additional request options. +// +// See GetCertificates for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) GetCertificatesWithContext(ctx aws.Context, input *GetCertificatesInput, opts ...request.Option) (*GetCertificatesOutput, error) { + req, out := c.GetCertificatesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetCloudFormationStackRecords = "GetCloudFormationStackRecords" + +// GetCloudFormationStackRecordsRequest generates a "aws/request.Request" representing the +// client's request for the GetCloudFormationStackRecords operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetCloudFormationStackRecords for more information on using the GetCloudFormationStackRecords // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration @@ -6083,58 +6813,62 @@ func (c *Lightsail) GetDisksWithContext(ctx aws.Context, input *GetDisksInput, o return out, req.Send() } -const opGetDomain = "GetDomain" +const opGetDistributionBundles = "GetDistributionBundles" -// GetDomainRequest generates a "aws/request.Request" representing the -// client's request for the GetDomain operation. The "output" return +// GetDistributionBundlesRequest generates a "aws/request.Request" representing the +// client's request for the GetDistributionBundles operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetDomain for more information on using the GetDomain +// See GetDistributionBundles for more information on using the GetDistributionBundles // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetDomainRequest method. -// req, resp := client.GetDomainRequest(params) +// // Example sending a request using the GetDistributionBundlesRequest method. +// req, resp := client.GetDistributionBundlesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDomain -func (c *Lightsail) GetDomainRequest(input *GetDomainInput) (req *request.Request, output *GetDomainOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDistributionBundles +func (c *Lightsail) GetDistributionBundlesRequest(input *GetDistributionBundlesInput) (req *request.Request, output *GetDistributionBundlesOutput) { op := &request.Operation{ - Name: opGetDomain, + Name: opGetDistributionBundles, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetDomainInput{} + input = &GetDistributionBundlesInput{} } - output = &GetDomainOutput{} + output = &GetDistributionBundlesOutput{} req = c.newRequest(op, input, output) return } -// GetDomain API operation for Amazon Lightsail. +// GetDistributionBundles API operation for Amazon Lightsail. // -// Returns information about a specific domain recordset. +// 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetDomain for usage and error information. +// API operation GetDistributionBundles for usage and error information. // // Returned Error Types: // * ServiceException @@ -6158,87 +6892,84 @@ func (c *Lightsail) GetDomainRequest(input *GetDomainInput) (req *request.Reques // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // -// * AccountSetupInProgressException -// Lightsail throws this exception when an account is still in the setup in -// progress state. -// // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDomain -func (c *Lightsail) GetDomain(input *GetDomainInput) (*GetDomainOutput, error) { - req, out := c.GetDomainRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDistributionBundles +func (c *Lightsail) GetDistributionBundles(input *GetDistributionBundlesInput) (*GetDistributionBundlesOutput, error) { + req, out := c.GetDistributionBundlesRequest(input) return out, req.Send() } -// GetDomainWithContext is the same as GetDomain with the addition of +// GetDistributionBundlesWithContext is the same as GetDistributionBundles with the addition of // the ability to pass a context and additional request options. // -// See GetDomain for details on how to use this API operation. +// See GetDistributionBundles for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetDomainWithContext(ctx aws.Context, input *GetDomainInput, opts ...request.Option) (*GetDomainOutput, error) { - req, out := c.GetDomainRequest(input) +func (c *Lightsail) GetDistributionBundlesWithContext(ctx aws.Context, input *GetDistributionBundlesInput, opts ...request.Option) (*GetDistributionBundlesOutput, error) { + req, out := c.GetDistributionBundlesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetDomains = "GetDomains" +const opGetDistributionLatestCacheReset = "GetDistributionLatestCacheReset" -// GetDomainsRequest generates a "aws/request.Request" representing the -// client's request for the GetDomains operation. The "output" return +// GetDistributionLatestCacheResetRequest generates a "aws/request.Request" representing the +// client's request for the GetDistributionLatestCacheReset operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetDomains for more information on using the GetDomains +// See GetDistributionLatestCacheReset for more information on using the GetDistributionLatestCacheReset // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetDomainsRequest method. -// req, resp := client.GetDomainsRequest(params) +// // Example sending a request using the GetDistributionLatestCacheResetRequest method. +// req, resp := client.GetDistributionLatestCacheResetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDomains -func (c *Lightsail) GetDomainsRequest(input *GetDomainsInput) (req *request.Request, output *GetDomainsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDistributionLatestCacheReset +func (c *Lightsail) GetDistributionLatestCacheResetRequest(input *GetDistributionLatestCacheResetInput) (req *request.Request, output *GetDistributionLatestCacheResetOutput) { op := &request.Operation{ - Name: opGetDomains, + Name: opGetDistributionLatestCacheReset, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetDomainsInput{} + input = &GetDistributionLatestCacheResetInput{} } - output = &GetDomainsOutput{} + output = &GetDistributionLatestCacheResetOutput{} req = c.newRequest(op, input, output) return } -// GetDomains API operation for Amazon Lightsail. +// GetDistributionLatestCacheReset API operation for Amazon Lightsail. // -// Returns a list of all domains in the user's account. +// Returns the timestamp and status of the last cache reset of a specific Amazon +// Lightsail content delivery network (CDN) distribution. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetDomains for usage and error information. +// API operation GetDistributionLatestCacheReset for usage and error information. // // Returned Error Types: // * ServiceException @@ -6262,91 +6993,88 @@ func (c *Lightsail) GetDomainsRequest(input *GetDomainsInput) (req *request.Requ // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // -// * AccountSetupInProgressException -// Lightsail throws this exception when an account is still in the setup in -// progress state. -// // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDomains -func (c *Lightsail) GetDomains(input *GetDomainsInput) (*GetDomainsOutput, error) { - req, out := c.GetDomainsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDistributionLatestCacheReset +func (c *Lightsail) GetDistributionLatestCacheReset(input *GetDistributionLatestCacheResetInput) (*GetDistributionLatestCacheResetOutput, error) { + req, out := c.GetDistributionLatestCacheResetRequest(input) return out, req.Send() } -// GetDomainsWithContext is the same as GetDomains with the addition of +// GetDistributionLatestCacheResetWithContext is the same as GetDistributionLatestCacheReset with the addition of // the ability to pass a context and additional request options. // -// See GetDomains for details on how to use this API operation. +// See GetDistributionLatestCacheReset for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetDomainsWithContext(ctx aws.Context, input *GetDomainsInput, opts ...request.Option) (*GetDomainsOutput, error) { - req, out := c.GetDomainsRequest(input) +func (c *Lightsail) GetDistributionLatestCacheResetWithContext(ctx aws.Context, input *GetDistributionLatestCacheResetInput, opts ...request.Option) (*GetDistributionLatestCacheResetOutput, error) { + req, out := c.GetDistributionLatestCacheResetRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetExportSnapshotRecords = "GetExportSnapshotRecords" +const opGetDistributionMetricData = "GetDistributionMetricData" -// GetExportSnapshotRecordsRequest generates a "aws/request.Request" representing the -// client's request for the GetExportSnapshotRecords operation. The "output" return +// GetDistributionMetricDataRequest generates a "aws/request.Request" representing the +// client's request for the GetDistributionMetricData operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetExportSnapshotRecords for more information on using the GetExportSnapshotRecords +// See GetDistributionMetricData for more information on using the GetDistributionMetricData // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetExportSnapshotRecordsRequest method. -// req, resp := client.GetExportSnapshotRecordsRequest(params) +// // Example sending a request using the GetDistributionMetricDataRequest method. +// req, resp := client.GetDistributionMetricDataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetExportSnapshotRecords -func (c *Lightsail) GetExportSnapshotRecordsRequest(input *GetExportSnapshotRecordsInput) (req *request.Request, output *GetExportSnapshotRecordsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDistributionMetricData +func (c *Lightsail) GetDistributionMetricDataRequest(input *GetDistributionMetricDataInput) (req *request.Request, output *GetDistributionMetricDataOutput) { op := &request.Operation{ - Name: opGetExportSnapshotRecords, + Name: opGetDistributionMetricData, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetExportSnapshotRecordsInput{} + input = &GetDistributionMetricDataInput{} } - output = &GetExportSnapshotRecordsOutput{} + output = &GetDistributionMetricDataOutput{} req = c.newRequest(op, input, output) return } -// GetExportSnapshotRecords API operation for Amazon Lightsail. +// GetDistributionMetricData API operation for Amazon Lightsail. // -// Returns the export snapshot record created as a result of the export snapshot -// operation. +// Returns the data points of a specific metric for an Amazon Lightsail content +// delivery network (CDN) distribution. // -// An export snapshot record can be used to create a new Amazon EC2 instance -// and its related resources with the create cloud formation stack operation. +// 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetExportSnapshotRecords for usage and error information. +// API operation GetDistributionMetricData for usage and error information. // // Returned Error Types: // * ServiceException @@ -6370,88 +7098,84 @@ func (c *Lightsail) GetExportSnapshotRecordsRequest(input *GetExportSnapshotReco // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // -// * AccountSetupInProgressException -// Lightsail throws this exception when an account is still in the setup in -// progress state. -// // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetExportSnapshotRecords -func (c *Lightsail) GetExportSnapshotRecords(input *GetExportSnapshotRecordsInput) (*GetExportSnapshotRecordsOutput, error) { - req, out := c.GetExportSnapshotRecordsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDistributionMetricData +func (c *Lightsail) GetDistributionMetricData(input *GetDistributionMetricDataInput) (*GetDistributionMetricDataOutput, error) { + req, out := c.GetDistributionMetricDataRequest(input) return out, req.Send() } -// GetExportSnapshotRecordsWithContext is the same as GetExportSnapshotRecords with the addition of +// GetDistributionMetricDataWithContext is the same as GetDistributionMetricData with the addition of // the ability to pass a context and additional request options. // -// See GetExportSnapshotRecords for details on how to use this API operation. +// See GetDistributionMetricData for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetExportSnapshotRecordsWithContext(ctx aws.Context, input *GetExportSnapshotRecordsInput, opts ...request.Option) (*GetExportSnapshotRecordsOutput, error) { - req, out := c.GetExportSnapshotRecordsRequest(input) +func (c *Lightsail) GetDistributionMetricDataWithContext(ctx aws.Context, input *GetDistributionMetricDataInput, opts ...request.Option) (*GetDistributionMetricDataOutput, error) { + req, out := c.GetDistributionMetricDataRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetInstance = "GetInstance" +const opGetDistributions = "GetDistributions" -// GetInstanceRequest generates a "aws/request.Request" representing the -// client's request for the GetInstance operation. The "output" return +// GetDistributionsRequest generates a "aws/request.Request" representing the +// client's request for the GetDistributions operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetInstance for more information on using the GetInstance +// See GetDistributions for more information on using the GetDistributions // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetInstanceRequest method. -// req, resp := client.GetInstanceRequest(params) +// // Example sending a request using the GetDistributionsRequest method. +// req, resp := client.GetDistributionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstance -func (c *Lightsail) GetInstanceRequest(input *GetInstanceInput) (req *request.Request, output *GetInstanceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDistributions +func (c *Lightsail) GetDistributionsRequest(input *GetDistributionsInput) (req *request.Request, output *GetDistributionsOutput) { op := &request.Operation{ - Name: opGetInstance, + Name: opGetDistributions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetInstanceInput{} + input = &GetDistributionsInput{} } - output = &GetInstanceOutput{} + output = &GetDistributionsOutput{} req = c.newRequest(op, input, output) return } -// GetInstance API operation for Amazon Lightsail. +// GetDistributions API operation for Amazon Lightsail. // -// Returns information about a specific Amazon Lightsail instance, which is -// a virtual private server. +// Returns information about one or more of your Amazon Lightsail content delivery +// network (CDN) distributions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetInstance for usage and error information. +// API operation GetDistributions for usage and error information. // // Returned Error Types: // * ServiceException @@ -6475,92 +7199,83 @@ func (c *Lightsail) GetInstanceRequest(input *GetInstanceInput) (req *request.Re // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // -// * AccountSetupInProgressException -// Lightsail throws this exception when an account is still in the setup in -// progress state. -// // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstance -func (c *Lightsail) GetInstance(input *GetInstanceInput) (*GetInstanceOutput, error) { - req, out := c.GetInstanceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDistributions +func (c *Lightsail) GetDistributions(input *GetDistributionsInput) (*GetDistributionsOutput, error) { + req, out := c.GetDistributionsRequest(input) return out, req.Send() } -// GetInstanceWithContext is the same as GetInstance with the addition of +// GetDistributionsWithContext is the same as GetDistributions with the addition of // the ability to pass a context and additional request options. // -// See GetInstance for details on how to use this API operation. +// See GetDistributions for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetInstanceWithContext(ctx aws.Context, input *GetInstanceInput, opts ...request.Option) (*GetInstanceOutput, error) { - req, out := c.GetInstanceRequest(input) +func (c *Lightsail) GetDistributionsWithContext(ctx aws.Context, input *GetDistributionsInput, opts ...request.Option) (*GetDistributionsOutput, error) { + req, out := c.GetDistributionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetInstanceAccessDetails = "GetInstanceAccessDetails" +const opGetDomain = "GetDomain" -// GetInstanceAccessDetailsRequest generates a "aws/request.Request" representing the -// client's request for the GetInstanceAccessDetails operation. The "output" return +// GetDomainRequest generates a "aws/request.Request" representing the +// client's request for the GetDomain operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetInstanceAccessDetails for more information on using the GetInstanceAccessDetails +// See GetDomain for more information on using the GetDomain // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetInstanceAccessDetailsRequest method. -// req, resp := client.GetInstanceAccessDetailsRequest(params) +// // Example sending a request using the GetDomainRequest method. +// req, resp := client.GetDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceAccessDetails -func (c *Lightsail) GetInstanceAccessDetailsRequest(input *GetInstanceAccessDetailsInput) (req *request.Request, output *GetInstanceAccessDetailsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDomain +func (c *Lightsail) GetDomainRequest(input *GetDomainInput) (req *request.Request, output *GetDomainOutput) { op := &request.Operation{ - Name: opGetInstanceAccessDetails, + Name: opGetDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetInstanceAccessDetailsInput{} + input = &GetDomainInput{} } - output = &GetInstanceAccessDetailsOutput{} + output = &GetDomainOutput{} req = c.newRequest(op, input, output) return } -// GetInstanceAccessDetails API operation for Amazon Lightsail. -// -// Returns temporary SSH keys you can use to connect to a specific virtual private -// server, or instance. +// GetDomain API operation for Amazon Lightsail. // -// The get instance access details operation supports tag-based access control -// via resource tags applied to the resource identified by instance name. For -// more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// Returns information about a specific domain recordset. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetInstanceAccessDetails for usage and error information. +// API operation GetDomain for usage and error information. // // Returned Error Types: // * ServiceException @@ -6591,85 +7306,80 @@ func (c *Lightsail) GetInstanceAccessDetailsRequest(input *GetInstanceAccessDeta // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceAccessDetails -func (c *Lightsail) GetInstanceAccessDetails(input *GetInstanceAccessDetailsInput) (*GetInstanceAccessDetailsOutput, error) { - req, out := c.GetInstanceAccessDetailsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDomain +func (c *Lightsail) GetDomain(input *GetDomainInput) (*GetDomainOutput, error) { + req, out := c.GetDomainRequest(input) return out, req.Send() } -// GetInstanceAccessDetailsWithContext is the same as GetInstanceAccessDetails with the addition of +// GetDomainWithContext is the same as GetDomain with the addition of // the ability to pass a context and additional request options. // -// See GetInstanceAccessDetails for details on how to use this API operation. +// See GetDomain for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetInstanceAccessDetailsWithContext(ctx aws.Context, input *GetInstanceAccessDetailsInput, opts ...request.Option) (*GetInstanceAccessDetailsOutput, error) { - req, out := c.GetInstanceAccessDetailsRequest(input) +func (c *Lightsail) GetDomainWithContext(ctx aws.Context, input *GetDomainInput, opts ...request.Option) (*GetDomainOutput, error) { + req, out := c.GetDomainRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetInstanceMetricData = "GetInstanceMetricData" +const opGetDomains = "GetDomains" -// GetInstanceMetricDataRequest generates a "aws/request.Request" representing the -// client's request for the GetInstanceMetricData operation. The "output" return +// GetDomainsRequest generates a "aws/request.Request" representing the +// client's request for the GetDomains operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetInstanceMetricData for more information on using the GetInstanceMetricData +// See GetDomains for more information on using the GetDomains // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetInstanceMetricDataRequest method. -// req, resp := client.GetInstanceMetricDataRequest(params) +// // Example sending a request using the GetDomainsRequest method. +// req, resp := client.GetDomainsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceMetricData -func (c *Lightsail) GetInstanceMetricDataRequest(input *GetInstanceMetricDataInput) (req *request.Request, output *GetInstanceMetricDataOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDomains +func (c *Lightsail) GetDomainsRequest(input *GetDomainsInput) (req *request.Request, output *GetDomainsOutput) { op := &request.Operation{ - Name: opGetInstanceMetricData, + Name: opGetDomains, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetInstanceMetricDataInput{} + input = &GetDomainsInput{} } - output = &GetInstanceMetricDataOutput{} + output = &GetDomainsOutput{} req = c.newRequest(op, input, output) return } -// GetInstanceMetricData API operation for Amazon Lightsail. -// -// Returns the data points for the specified Amazon Lightsail instance metric, -// given an instance name. +// GetDomains API operation for Amazon Lightsail. // -// 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. +// Returns a list of all domains in the user's account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetInstanceMetricData for usage and error information. +// API operation GetDomains for usage and error information. // // Returned Error Types: // * ServiceException @@ -6700,82 +7410,84 @@ func (c *Lightsail) GetInstanceMetricDataRequest(input *GetInstanceMetricDataInp // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceMetricData -func (c *Lightsail) GetInstanceMetricData(input *GetInstanceMetricDataInput) (*GetInstanceMetricDataOutput, error) { - req, out := c.GetInstanceMetricDataRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetDomains +func (c *Lightsail) GetDomains(input *GetDomainsInput) (*GetDomainsOutput, error) { + req, out := c.GetDomainsRequest(input) return out, req.Send() } -// GetInstanceMetricDataWithContext is the same as GetInstanceMetricData with the addition of +// GetDomainsWithContext is the same as GetDomains with the addition of // the ability to pass a context and additional request options. // -// See GetInstanceMetricData for details on how to use this API operation. +// See GetDomains for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetInstanceMetricDataWithContext(ctx aws.Context, input *GetInstanceMetricDataInput, opts ...request.Option) (*GetInstanceMetricDataOutput, error) { - req, out := c.GetInstanceMetricDataRequest(input) +func (c *Lightsail) GetDomainsWithContext(ctx aws.Context, input *GetDomainsInput, opts ...request.Option) (*GetDomainsOutput, error) { + req, out := c.GetDomainsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetInstancePortStates = "GetInstancePortStates" +const opGetExportSnapshotRecords = "GetExportSnapshotRecords" -// GetInstancePortStatesRequest generates a "aws/request.Request" representing the -// client's request for the GetInstancePortStates operation. The "output" return +// GetExportSnapshotRecordsRequest generates a "aws/request.Request" representing the +// client's request for the GetExportSnapshotRecords operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetInstancePortStates for more information on using the GetInstancePortStates +// See GetExportSnapshotRecords for more information on using the GetExportSnapshotRecords // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetInstancePortStatesRequest method. -// req, resp := client.GetInstancePortStatesRequest(params) +// // Example sending a request using the GetExportSnapshotRecordsRequest method. +// req, resp := client.GetExportSnapshotRecordsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstancePortStates -func (c *Lightsail) GetInstancePortStatesRequest(input *GetInstancePortStatesInput) (req *request.Request, output *GetInstancePortStatesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetExportSnapshotRecords +func (c *Lightsail) GetExportSnapshotRecordsRequest(input *GetExportSnapshotRecordsInput) (req *request.Request, output *GetExportSnapshotRecordsOutput) { op := &request.Operation{ - Name: opGetInstancePortStates, + Name: opGetExportSnapshotRecords, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetInstancePortStatesInput{} + input = &GetExportSnapshotRecordsInput{} } - output = &GetInstancePortStatesOutput{} + output = &GetExportSnapshotRecordsOutput{} req = c.newRequest(op, input, output) return } -// GetInstancePortStates API operation for Amazon Lightsail. +// GetExportSnapshotRecords API operation for Amazon Lightsail. // -// Returns the firewall port states for a specific Amazon Lightsail instance, -// the IP addresses allowed to connect to the instance through the ports, and -// the protocol. +// Returns the export snapshot record created as a result of the export snapshot +// operation. +// +// An export snapshot record can be used to create a new Amazon EC2 instance +// and its related resources with the create cloud formation stack operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetInstancePortStates for usage and error information. +// API operation GetExportSnapshotRecords for usage and error information. // // Returned Error Types: // * ServiceException @@ -6806,80 +7518,81 @@ func (c *Lightsail) GetInstancePortStatesRequest(input *GetInstancePortStatesInp // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstancePortStates -func (c *Lightsail) GetInstancePortStates(input *GetInstancePortStatesInput) (*GetInstancePortStatesOutput, error) { - req, out := c.GetInstancePortStatesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetExportSnapshotRecords +func (c *Lightsail) GetExportSnapshotRecords(input *GetExportSnapshotRecordsInput) (*GetExportSnapshotRecordsOutput, error) { + req, out := c.GetExportSnapshotRecordsRequest(input) return out, req.Send() } -// GetInstancePortStatesWithContext is the same as GetInstancePortStates with the addition of +// GetExportSnapshotRecordsWithContext is the same as GetExportSnapshotRecords with the addition of // the ability to pass a context and additional request options. // -// See GetInstancePortStates for details on how to use this API operation. +// See GetExportSnapshotRecords for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetInstancePortStatesWithContext(ctx aws.Context, input *GetInstancePortStatesInput, opts ...request.Option) (*GetInstancePortStatesOutput, error) { - req, out := c.GetInstancePortStatesRequest(input) +func (c *Lightsail) GetExportSnapshotRecordsWithContext(ctx aws.Context, input *GetExportSnapshotRecordsInput, opts ...request.Option) (*GetExportSnapshotRecordsOutput, error) { + req, out := c.GetExportSnapshotRecordsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetInstanceSnapshot = "GetInstanceSnapshot" +const opGetInstance = "GetInstance" -// GetInstanceSnapshotRequest generates a "aws/request.Request" representing the -// client's request for the GetInstanceSnapshot operation. The "output" return +// GetInstanceRequest generates a "aws/request.Request" representing the +// client's request for the GetInstance operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetInstanceSnapshot for more information on using the GetInstanceSnapshot +// See GetInstance for more information on using the GetInstance // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetInstanceSnapshotRequest method. -// req, resp := client.GetInstanceSnapshotRequest(params) +// // Example sending a request using the GetInstanceRequest method. +// req, resp := client.GetInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceSnapshot -func (c *Lightsail) GetInstanceSnapshotRequest(input *GetInstanceSnapshotInput) (req *request.Request, output *GetInstanceSnapshotOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstance +func (c *Lightsail) GetInstanceRequest(input *GetInstanceInput) (req *request.Request, output *GetInstanceOutput) { op := &request.Operation{ - Name: opGetInstanceSnapshot, + Name: opGetInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetInstanceSnapshotInput{} + input = &GetInstanceInput{} } - output = &GetInstanceSnapshotOutput{} + output = &GetInstanceOutput{} req = c.newRequest(op, input, output) return } -// GetInstanceSnapshot API operation for Amazon Lightsail. +// GetInstance API operation for Amazon Lightsail. // -// Returns information about a specific instance snapshot. +// Returns information about a specific Amazon Lightsail instance, which is +// a virtual private server. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetInstanceSnapshot for usage and error information. +// API operation GetInstance for usage and error information. // // Returned Error Types: // * ServiceException @@ -6910,80 +7623,85 @@ func (c *Lightsail) GetInstanceSnapshotRequest(input *GetInstanceSnapshotInput) // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceSnapshot -func (c *Lightsail) GetInstanceSnapshot(input *GetInstanceSnapshotInput) (*GetInstanceSnapshotOutput, error) { - req, out := c.GetInstanceSnapshotRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstance +func (c *Lightsail) GetInstance(input *GetInstanceInput) (*GetInstanceOutput, error) { + req, out := c.GetInstanceRequest(input) return out, req.Send() } -// GetInstanceSnapshotWithContext is the same as GetInstanceSnapshot with the addition of +// GetInstanceWithContext is the same as GetInstance with the addition of // the ability to pass a context and additional request options. // -// See GetInstanceSnapshot for details on how to use this API operation. +// See GetInstance for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetInstanceSnapshotWithContext(ctx aws.Context, input *GetInstanceSnapshotInput, opts ...request.Option) (*GetInstanceSnapshotOutput, error) { - req, out := c.GetInstanceSnapshotRequest(input) +func (c *Lightsail) GetInstanceWithContext(ctx aws.Context, input *GetInstanceInput, opts ...request.Option) (*GetInstanceOutput, error) { + req, out := c.GetInstanceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetInstanceSnapshots = "GetInstanceSnapshots" +const opGetInstanceAccessDetails = "GetInstanceAccessDetails" -// GetInstanceSnapshotsRequest generates a "aws/request.Request" representing the -// client's request for the GetInstanceSnapshots operation. The "output" return +// GetInstanceAccessDetailsRequest generates a "aws/request.Request" representing the +// client's request for the GetInstanceAccessDetails operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetInstanceSnapshots for more information on using the GetInstanceSnapshots +// See GetInstanceAccessDetails for more information on using the GetInstanceAccessDetails // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetInstanceSnapshotsRequest method. -// req, resp := client.GetInstanceSnapshotsRequest(params) +// // Example sending a request using the GetInstanceAccessDetailsRequest method. +// req, resp := client.GetInstanceAccessDetailsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceSnapshots -func (c *Lightsail) GetInstanceSnapshotsRequest(input *GetInstanceSnapshotsInput) (req *request.Request, output *GetInstanceSnapshotsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceAccessDetails +func (c *Lightsail) GetInstanceAccessDetailsRequest(input *GetInstanceAccessDetailsInput) (req *request.Request, output *GetInstanceAccessDetailsOutput) { op := &request.Operation{ - Name: opGetInstanceSnapshots, + Name: opGetInstanceAccessDetails, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetInstanceSnapshotsInput{} + input = &GetInstanceAccessDetailsInput{} } - output = &GetInstanceSnapshotsOutput{} + output = &GetInstanceAccessDetailsOutput{} req = c.newRequest(op, input, output) return } -// GetInstanceSnapshots API operation for Amazon Lightsail. +// GetInstanceAccessDetails API operation for Amazon Lightsail. // -// Returns all instance snapshots for the user's account. +// Returns temporary SSH keys you can use to connect to a specific virtual private +// server, or instance. +// +// The get instance access details operation supports tag-based access control +// via resource tags applied to the resource identified by instance name. For +// more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetInstanceSnapshots for usage and error information. +// API operation GetInstanceAccessDetails for usage and error information. // // Returned Error Types: // * ServiceException @@ -7014,80 +7732,85 @@ func (c *Lightsail) GetInstanceSnapshotsRequest(input *GetInstanceSnapshotsInput // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceSnapshots -func (c *Lightsail) GetInstanceSnapshots(input *GetInstanceSnapshotsInput) (*GetInstanceSnapshotsOutput, error) { - req, out := c.GetInstanceSnapshotsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceAccessDetails +func (c *Lightsail) GetInstanceAccessDetails(input *GetInstanceAccessDetailsInput) (*GetInstanceAccessDetailsOutput, error) { + req, out := c.GetInstanceAccessDetailsRequest(input) return out, req.Send() } -// GetInstanceSnapshotsWithContext is the same as GetInstanceSnapshots with the addition of +// GetInstanceAccessDetailsWithContext is the same as GetInstanceAccessDetails with the addition of // the ability to pass a context and additional request options. // -// See GetInstanceSnapshots for details on how to use this API operation. +// See GetInstanceAccessDetails for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetInstanceSnapshotsWithContext(ctx aws.Context, input *GetInstanceSnapshotsInput, opts ...request.Option) (*GetInstanceSnapshotsOutput, error) { - req, out := c.GetInstanceSnapshotsRequest(input) +func (c *Lightsail) GetInstanceAccessDetailsWithContext(ctx aws.Context, input *GetInstanceAccessDetailsInput, opts ...request.Option) (*GetInstanceAccessDetailsOutput, error) { + req, out := c.GetInstanceAccessDetailsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetInstanceState = "GetInstanceState" +const opGetInstanceMetricData = "GetInstanceMetricData" -// GetInstanceStateRequest generates a "aws/request.Request" representing the -// client's request for the GetInstanceState operation. The "output" return +// GetInstanceMetricDataRequest generates a "aws/request.Request" representing the +// client's request for the GetInstanceMetricData operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetInstanceState for more information on using the GetInstanceState +// See GetInstanceMetricData for more information on using the GetInstanceMetricData // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetInstanceStateRequest method. -// req, resp := client.GetInstanceStateRequest(params) +// // Example sending a request using the GetInstanceMetricDataRequest method. +// req, resp := client.GetInstanceMetricDataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceState -func (c *Lightsail) GetInstanceStateRequest(input *GetInstanceStateInput) (req *request.Request, output *GetInstanceStateOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceMetricData +func (c *Lightsail) GetInstanceMetricDataRequest(input *GetInstanceMetricDataInput) (req *request.Request, output *GetInstanceMetricDataOutput) { op := &request.Operation{ - Name: opGetInstanceState, + Name: opGetInstanceMetricData, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetInstanceStateInput{} + input = &GetInstanceMetricDataInput{} } - output = &GetInstanceStateOutput{} + output = &GetInstanceMetricDataOutput{} req = c.newRequest(op, input, output) return } -// GetInstanceState API operation for Amazon Lightsail. +// GetInstanceMetricData API operation for Amazon Lightsail. // -// Returns the state of a specific instance. Works on one instance at a time. +// Returns the data points for the specified Amazon Lightsail instance metric, +// given an instance name. +// +// 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetInstanceState for usage and error information. +// API operation GetInstanceMetricData for usage and error information. // // Returned Error Types: // * ServiceException @@ -7118,81 +7841,82 @@ func (c *Lightsail) GetInstanceStateRequest(input *GetInstanceStateInput) (req * // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceState -func (c *Lightsail) GetInstanceState(input *GetInstanceStateInput) (*GetInstanceStateOutput, error) { - req, out := c.GetInstanceStateRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceMetricData +func (c *Lightsail) GetInstanceMetricData(input *GetInstanceMetricDataInput) (*GetInstanceMetricDataOutput, error) { + req, out := c.GetInstanceMetricDataRequest(input) return out, req.Send() } -// GetInstanceStateWithContext is the same as GetInstanceState with the addition of +// GetInstanceMetricDataWithContext is the same as GetInstanceMetricData with the addition of // the ability to pass a context and additional request options. // -// See GetInstanceState for details on how to use this API operation. +// See GetInstanceMetricData for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetInstanceStateWithContext(ctx aws.Context, input *GetInstanceStateInput, opts ...request.Option) (*GetInstanceStateOutput, error) { - req, out := c.GetInstanceStateRequest(input) +func (c *Lightsail) GetInstanceMetricDataWithContext(ctx aws.Context, input *GetInstanceMetricDataInput, opts ...request.Option) (*GetInstanceMetricDataOutput, error) { + req, out := c.GetInstanceMetricDataRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetInstances = "GetInstances" +const opGetInstancePortStates = "GetInstancePortStates" -// GetInstancesRequest generates a "aws/request.Request" representing the -// client's request for the GetInstances operation. The "output" return +// GetInstancePortStatesRequest generates a "aws/request.Request" representing the +// client's request for the GetInstancePortStates operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetInstances for more information on using the GetInstances +// See GetInstancePortStates for more information on using the GetInstancePortStates // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetInstancesRequest method. -// req, resp := client.GetInstancesRequest(params) +// // Example sending a request using the GetInstancePortStatesRequest method. +// req, resp := client.GetInstancePortStatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstances -func (c *Lightsail) GetInstancesRequest(input *GetInstancesInput) (req *request.Request, output *GetInstancesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstancePortStates +func (c *Lightsail) GetInstancePortStatesRequest(input *GetInstancePortStatesInput) (req *request.Request, output *GetInstancePortStatesOutput) { op := &request.Operation{ - Name: opGetInstances, + Name: opGetInstancePortStates, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetInstancesInput{} + input = &GetInstancePortStatesInput{} } - output = &GetInstancesOutput{} + output = &GetInstancePortStatesOutput{} req = c.newRequest(op, input, output) return } -// GetInstances API operation for Amazon Lightsail. +// GetInstancePortStates API operation for Amazon Lightsail. // -// Returns information about all Amazon Lightsail virtual private servers, or -// instances. +// Returns the firewall port states for a specific Amazon Lightsail instance, +// the IP addresses allowed to connect to the instance through the ports, and +// the protocol. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetInstances for usage and error information. +// API operation GetInstancePortStates for usage and error information. // // Returned Error Types: // * ServiceException @@ -7223,80 +7947,80 @@ func (c *Lightsail) GetInstancesRequest(input *GetInstancesInput) (req *request. // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstances -func (c *Lightsail) GetInstances(input *GetInstancesInput) (*GetInstancesOutput, error) { - req, out := c.GetInstancesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstancePortStates +func (c *Lightsail) GetInstancePortStates(input *GetInstancePortStatesInput) (*GetInstancePortStatesOutput, error) { + req, out := c.GetInstancePortStatesRequest(input) return out, req.Send() } -// GetInstancesWithContext is the same as GetInstances with the addition of +// GetInstancePortStatesWithContext is the same as GetInstancePortStates with the addition of // the ability to pass a context and additional request options. // -// See GetInstances for details on how to use this API operation. +// See GetInstancePortStates for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetInstancesWithContext(ctx aws.Context, input *GetInstancesInput, opts ...request.Option) (*GetInstancesOutput, error) { - req, out := c.GetInstancesRequest(input) - req.SetContext(ctx) +func (c *Lightsail) GetInstancePortStatesWithContext(ctx aws.Context, input *GetInstancePortStatesInput, opts ...request.Option) (*GetInstancePortStatesOutput, error) { + req, out := c.GetInstancePortStatesRequest(input) + req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetKeyPair = "GetKeyPair" +const opGetInstanceSnapshot = "GetInstanceSnapshot" -// GetKeyPairRequest generates a "aws/request.Request" representing the -// client's request for the GetKeyPair operation. The "output" return +// GetInstanceSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the GetInstanceSnapshot operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetKeyPair for more information on using the GetKeyPair +// See GetInstanceSnapshot for more information on using the GetInstanceSnapshot // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetKeyPairRequest method. -// req, resp := client.GetKeyPairRequest(params) +// // Example sending a request using the GetInstanceSnapshotRequest method. +// req, resp := client.GetInstanceSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetKeyPair -func (c *Lightsail) GetKeyPairRequest(input *GetKeyPairInput) (req *request.Request, output *GetKeyPairOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceSnapshot +func (c *Lightsail) GetInstanceSnapshotRequest(input *GetInstanceSnapshotInput) (req *request.Request, output *GetInstanceSnapshotOutput) { op := &request.Operation{ - Name: opGetKeyPair, + Name: opGetInstanceSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetKeyPairInput{} + input = &GetInstanceSnapshotInput{} } - output = &GetKeyPairOutput{} + output = &GetInstanceSnapshotOutput{} req = c.newRequest(op, input, output) return } -// GetKeyPair API operation for Amazon Lightsail. +// GetInstanceSnapshot API operation for Amazon Lightsail. // -// Returns information about a specific key pair. +// Returns information about a specific instance snapshot. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetKeyPair for usage and error information. +// API operation GetInstanceSnapshot for usage and error information. // // Returned Error Types: // * ServiceException @@ -7327,80 +8051,80 @@ func (c *Lightsail) GetKeyPairRequest(input *GetKeyPairInput) (req *request.Requ // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetKeyPair -func (c *Lightsail) GetKeyPair(input *GetKeyPairInput) (*GetKeyPairOutput, error) { - req, out := c.GetKeyPairRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceSnapshot +func (c *Lightsail) GetInstanceSnapshot(input *GetInstanceSnapshotInput) (*GetInstanceSnapshotOutput, error) { + req, out := c.GetInstanceSnapshotRequest(input) return out, req.Send() } -// GetKeyPairWithContext is the same as GetKeyPair with the addition of +// GetInstanceSnapshotWithContext is the same as GetInstanceSnapshot with the addition of // the ability to pass a context and additional request options. // -// See GetKeyPair for details on how to use this API operation. +// See GetInstanceSnapshot for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetKeyPairWithContext(ctx aws.Context, input *GetKeyPairInput, opts ...request.Option) (*GetKeyPairOutput, error) { - req, out := c.GetKeyPairRequest(input) +func (c *Lightsail) GetInstanceSnapshotWithContext(ctx aws.Context, input *GetInstanceSnapshotInput, opts ...request.Option) (*GetInstanceSnapshotOutput, error) { + req, out := c.GetInstanceSnapshotRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetKeyPairs = "GetKeyPairs" +const opGetInstanceSnapshots = "GetInstanceSnapshots" -// GetKeyPairsRequest generates a "aws/request.Request" representing the -// client's request for the GetKeyPairs operation. The "output" return +// GetInstanceSnapshotsRequest generates a "aws/request.Request" representing the +// client's request for the GetInstanceSnapshots operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetKeyPairs for more information on using the GetKeyPairs +// See GetInstanceSnapshots for more information on using the GetInstanceSnapshots // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetKeyPairsRequest method. -// req, resp := client.GetKeyPairsRequest(params) +// // Example sending a request using the GetInstanceSnapshotsRequest method. +// req, resp := client.GetInstanceSnapshotsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetKeyPairs -func (c *Lightsail) GetKeyPairsRequest(input *GetKeyPairsInput) (req *request.Request, output *GetKeyPairsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceSnapshots +func (c *Lightsail) GetInstanceSnapshotsRequest(input *GetInstanceSnapshotsInput) (req *request.Request, output *GetInstanceSnapshotsOutput) { op := &request.Operation{ - Name: opGetKeyPairs, + Name: opGetInstanceSnapshots, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetKeyPairsInput{} + input = &GetInstanceSnapshotsInput{} } - output = &GetKeyPairsOutput{} + output = &GetInstanceSnapshotsOutput{} req = c.newRequest(op, input, output) return } -// GetKeyPairs API operation for Amazon Lightsail. +// GetInstanceSnapshots API operation for Amazon Lightsail. // -// Returns information about all key pairs in the user's account. +// Returns all instance snapshots for the user's account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetKeyPairs for usage and error information. +// API operation GetInstanceSnapshots for usage and error information. // // Returned Error Types: // * ServiceException @@ -7431,80 +8155,80 @@ func (c *Lightsail) GetKeyPairsRequest(input *GetKeyPairsInput) (req *request.Re // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetKeyPairs -func (c *Lightsail) GetKeyPairs(input *GetKeyPairsInput) (*GetKeyPairsOutput, error) { - req, out := c.GetKeyPairsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceSnapshots +func (c *Lightsail) GetInstanceSnapshots(input *GetInstanceSnapshotsInput) (*GetInstanceSnapshotsOutput, error) { + req, out := c.GetInstanceSnapshotsRequest(input) return out, req.Send() } -// GetKeyPairsWithContext is the same as GetKeyPairs with the addition of +// GetInstanceSnapshotsWithContext is the same as GetInstanceSnapshots with the addition of // the ability to pass a context and additional request options. // -// See GetKeyPairs for details on how to use this API operation. +// See GetInstanceSnapshots for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetKeyPairsWithContext(ctx aws.Context, input *GetKeyPairsInput, opts ...request.Option) (*GetKeyPairsOutput, error) { - req, out := c.GetKeyPairsRequest(input) +func (c *Lightsail) GetInstanceSnapshotsWithContext(ctx aws.Context, input *GetInstanceSnapshotsInput, opts ...request.Option) (*GetInstanceSnapshotsOutput, error) { + req, out := c.GetInstanceSnapshotsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetLoadBalancer = "GetLoadBalancer" +const opGetInstanceState = "GetInstanceState" -// GetLoadBalancerRequest generates a "aws/request.Request" representing the -// client's request for the GetLoadBalancer operation. The "output" return +// GetInstanceStateRequest generates a "aws/request.Request" representing the +// client's request for the GetInstanceState operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetLoadBalancer for more information on using the GetLoadBalancer +// See GetInstanceState for more information on using the GetInstanceState // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetLoadBalancerRequest method. -// req, resp := client.GetLoadBalancerRequest(params) +// // Example sending a request using the GetInstanceStateRequest method. +// req, resp := client.GetInstanceStateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancer -func (c *Lightsail) GetLoadBalancerRequest(input *GetLoadBalancerInput) (req *request.Request, output *GetLoadBalancerOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceState +func (c *Lightsail) GetInstanceStateRequest(input *GetInstanceStateInput) (req *request.Request, output *GetInstanceStateOutput) { op := &request.Operation{ - Name: opGetLoadBalancer, + Name: opGetInstanceState, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetLoadBalancerInput{} + input = &GetInstanceStateInput{} } - output = &GetLoadBalancerOutput{} + output = &GetInstanceStateOutput{} req = c.newRequest(op, input, output) return } -// GetLoadBalancer API operation for Amazon Lightsail. +// GetInstanceState API operation for Amazon Lightsail. // -// Returns information about the specified Lightsail load balancer. +// Returns the state of a specific instance. Works on one instance at a time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetLoadBalancer for usage and error information. +// API operation GetInstanceState for usage and error information. // // Returned Error Types: // * ServiceException @@ -7535,84 +8259,81 @@ func (c *Lightsail) GetLoadBalancerRequest(input *GetLoadBalancerInput) (req *re // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancer -func (c *Lightsail) GetLoadBalancer(input *GetLoadBalancerInput) (*GetLoadBalancerOutput, error) { - req, out := c.GetLoadBalancerRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstanceState +func (c *Lightsail) GetInstanceState(input *GetInstanceStateInput) (*GetInstanceStateOutput, error) { + req, out := c.GetInstanceStateRequest(input) return out, req.Send() } -// GetLoadBalancerWithContext is the same as GetLoadBalancer with the addition of +// GetInstanceStateWithContext is the same as GetInstanceState with the addition of // the ability to pass a context and additional request options. // -// See GetLoadBalancer for details on how to use this API operation. +// See GetInstanceState for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetLoadBalancerWithContext(ctx aws.Context, input *GetLoadBalancerInput, opts ...request.Option) (*GetLoadBalancerOutput, error) { - req, out := c.GetLoadBalancerRequest(input) +func (c *Lightsail) GetInstanceStateWithContext(ctx aws.Context, input *GetInstanceStateInput, opts ...request.Option) (*GetInstanceStateOutput, error) { + req, out := c.GetInstanceStateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetLoadBalancerMetricData = "GetLoadBalancerMetricData" +const opGetInstances = "GetInstances" -// GetLoadBalancerMetricDataRequest generates a "aws/request.Request" representing the -// client's request for the GetLoadBalancerMetricData operation. The "output" return +// GetInstancesRequest generates a "aws/request.Request" representing the +// client's request for the GetInstances operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetLoadBalancerMetricData for more information on using the GetLoadBalancerMetricData +// See GetInstances for more information on using the GetInstances // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetLoadBalancerMetricDataRequest method. -// req, resp := client.GetLoadBalancerMetricDataRequest(params) +// // Example sending a request using the GetInstancesRequest method. +// req, resp := client.GetInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancerMetricData -func (c *Lightsail) GetLoadBalancerMetricDataRequest(input *GetLoadBalancerMetricDataInput) (req *request.Request, output *GetLoadBalancerMetricDataOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstances +func (c *Lightsail) GetInstancesRequest(input *GetInstancesInput) (req *request.Request, output *GetInstancesOutput) { op := &request.Operation{ - Name: opGetLoadBalancerMetricData, + Name: opGetInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetLoadBalancerMetricDataInput{} + input = &GetInstancesInput{} } - output = &GetLoadBalancerMetricDataOutput{} + output = &GetInstancesOutput{} req = c.newRequest(op, input, output) return } -// GetLoadBalancerMetricData API operation for Amazon Lightsail. -// -// Returns information about health metrics for your Lightsail load balancer. +// GetInstances API operation for Amazon Lightsail. // -// 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. +// Returns information about all Amazon Lightsail virtual private servers, or +// instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetLoadBalancerMetricData for usage and error information. +// API operation GetInstances for usage and error information. // // Returned Error Types: // * ServiceException @@ -7643,86 +8364,80 @@ func (c *Lightsail) GetLoadBalancerMetricDataRequest(input *GetLoadBalancerMetri // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancerMetricData -func (c *Lightsail) GetLoadBalancerMetricData(input *GetLoadBalancerMetricDataInput) (*GetLoadBalancerMetricDataOutput, error) { - req, out := c.GetLoadBalancerMetricDataRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetInstances +func (c *Lightsail) GetInstances(input *GetInstancesInput) (*GetInstancesOutput, error) { + req, out := c.GetInstancesRequest(input) return out, req.Send() } -// GetLoadBalancerMetricDataWithContext is the same as GetLoadBalancerMetricData with the addition of +// GetInstancesWithContext is the same as GetInstances with the addition of // the ability to pass a context and additional request options. // -// See GetLoadBalancerMetricData for details on how to use this API operation. +// See GetInstances for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetLoadBalancerMetricDataWithContext(ctx aws.Context, input *GetLoadBalancerMetricDataInput, opts ...request.Option) (*GetLoadBalancerMetricDataOutput, error) { - req, out := c.GetLoadBalancerMetricDataRequest(input) +func (c *Lightsail) GetInstancesWithContext(ctx aws.Context, input *GetInstancesInput, opts ...request.Option) (*GetInstancesOutput, error) { + req, out := c.GetInstancesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetLoadBalancerTlsCertificates = "GetLoadBalancerTlsCertificates" +const opGetKeyPair = "GetKeyPair" -// GetLoadBalancerTlsCertificatesRequest generates a "aws/request.Request" representing the -// client's request for the GetLoadBalancerTlsCertificates operation. The "output" return +// GetKeyPairRequest generates a "aws/request.Request" representing the +// client's request for the GetKeyPair operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetLoadBalancerTlsCertificates for more information on using the GetLoadBalancerTlsCertificates +// See GetKeyPair for more information on using the GetKeyPair // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetLoadBalancerTlsCertificatesRequest method. -// req, resp := client.GetLoadBalancerTlsCertificatesRequest(params) +// // Example sending a request using the GetKeyPairRequest method. +// req, resp := client.GetKeyPairRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancerTlsCertificates -func (c *Lightsail) GetLoadBalancerTlsCertificatesRequest(input *GetLoadBalancerTlsCertificatesInput) (req *request.Request, output *GetLoadBalancerTlsCertificatesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetKeyPair +func (c *Lightsail) GetKeyPairRequest(input *GetKeyPairInput) (req *request.Request, output *GetKeyPairOutput) { op := &request.Operation{ - Name: opGetLoadBalancerTlsCertificates, + Name: opGetKeyPair, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetLoadBalancerTlsCertificatesInput{} + input = &GetKeyPairInput{} } - output = &GetLoadBalancerTlsCertificatesOutput{} + output = &GetKeyPairOutput{} req = c.newRequest(op, input, output) return } -// GetLoadBalancerTlsCertificates API operation for Amazon Lightsail. -// -// Returns information about the TLS certificates that are associated with the -// specified Lightsail load balancer. -// -// TLS is just an updated, more secure version of Secure Socket Layer (SSL). +// GetKeyPair API operation for Amazon Lightsail. // -// You can have a maximum of 2 certificates associated with a Lightsail load -// balancer. One is active and the other is inactive. +// Returns information about a specific key pair. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetLoadBalancerTlsCertificates for usage and error information. +// API operation GetKeyPair for usage and error information. // // Returned Error Types: // * ServiceException @@ -7753,80 +8468,80 @@ func (c *Lightsail) GetLoadBalancerTlsCertificatesRequest(input *GetLoadBalancer // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancerTlsCertificates -func (c *Lightsail) GetLoadBalancerTlsCertificates(input *GetLoadBalancerTlsCertificatesInput) (*GetLoadBalancerTlsCertificatesOutput, error) { - req, out := c.GetLoadBalancerTlsCertificatesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetKeyPair +func (c *Lightsail) GetKeyPair(input *GetKeyPairInput) (*GetKeyPairOutput, error) { + req, out := c.GetKeyPairRequest(input) return out, req.Send() } -// GetLoadBalancerTlsCertificatesWithContext is the same as GetLoadBalancerTlsCertificates with the addition of +// GetKeyPairWithContext is the same as GetKeyPair with the addition of // the ability to pass a context and additional request options. // -// See GetLoadBalancerTlsCertificates for details on how to use this API operation. +// See GetKeyPair for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetLoadBalancerTlsCertificatesWithContext(ctx aws.Context, input *GetLoadBalancerTlsCertificatesInput, opts ...request.Option) (*GetLoadBalancerTlsCertificatesOutput, error) { - req, out := c.GetLoadBalancerTlsCertificatesRequest(input) +func (c *Lightsail) GetKeyPairWithContext(ctx aws.Context, input *GetKeyPairInput, opts ...request.Option) (*GetKeyPairOutput, error) { + req, out := c.GetKeyPairRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetLoadBalancers = "GetLoadBalancers" +const opGetKeyPairs = "GetKeyPairs" -// GetLoadBalancersRequest generates a "aws/request.Request" representing the -// client's request for the GetLoadBalancers operation. The "output" return +// GetKeyPairsRequest generates a "aws/request.Request" representing the +// client's request for the GetKeyPairs operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetLoadBalancers for more information on using the GetLoadBalancers +// See GetKeyPairs for more information on using the GetKeyPairs // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetLoadBalancersRequest method. -// req, resp := client.GetLoadBalancersRequest(params) +// // Example sending a request using the GetKeyPairsRequest method. +// req, resp := client.GetKeyPairsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancers -func (c *Lightsail) GetLoadBalancersRequest(input *GetLoadBalancersInput) (req *request.Request, output *GetLoadBalancersOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetKeyPairs +func (c *Lightsail) GetKeyPairsRequest(input *GetKeyPairsInput) (req *request.Request, output *GetKeyPairsOutput) { op := &request.Operation{ - Name: opGetLoadBalancers, + Name: opGetKeyPairs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetLoadBalancersInput{} + input = &GetKeyPairsInput{} } - output = &GetLoadBalancersOutput{} + output = &GetKeyPairsOutput{} req = c.newRequest(op, input, output) return } -// GetLoadBalancers API operation for Amazon Lightsail. +// GetKeyPairs API operation for Amazon Lightsail. // -// Returns information about all load balancers in an account. +// Returns information about all key pairs in the user's account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetLoadBalancers for usage and error information. +// API operation GetKeyPairs for usage and error information. // // Returned Error Types: // * ServiceException @@ -7857,82 +8572,80 @@ func (c *Lightsail) GetLoadBalancersRequest(input *GetLoadBalancersInput) (req * // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancers -func (c *Lightsail) GetLoadBalancers(input *GetLoadBalancersInput) (*GetLoadBalancersOutput, error) { - req, out := c.GetLoadBalancersRequest(input) - return out, req.Send() +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetKeyPairs +func (c *Lightsail) GetKeyPairs(input *GetKeyPairsInput) (*GetKeyPairsOutput, error) { + req, out := c.GetKeyPairsRequest(input) + return out, req.Send() } -// GetLoadBalancersWithContext is the same as GetLoadBalancers with the addition of +// GetKeyPairsWithContext is the same as GetKeyPairs with the addition of // the ability to pass a context and additional request options. // -// See GetLoadBalancers for details on how to use this API operation. +// See GetKeyPairs for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetLoadBalancersWithContext(ctx aws.Context, input *GetLoadBalancersInput, opts ...request.Option) (*GetLoadBalancersOutput, error) { - req, out := c.GetLoadBalancersRequest(input) +func (c *Lightsail) GetKeyPairsWithContext(ctx aws.Context, input *GetKeyPairsInput, opts ...request.Option) (*GetKeyPairsOutput, error) { + req, out := c.GetKeyPairsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetOperation = "GetOperation" +const opGetLoadBalancer = "GetLoadBalancer" -// GetOperationRequest generates a "aws/request.Request" representing the -// client's request for the GetOperation operation. The "output" return +// GetLoadBalancerRequest generates a "aws/request.Request" representing the +// client's request for the GetLoadBalancer operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetOperation for more information on using the GetOperation +// See GetLoadBalancer for more information on using the GetLoadBalancer // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetOperationRequest method. -// req, resp := client.GetOperationRequest(params) +// // Example sending a request using the GetLoadBalancerRequest method. +// req, resp := client.GetLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperation -func (c *Lightsail) GetOperationRequest(input *GetOperationInput) (req *request.Request, output *GetOperationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancer +func (c *Lightsail) GetLoadBalancerRequest(input *GetLoadBalancerInput) (req *request.Request, output *GetLoadBalancerOutput) { op := &request.Operation{ - Name: opGetOperation, + Name: opGetLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetOperationInput{} + input = &GetLoadBalancerInput{} } - output = &GetOperationOutput{} + output = &GetLoadBalancerOutput{} req = c.newRequest(op, input, output) return } -// GetOperation API operation for Amazon Lightsail. +// GetLoadBalancer API operation for Amazon Lightsail. // -// Returns information about a specific operation. Operations include events -// such as when you create an instance, allocate a static IP, attach a static -// IP, and so on. +// Returns information about the specified Lightsail load balancer. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetOperation for usage and error information. +// API operation GetLoadBalancer for usage and error information. // // Returned Error Types: // * ServiceException @@ -7963,84 +8676,84 @@ func (c *Lightsail) GetOperationRequest(input *GetOperationInput) (req *request. // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperation -func (c *Lightsail) GetOperation(input *GetOperationInput) (*GetOperationOutput, error) { - req, out := c.GetOperationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancer +func (c *Lightsail) GetLoadBalancer(input *GetLoadBalancerInput) (*GetLoadBalancerOutput, error) { + req, out := c.GetLoadBalancerRequest(input) return out, req.Send() } -// GetOperationWithContext is the same as GetOperation with the addition of +// GetLoadBalancerWithContext is the same as GetLoadBalancer with the addition of // the ability to pass a context and additional request options. // -// See GetOperation for details on how to use this API operation. +// See GetLoadBalancer for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetOperationWithContext(ctx aws.Context, input *GetOperationInput, opts ...request.Option) (*GetOperationOutput, error) { - req, out := c.GetOperationRequest(input) +func (c *Lightsail) GetLoadBalancerWithContext(ctx aws.Context, input *GetLoadBalancerInput, opts ...request.Option) (*GetLoadBalancerOutput, error) { + req, out := c.GetLoadBalancerRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetOperations = "GetOperations" +const opGetLoadBalancerMetricData = "GetLoadBalancerMetricData" -// GetOperationsRequest generates a "aws/request.Request" representing the -// client's request for the GetOperations operation. The "output" return +// GetLoadBalancerMetricDataRequest generates a "aws/request.Request" representing the +// client's request for the GetLoadBalancerMetricData operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetOperations for more information on using the GetOperations +// See GetLoadBalancerMetricData for more information on using the GetLoadBalancerMetricData // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetOperationsRequest method. -// req, resp := client.GetOperationsRequest(params) +// // Example sending a request using the GetLoadBalancerMetricDataRequest method. +// req, resp := client.GetLoadBalancerMetricDataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperations -func (c *Lightsail) GetOperationsRequest(input *GetOperationsInput) (req *request.Request, output *GetOperationsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancerMetricData +func (c *Lightsail) GetLoadBalancerMetricDataRequest(input *GetLoadBalancerMetricDataInput) (req *request.Request, output *GetLoadBalancerMetricDataOutput) { op := &request.Operation{ - Name: opGetOperations, + Name: opGetLoadBalancerMetricData, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetOperationsInput{} + input = &GetLoadBalancerMetricDataInput{} } - output = &GetOperationsOutput{} + output = &GetLoadBalancerMetricDataOutput{} req = c.newRequest(op, input, output) return } -// GetOperations API operation for Amazon Lightsail. +// GetLoadBalancerMetricData API operation for Amazon Lightsail. // -// Returns information about all operations. +// Returns information about health metrics for your Lightsail load balancer. // -// Results are returned from oldest to newest, up to a maximum of 200. Results -// can be paged by making each subsequent call to GetOperations use the maximum -// (last) statusChangedAt value from the previous request. +// 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetOperations for usage and error information. +// API operation GetLoadBalancerMetricData for usage and error information. // // Returned Error Types: // * ServiceException @@ -8071,80 +8784,86 @@ func (c *Lightsail) GetOperationsRequest(input *GetOperationsInput) (req *reques // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperations -func (c *Lightsail) GetOperations(input *GetOperationsInput) (*GetOperationsOutput, error) { - req, out := c.GetOperationsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancerMetricData +func (c *Lightsail) GetLoadBalancerMetricData(input *GetLoadBalancerMetricDataInput) (*GetLoadBalancerMetricDataOutput, error) { + req, out := c.GetLoadBalancerMetricDataRequest(input) return out, req.Send() } -// GetOperationsWithContext is the same as GetOperations with the addition of +// GetLoadBalancerMetricDataWithContext is the same as GetLoadBalancerMetricData with the addition of // the ability to pass a context and additional request options. // -// See GetOperations for details on how to use this API operation. +// See GetLoadBalancerMetricData for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetOperationsWithContext(ctx aws.Context, input *GetOperationsInput, opts ...request.Option) (*GetOperationsOutput, error) { - req, out := c.GetOperationsRequest(input) +func (c *Lightsail) GetLoadBalancerMetricDataWithContext(ctx aws.Context, input *GetLoadBalancerMetricDataInput, opts ...request.Option) (*GetLoadBalancerMetricDataOutput, error) { + req, out := c.GetLoadBalancerMetricDataRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetOperationsForResource = "GetOperationsForResource" +const opGetLoadBalancerTlsCertificates = "GetLoadBalancerTlsCertificates" -// GetOperationsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the GetOperationsForResource operation. The "output" return +// GetLoadBalancerTlsCertificatesRequest generates a "aws/request.Request" representing the +// client's request for the GetLoadBalancerTlsCertificates operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetOperationsForResource for more information on using the GetOperationsForResource +// See GetLoadBalancerTlsCertificates for more information on using the GetLoadBalancerTlsCertificates // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetOperationsForResourceRequest method. -// req, resp := client.GetOperationsForResourceRequest(params) +// // Example sending a request using the GetLoadBalancerTlsCertificatesRequest method. +// req, resp := client.GetLoadBalancerTlsCertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperationsForResource -func (c *Lightsail) GetOperationsForResourceRequest(input *GetOperationsForResourceInput) (req *request.Request, output *GetOperationsForResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancerTlsCertificates +func (c *Lightsail) GetLoadBalancerTlsCertificatesRequest(input *GetLoadBalancerTlsCertificatesInput) (req *request.Request, output *GetLoadBalancerTlsCertificatesOutput) { op := &request.Operation{ - Name: opGetOperationsForResource, + Name: opGetLoadBalancerTlsCertificates, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetOperationsForResourceInput{} + input = &GetLoadBalancerTlsCertificatesInput{} } - output = &GetOperationsForResourceOutput{} + output = &GetLoadBalancerTlsCertificatesOutput{} req = c.newRequest(op, input, output) return } -// GetOperationsForResource API operation for Amazon Lightsail. +// GetLoadBalancerTlsCertificates API operation for Amazon Lightsail. // -// Gets operations for a specific resource (e.g., an instance or a static IP). +// Returns information about the TLS certificates that are associated with the +// specified Lightsail load balancer. +// +// TLS is just an updated, more secure version of Secure Socket Layer (SSL). +// +// You can have a maximum of 2 certificates associated with a Lightsail load +// balancer. One is active and the other is inactive. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetOperationsForResource for usage and error information. +// API operation GetLoadBalancerTlsCertificates for usage and error information. // // Returned Error Types: // * ServiceException @@ -8175,81 +8894,80 @@ func (c *Lightsail) GetOperationsForResourceRequest(input *GetOperationsForResou // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperationsForResource -func (c *Lightsail) GetOperationsForResource(input *GetOperationsForResourceInput) (*GetOperationsForResourceOutput, error) { - req, out := c.GetOperationsForResourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancerTlsCertificates +func (c *Lightsail) GetLoadBalancerTlsCertificates(input *GetLoadBalancerTlsCertificatesInput) (*GetLoadBalancerTlsCertificatesOutput, error) { + req, out := c.GetLoadBalancerTlsCertificatesRequest(input) return out, req.Send() } -// GetOperationsForResourceWithContext is the same as GetOperationsForResource with the addition of +// GetLoadBalancerTlsCertificatesWithContext is the same as GetLoadBalancerTlsCertificates with the addition of // the ability to pass a context and additional request options. // -// See GetOperationsForResource for details on how to use this API operation. +// See GetLoadBalancerTlsCertificates for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetOperationsForResourceWithContext(ctx aws.Context, input *GetOperationsForResourceInput, opts ...request.Option) (*GetOperationsForResourceOutput, error) { - req, out := c.GetOperationsForResourceRequest(input) +func (c *Lightsail) GetLoadBalancerTlsCertificatesWithContext(ctx aws.Context, input *GetLoadBalancerTlsCertificatesInput, opts ...request.Option) (*GetLoadBalancerTlsCertificatesOutput, error) { + req, out := c.GetLoadBalancerTlsCertificatesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRegions = "GetRegions" +const opGetLoadBalancers = "GetLoadBalancers" -// GetRegionsRequest generates a "aws/request.Request" representing the -// client's request for the GetRegions operation. The "output" return +// GetLoadBalancersRequest generates a "aws/request.Request" representing the +// client's request for the GetLoadBalancers operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRegions for more information on using the GetRegions +// See GetLoadBalancers for more information on using the GetLoadBalancers // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRegionsRequest method. -// req, resp := client.GetRegionsRequest(params) +// // Example sending a request using the GetLoadBalancersRequest method. +// req, resp := client.GetLoadBalancersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRegions -func (c *Lightsail) GetRegionsRequest(input *GetRegionsInput) (req *request.Request, output *GetRegionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancers +func (c *Lightsail) GetLoadBalancersRequest(input *GetLoadBalancersInput) (req *request.Request, output *GetLoadBalancersOutput) { op := &request.Operation{ - Name: opGetRegions, + Name: opGetLoadBalancers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRegionsInput{} + input = &GetLoadBalancersInput{} } - output = &GetRegionsOutput{} + output = &GetLoadBalancersOutput{} req = c.newRequest(op, input, output) return } -// GetRegions API operation for Amazon Lightsail. +// GetLoadBalancers API operation for Amazon Lightsail. // -// Returns a list of all valid regions for Amazon Lightsail. Use the include -// availability zones parameter to also return the Availability Zones in a region. +// Returns information about all load balancers in an account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRegions for usage and error information. +// API operation GetLoadBalancers for usage and error information. // // Returned Error Types: // * ServiceException @@ -8280,80 +8998,82 @@ func (c *Lightsail) GetRegionsRequest(input *GetRegionsInput) (req *request.Requ // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRegions -func (c *Lightsail) GetRegions(input *GetRegionsInput) (*GetRegionsOutput, error) { - req, out := c.GetRegionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetLoadBalancers +func (c *Lightsail) GetLoadBalancers(input *GetLoadBalancersInput) (*GetLoadBalancersOutput, error) { + req, out := c.GetLoadBalancersRequest(input) return out, req.Send() } -// GetRegionsWithContext is the same as GetRegions with the addition of +// GetLoadBalancersWithContext is the same as GetLoadBalancers with the addition of // the ability to pass a context and additional request options. // -// See GetRegions for details on how to use this API operation. +// See GetLoadBalancers for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRegionsWithContext(ctx aws.Context, input *GetRegionsInput, opts ...request.Option) (*GetRegionsOutput, error) { - req, out := c.GetRegionsRequest(input) +func (c *Lightsail) GetLoadBalancersWithContext(ctx aws.Context, input *GetLoadBalancersInput, opts ...request.Option) (*GetLoadBalancersOutput, error) { + req, out := c.GetLoadBalancersRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabase = "GetRelationalDatabase" +const opGetOperation = "GetOperation" -// GetRelationalDatabaseRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabase operation. The "output" return +// GetOperationRequest generates a "aws/request.Request" representing the +// client's request for the GetOperation operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabase for more information on using the GetRelationalDatabase +// See GetOperation for more information on using the GetOperation // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseRequest method. -// req, resp := client.GetRelationalDatabaseRequest(params) +// // Example sending a request using the GetOperationRequest method. +// req, resp := client.GetOperationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabase -func (c *Lightsail) GetRelationalDatabaseRequest(input *GetRelationalDatabaseInput) (req *request.Request, output *GetRelationalDatabaseOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperation +func (c *Lightsail) GetOperationRequest(input *GetOperationInput) (req *request.Request, output *GetOperationOutput) { op := &request.Operation{ - Name: opGetRelationalDatabase, + Name: opGetOperation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseInput{} + input = &GetOperationInput{} } - output = &GetRelationalDatabaseOutput{} + output = &GetOperationOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabase API operation for Amazon Lightsail. +// GetOperation API operation for Amazon Lightsail. // -// Returns information about a specific database in Amazon Lightsail. +// Returns information about a specific operation. Operations include events +// such as when you create an instance, allocate a static IP, attach a static +// IP, and so on. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabase for usage and error information. +// API operation GetOperation for usage and error information. // // Returned Error Types: // * ServiceException @@ -8384,84 +9104,84 @@ func (c *Lightsail) GetRelationalDatabaseRequest(input *GetRelationalDatabaseInp // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabase -func (c *Lightsail) GetRelationalDatabase(input *GetRelationalDatabaseInput) (*GetRelationalDatabaseOutput, error) { - req, out := c.GetRelationalDatabaseRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperation +func (c *Lightsail) GetOperation(input *GetOperationInput) (*GetOperationOutput, error) { + req, out := c.GetOperationRequest(input) return out, req.Send() } -// GetRelationalDatabaseWithContext is the same as GetRelationalDatabase with the addition of +// GetOperationWithContext is the same as GetOperation with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabase for details on how to use this API operation. +// See GetOperation for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseWithContext(ctx aws.Context, input *GetRelationalDatabaseInput, opts ...request.Option) (*GetRelationalDatabaseOutput, error) { - req, out := c.GetRelationalDatabaseRequest(input) +func (c *Lightsail) GetOperationWithContext(ctx aws.Context, input *GetOperationInput, opts ...request.Option) (*GetOperationOutput, error) { + req, out := c.GetOperationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabaseBlueprints = "GetRelationalDatabaseBlueprints" +const opGetOperations = "GetOperations" -// GetRelationalDatabaseBlueprintsRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabaseBlueprints operation. The "output" return +// GetOperationsRequest generates a "aws/request.Request" representing the +// client's request for the GetOperations operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabaseBlueprints for more information on using the GetRelationalDatabaseBlueprints +// See GetOperations for more information on using the GetOperations // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseBlueprintsRequest method. -// req, resp := client.GetRelationalDatabaseBlueprintsRequest(params) +// // Example sending a request using the GetOperationsRequest method. +// req, resp := client.GetOperationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseBlueprints -func (c *Lightsail) GetRelationalDatabaseBlueprintsRequest(input *GetRelationalDatabaseBlueprintsInput) (req *request.Request, output *GetRelationalDatabaseBlueprintsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperations +func (c *Lightsail) GetOperationsRequest(input *GetOperationsInput) (req *request.Request, output *GetOperationsOutput) { op := &request.Operation{ - Name: opGetRelationalDatabaseBlueprints, + Name: opGetOperations, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseBlueprintsInput{} + input = &GetOperationsInput{} } - output = &GetRelationalDatabaseBlueprintsOutput{} + output = &GetOperationsOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabaseBlueprints API operation for Amazon Lightsail. +// GetOperations API operation for Amazon Lightsail. // -// Returns a list of available database blueprints in Amazon Lightsail. A blueprint -// describes the major engine version of a database. +// Returns information about all operations. // -// You can use a blueprint ID to create a new database that runs a specific -// database engine. +// Results are returned from oldest to newest, up to a maximum of 200. Results +// can be paged by making each subsequent call to GetOperations use the maximum +// (last) statusChangedAt value from the previous request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabaseBlueprints for usage and error information. +// API operation GetOperations for usage and error information. // // Returned Error Types: // * ServiceException @@ -8492,84 +9212,80 @@ func (c *Lightsail) GetRelationalDatabaseBlueprintsRequest(input *GetRelationalD // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseBlueprints -func (c *Lightsail) GetRelationalDatabaseBlueprints(input *GetRelationalDatabaseBlueprintsInput) (*GetRelationalDatabaseBlueprintsOutput, error) { - req, out := c.GetRelationalDatabaseBlueprintsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperations +func (c *Lightsail) GetOperations(input *GetOperationsInput) (*GetOperationsOutput, error) { + req, out := c.GetOperationsRequest(input) return out, req.Send() } -// GetRelationalDatabaseBlueprintsWithContext is the same as GetRelationalDatabaseBlueprints with the addition of +// GetOperationsWithContext is the same as GetOperations with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabaseBlueprints for details on how to use this API operation. +// See GetOperations for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseBlueprintsWithContext(ctx aws.Context, input *GetRelationalDatabaseBlueprintsInput, opts ...request.Option) (*GetRelationalDatabaseBlueprintsOutput, error) { - req, out := c.GetRelationalDatabaseBlueprintsRequest(input) +func (c *Lightsail) GetOperationsWithContext(ctx aws.Context, input *GetOperationsInput, opts ...request.Option) (*GetOperationsOutput, error) { + req, out := c.GetOperationsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabaseBundles = "GetRelationalDatabaseBundles" +const opGetOperationsForResource = "GetOperationsForResource" -// GetRelationalDatabaseBundlesRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabaseBundles operation. The "output" return +// GetOperationsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the GetOperationsForResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabaseBundles for more information on using the GetRelationalDatabaseBundles +// See GetOperationsForResource for more information on using the GetOperationsForResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseBundlesRequest method. -// req, resp := client.GetRelationalDatabaseBundlesRequest(params) +// // Example sending a request using the GetOperationsForResourceRequest method. +// req, resp := client.GetOperationsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseBundles -func (c *Lightsail) GetRelationalDatabaseBundlesRequest(input *GetRelationalDatabaseBundlesInput) (req *request.Request, output *GetRelationalDatabaseBundlesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperationsForResource +func (c *Lightsail) GetOperationsForResourceRequest(input *GetOperationsForResourceInput) (req *request.Request, output *GetOperationsForResourceOutput) { op := &request.Operation{ - Name: opGetRelationalDatabaseBundles, + Name: opGetOperationsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseBundlesInput{} + input = &GetOperationsForResourceInput{} } - output = &GetRelationalDatabaseBundlesOutput{} + output = &GetOperationsForResourceOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabaseBundles API operation for Amazon Lightsail. -// -// Returns the list of bundles that are available in Amazon Lightsail. A bundle -// describes the performance specifications for a database. +// GetOperationsForResource API operation for Amazon Lightsail. // -// You can use a bundle ID to create a new database with explicit performance -// specifications. +// Gets operations for a specific resource (e.g., an instance or a static IP). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabaseBundles for usage and error information. +// API operation GetOperationsForResource for usage and error information. // // Returned Error Types: // * ServiceException @@ -8600,80 +9316,81 @@ func (c *Lightsail) GetRelationalDatabaseBundlesRequest(input *GetRelationalData // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseBundles -func (c *Lightsail) GetRelationalDatabaseBundles(input *GetRelationalDatabaseBundlesInput) (*GetRelationalDatabaseBundlesOutput, error) { - req, out := c.GetRelationalDatabaseBundlesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetOperationsForResource +func (c *Lightsail) GetOperationsForResource(input *GetOperationsForResourceInput) (*GetOperationsForResourceOutput, error) { + req, out := c.GetOperationsForResourceRequest(input) return out, req.Send() } -// GetRelationalDatabaseBundlesWithContext is the same as GetRelationalDatabaseBundles with the addition of +// GetOperationsForResourceWithContext is the same as GetOperationsForResource with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabaseBundles for details on how to use this API operation. +// See GetOperationsForResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseBundlesWithContext(ctx aws.Context, input *GetRelationalDatabaseBundlesInput, opts ...request.Option) (*GetRelationalDatabaseBundlesOutput, error) { - req, out := c.GetRelationalDatabaseBundlesRequest(input) +func (c *Lightsail) GetOperationsForResourceWithContext(ctx aws.Context, input *GetOperationsForResourceInput, opts ...request.Option) (*GetOperationsForResourceOutput, error) { + req, out := c.GetOperationsForResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabaseEvents = "GetRelationalDatabaseEvents" +const opGetRegions = "GetRegions" -// GetRelationalDatabaseEventsRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabaseEvents operation. The "output" return +// GetRegionsRequest generates a "aws/request.Request" representing the +// client's request for the GetRegions operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabaseEvents for more information on using the GetRelationalDatabaseEvents +// See GetRegions for more information on using the GetRegions // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseEventsRequest method. -// req, resp := client.GetRelationalDatabaseEventsRequest(params) +// // Example sending a request using the GetRegionsRequest method. +// req, resp := client.GetRegionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseEvents -func (c *Lightsail) GetRelationalDatabaseEventsRequest(input *GetRelationalDatabaseEventsInput) (req *request.Request, output *GetRelationalDatabaseEventsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRegions +func (c *Lightsail) GetRegionsRequest(input *GetRegionsInput) (req *request.Request, output *GetRegionsOutput) { op := &request.Operation{ - Name: opGetRelationalDatabaseEvents, + Name: opGetRegions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseEventsInput{} + input = &GetRegionsInput{} } - output = &GetRelationalDatabaseEventsOutput{} + output = &GetRegionsOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabaseEvents API operation for Amazon Lightsail. +// GetRegions API operation for Amazon Lightsail. // -// Returns a list of events for a specific database in Amazon Lightsail. +// Returns a list of all valid regions for Amazon Lightsail. Use the include +// availability zones parameter to also return the Availability Zones in a region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabaseEvents for usage and error information. +// API operation GetRegions for usage and error information. // // Returned Error Types: // * ServiceException @@ -8704,80 +9421,80 @@ func (c *Lightsail) GetRelationalDatabaseEventsRequest(input *GetRelationalDatab // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseEvents -func (c *Lightsail) GetRelationalDatabaseEvents(input *GetRelationalDatabaseEventsInput) (*GetRelationalDatabaseEventsOutput, error) { - req, out := c.GetRelationalDatabaseEventsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRegions +func (c *Lightsail) GetRegions(input *GetRegionsInput) (*GetRegionsOutput, error) { + req, out := c.GetRegionsRequest(input) return out, req.Send() } -// GetRelationalDatabaseEventsWithContext is the same as GetRelationalDatabaseEvents with the addition of +// GetRegionsWithContext is the same as GetRegions with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabaseEvents for details on how to use this API operation. +// See GetRegions for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseEventsWithContext(ctx aws.Context, input *GetRelationalDatabaseEventsInput, opts ...request.Option) (*GetRelationalDatabaseEventsOutput, error) { - req, out := c.GetRelationalDatabaseEventsRequest(input) +func (c *Lightsail) GetRegionsWithContext(ctx aws.Context, input *GetRegionsInput, opts ...request.Option) (*GetRegionsOutput, error) { + req, out := c.GetRegionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabaseLogEvents = "GetRelationalDatabaseLogEvents" +const opGetRelationalDatabase = "GetRelationalDatabase" -// GetRelationalDatabaseLogEventsRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabaseLogEvents operation. The "output" return +// GetRelationalDatabaseRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabase operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabaseLogEvents for more information on using the GetRelationalDatabaseLogEvents +// See GetRelationalDatabase for more information on using the GetRelationalDatabase // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseLogEventsRequest method. -// req, resp := client.GetRelationalDatabaseLogEventsRequest(params) +// // Example sending a request using the GetRelationalDatabaseRequest method. +// req, resp := client.GetRelationalDatabaseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseLogEvents -func (c *Lightsail) GetRelationalDatabaseLogEventsRequest(input *GetRelationalDatabaseLogEventsInput) (req *request.Request, output *GetRelationalDatabaseLogEventsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabase +func (c *Lightsail) GetRelationalDatabaseRequest(input *GetRelationalDatabaseInput) (req *request.Request, output *GetRelationalDatabaseOutput) { op := &request.Operation{ - Name: opGetRelationalDatabaseLogEvents, + Name: opGetRelationalDatabase, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseLogEventsInput{} + input = &GetRelationalDatabaseInput{} } - output = &GetRelationalDatabaseLogEventsOutput{} + output = &GetRelationalDatabaseOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabaseLogEvents API operation for Amazon Lightsail. +// GetRelationalDatabase API operation for Amazon Lightsail. // -// Returns a list of log events for a database in Amazon Lightsail. +// Returns information about a specific database in Amazon Lightsail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabaseLogEvents for usage and error information. +// API operation GetRelationalDatabase for usage and error information. // // Returned Error Types: // * ServiceException @@ -8808,81 +9525,84 @@ func (c *Lightsail) GetRelationalDatabaseLogEventsRequest(input *GetRelationalDa // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseLogEvents -func (c *Lightsail) GetRelationalDatabaseLogEvents(input *GetRelationalDatabaseLogEventsInput) (*GetRelationalDatabaseLogEventsOutput, error) { - req, out := c.GetRelationalDatabaseLogEventsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabase +func (c *Lightsail) GetRelationalDatabase(input *GetRelationalDatabaseInput) (*GetRelationalDatabaseOutput, error) { + req, out := c.GetRelationalDatabaseRequest(input) return out, req.Send() } -// GetRelationalDatabaseLogEventsWithContext is the same as GetRelationalDatabaseLogEvents with the addition of +// GetRelationalDatabaseWithContext is the same as GetRelationalDatabase with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabaseLogEvents for details on how to use this API operation. +// See GetRelationalDatabase for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseLogEventsWithContext(ctx aws.Context, input *GetRelationalDatabaseLogEventsInput, opts ...request.Option) (*GetRelationalDatabaseLogEventsOutput, error) { - req, out := c.GetRelationalDatabaseLogEventsRequest(input) +func (c *Lightsail) GetRelationalDatabaseWithContext(ctx aws.Context, input *GetRelationalDatabaseInput, opts ...request.Option) (*GetRelationalDatabaseOutput, error) { + req, out := c.GetRelationalDatabaseRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabaseLogStreams = "GetRelationalDatabaseLogStreams" +const opGetRelationalDatabaseBlueprints = "GetRelationalDatabaseBlueprints" -// GetRelationalDatabaseLogStreamsRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabaseLogStreams operation. The "output" return +// GetRelationalDatabaseBlueprintsRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabaseBlueprints operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabaseLogStreams for more information on using the GetRelationalDatabaseLogStreams +// See GetRelationalDatabaseBlueprints for more information on using the GetRelationalDatabaseBlueprints // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseLogStreamsRequest method. -// req, resp := client.GetRelationalDatabaseLogStreamsRequest(params) +// // Example sending a request using the GetRelationalDatabaseBlueprintsRequest method. +// req, resp := client.GetRelationalDatabaseBlueprintsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseLogStreams -func (c *Lightsail) GetRelationalDatabaseLogStreamsRequest(input *GetRelationalDatabaseLogStreamsInput) (req *request.Request, output *GetRelationalDatabaseLogStreamsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseBlueprints +func (c *Lightsail) GetRelationalDatabaseBlueprintsRequest(input *GetRelationalDatabaseBlueprintsInput) (req *request.Request, output *GetRelationalDatabaseBlueprintsOutput) { op := &request.Operation{ - Name: opGetRelationalDatabaseLogStreams, + Name: opGetRelationalDatabaseBlueprints, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseLogStreamsInput{} + input = &GetRelationalDatabaseBlueprintsInput{} } - output = &GetRelationalDatabaseLogStreamsOutput{} + output = &GetRelationalDatabaseBlueprintsOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabaseLogStreams API operation for Amazon Lightsail. +// GetRelationalDatabaseBlueprints API operation for Amazon Lightsail. // -// Returns a list of available log streams for a specific database in Amazon -// Lightsail. +// Returns a list of available database blueprints in Amazon Lightsail. A blueprint +// describes the major engine version of a database. +// +// You can use a blueprint ID to create a new database that runs a specific +// database engine. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabaseLogStreams for usage and error information. +// API operation GetRelationalDatabaseBlueprints for usage and error information. // // Returned Error Types: // * ServiceException @@ -8913,84 +9633,84 @@ func (c *Lightsail) GetRelationalDatabaseLogStreamsRequest(input *GetRelationalD // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseLogStreams -func (c *Lightsail) GetRelationalDatabaseLogStreams(input *GetRelationalDatabaseLogStreamsInput) (*GetRelationalDatabaseLogStreamsOutput, error) { - req, out := c.GetRelationalDatabaseLogStreamsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseBlueprints +func (c *Lightsail) GetRelationalDatabaseBlueprints(input *GetRelationalDatabaseBlueprintsInput) (*GetRelationalDatabaseBlueprintsOutput, error) { + req, out := c.GetRelationalDatabaseBlueprintsRequest(input) return out, req.Send() } -// GetRelationalDatabaseLogStreamsWithContext is the same as GetRelationalDatabaseLogStreams with the addition of +// GetRelationalDatabaseBlueprintsWithContext is the same as GetRelationalDatabaseBlueprints with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabaseLogStreams for details on how to use this API operation. +// See GetRelationalDatabaseBlueprints for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseLogStreamsWithContext(ctx aws.Context, input *GetRelationalDatabaseLogStreamsInput, opts ...request.Option) (*GetRelationalDatabaseLogStreamsOutput, error) { - req, out := c.GetRelationalDatabaseLogStreamsRequest(input) +func (c *Lightsail) GetRelationalDatabaseBlueprintsWithContext(ctx aws.Context, input *GetRelationalDatabaseBlueprintsInput, opts ...request.Option) (*GetRelationalDatabaseBlueprintsOutput, error) { + req, out := c.GetRelationalDatabaseBlueprintsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabaseMasterUserPassword = "GetRelationalDatabaseMasterUserPassword" +const opGetRelationalDatabaseBundles = "GetRelationalDatabaseBundles" -// GetRelationalDatabaseMasterUserPasswordRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabaseMasterUserPassword operation. The "output" return +// GetRelationalDatabaseBundlesRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabaseBundles operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabaseMasterUserPassword for more information on using the GetRelationalDatabaseMasterUserPassword +// See GetRelationalDatabaseBundles for more information on using the GetRelationalDatabaseBundles // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseMasterUserPasswordRequest method. -// req, resp := client.GetRelationalDatabaseMasterUserPasswordRequest(params) +// // Example sending a request using the GetRelationalDatabaseBundlesRequest method. +// req, resp := client.GetRelationalDatabaseBundlesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseMasterUserPassword -func (c *Lightsail) GetRelationalDatabaseMasterUserPasswordRequest(input *GetRelationalDatabaseMasterUserPasswordInput) (req *request.Request, output *GetRelationalDatabaseMasterUserPasswordOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseBundles +func (c *Lightsail) GetRelationalDatabaseBundlesRequest(input *GetRelationalDatabaseBundlesInput) (req *request.Request, output *GetRelationalDatabaseBundlesOutput) { op := &request.Operation{ - Name: opGetRelationalDatabaseMasterUserPassword, + Name: opGetRelationalDatabaseBundles, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseMasterUserPasswordInput{} + input = &GetRelationalDatabaseBundlesInput{} } - output = &GetRelationalDatabaseMasterUserPasswordOutput{} + output = &GetRelationalDatabaseBundlesOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabaseMasterUserPassword API operation for Amazon Lightsail. +// GetRelationalDatabaseBundles API operation for Amazon Lightsail. // -// Returns the current, previous, or pending versions of the master user password -// for a Lightsail database. +// Returns the list of bundles that are available in Amazon Lightsail. A bundle +// describes the performance specifications for a database. // -// The GetRelationalDatabaseMasterUserPassword operation supports tag-based -// access control via resource tags applied to the resource identified by relationalDatabaseName. +// You can use a bundle ID to create a new database with explicit performance +// specifications. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabaseMasterUserPassword for usage and error information. +// API operation GetRelationalDatabaseBundles for usage and error information. // // Returned Error Types: // * ServiceException @@ -9021,85 +9741,80 @@ func (c *Lightsail) GetRelationalDatabaseMasterUserPasswordRequest(input *GetRel // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseMasterUserPassword -func (c *Lightsail) GetRelationalDatabaseMasterUserPassword(input *GetRelationalDatabaseMasterUserPasswordInput) (*GetRelationalDatabaseMasterUserPasswordOutput, error) { - req, out := c.GetRelationalDatabaseMasterUserPasswordRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseBundles +func (c *Lightsail) GetRelationalDatabaseBundles(input *GetRelationalDatabaseBundlesInput) (*GetRelationalDatabaseBundlesOutput, error) { + req, out := c.GetRelationalDatabaseBundlesRequest(input) return out, req.Send() } -// GetRelationalDatabaseMasterUserPasswordWithContext is the same as GetRelationalDatabaseMasterUserPassword with the addition of +// GetRelationalDatabaseBundlesWithContext is the same as GetRelationalDatabaseBundles with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabaseMasterUserPassword for details on how to use this API operation. +// See GetRelationalDatabaseBundles for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseMasterUserPasswordWithContext(ctx aws.Context, input *GetRelationalDatabaseMasterUserPasswordInput, opts ...request.Option) (*GetRelationalDatabaseMasterUserPasswordOutput, error) { - req, out := c.GetRelationalDatabaseMasterUserPasswordRequest(input) - req.SetContext(ctx) +func (c *Lightsail) GetRelationalDatabaseBundlesWithContext(ctx aws.Context, input *GetRelationalDatabaseBundlesInput, opts ...request.Option) (*GetRelationalDatabaseBundlesOutput, error) { + req, out := c.GetRelationalDatabaseBundlesRequest(input) + req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabaseMetricData = "GetRelationalDatabaseMetricData" +const opGetRelationalDatabaseEvents = "GetRelationalDatabaseEvents" -// GetRelationalDatabaseMetricDataRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabaseMetricData operation. The "output" return +// GetRelationalDatabaseEventsRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabaseEvents operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabaseMetricData for more information on using the GetRelationalDatabaseMetricData +// See GetRelationalDatabaseEvents for more information on using the GetRelationalDatabaseEvents // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseMetricDataRequest method. -// req, resp := client.GetRelationalDatabaseMetricDataRequest(params) +// // Example sending a request using the GetRelationalDatabaseEventsRequest method. +// req, resp := client.GetRelationalDatabaseEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseMetricData -func (c *Lightsail) GetRelationalDatabaseMetricDataRequest(input *GetRelationalDatabaseMetricDataInput) (req *request.Request, output *GetRelationalDatabaseMetricDataOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseEvents +func (c *Lightsail) GetRelationalDatabaseEventsRequest(input *GetRelationalDatabaseEventsInput) (req *request.Request, output *GetRelationalDatabaseEventsOutput) { op := &request.Operation{ - Name: opGetRelationalDatabaseMetricData, + Name: opGetRelationalDatabaseEvents, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseMetricDataInput{} + input = &GetRelationalDatabaseEventsInput{} } - output = &GetRelationalDatabaseMetricDataOutput{} + output = &GetRelationalDatabaseEventsOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabaseMetricData API operation for Amazon Lightsail. -// -// Returns the data points of the specified metric for a database in Amazon -// Lightsail. +// GetRelationalDatabaseEvents API operation for Amazon Lightsail. // -// 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. +// Returns a list of events for a specific database in Amazon Lightsail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabaseMetricData for usage and error information. +// API operation GetRelationalDatabaseEvents for usage and error information. // // Returned Error Types: // * ServiceException @@ -9130,86 +9845,80 @@ func (c *Lightsail) GetRelationalDatabaseMetricDataRequest(input *GetRelationalD // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseMetricData -func (c *Lightsail) GetRelationalDatabaseMetricData(input *GetRelationalDatabaseMetricDataInput) (*GetRelationalDatabaseMetricDataOutput, error) { - req, out := c.GetRelationalDatabaseMetricDataRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseEvents +func (c *Lightsail) GetRelationalDatabaseEvents(input *GetRelationalDatabaseEventsInput) (*GetRelationalDatabaseEventsOutput, error) { + req, out := c.GetRelationalDatabaseEventsRequest(input) return out, req.Send() } -// GetRelationalDatabaseMetricDataWithContext is the same as GetRelationalDatabaseMetricData with the addition of +// GetRelationalDatabaseEventsWithContext is the same as GetRelationalDatabaseEvents with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabaseMetricData for details on how to use this API operation. +// See GetRelationalDatabaseEvents for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseMetricDataWithContext(ctx aws.Context, input *GetRelationalDatabaseMetricDataInput, opts ...request.Option) (*GetRelationalDatabaseMetricDataOutput, error) { - req, out := c.GetRelationalDatabaseMetricDataRequest(input) +func (c *Lightsail) GetRelationalDatabaseEventsWithContext(ctx aws.Context, input *GetRelationalDatabaseEventsInput, opts ...request.Option) (*GetRelationalDatabaseEventsOutput, error) { + req, out := c.GetRelationalDatabaseEventsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabaseParameters = "GetRelationalDatabaseParameters" +const opGetRelationalDatabaseLogEvents = "GetRelationalDatabaseLogEvents" -// GetRelationalDatabaseParametersRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabaseParameters operation. The "output" return +// GetRelationalDatabaseLogEventsRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabaseLogEvents operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabaseParameters for more information on using the GetRelationalDatabaseParameters +// See GetRelationalDatabaseLogEvents for more information on using the GetRelationalDatabaseLogEvents // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseParametersRequest method. -// req, resp := client.GetRelationalDatabaseParametersRequest(params) +// // Example sending a request using the GetRelationalDatabaseLogEventsRequest method. +// req, resp := client.GetRelationalDatabaseLogEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseParameters -func (c *Lightsail) GetRelationalDatabaseParametersRequest(input *GetRelationalDatabaseParametersInput) (req *request.Request, output *GetRelationalDatabaseParametersOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseLogEvents +func (c *Lightsail) GetRelationalDatabaseLogEventsRequest(input *GetRelationalDatabaseLogEventsInput) (req *request.Request, output *GetRelationalDatabaseLogEventsOutput) { op := &request.Operation{ - Name: opGetRelationalDatabaseParameters, + Name: opGetRelationalDatabaseLogEvents, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseParametersInput{} + input = &GetRelationalDatabaseLogEventsInput{} } - output = &GetRelationalDatabaseParametersOutput{} + output = &GetRelationalDatabaseLogEventsOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabaseParameters API operation for Amazon Lightsail. -// -// Returns all of the runtime parameters offered by the underlying database -// software, or engine, for a specific database in Amazon Lightsail. +// GetRelationalDatabaseLogEvents API operation for Amazon Lightsail. // -// In addition to the parameter names and values, this operation returns other -// information about each parameter. This information includes whether changes -// require a reboot, whether the parameter is modifiable, the allowed values, -// and the data types. +// Returns a list of log events for a database in Amazon Lightsail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabaseParameters for usage and error information. +// API operation GetRelationalDatabaseLogEvents for usage and error information. // // Returned Error Types: // * ServiceException @@ -9240,80 +9949,81 @@ func (c *Lightsail) GetRelationalDatabaseParametersRequest(input *GetRelationalD // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseParameters -func (c *Lightsail) GetRelationalDatabaseParameters(input *GetRelationalDatabaseParametersInput) (*GetRelationalDatabaseParametersOutput, error) { - req, out := c.GetRelationalDatabaseParametersRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseLogEvents +func (c *Lightsail) GetRelationalDatabaseLogEvents(input *GetRelationalDatabaseLogEventsInput) (*GetRelationalDatabaseLogEventsOutput, error) { + req, out := c.GetRelationalDatabaseLogEventsRequest(input) return out, req.Send() } -// GetRelationalDatabaseParametersWithContext is the same as GetRelationalDatabaseParameters with the addition of +// GetRelationalDatabaseLogEventsWithContext is the same as GetRelationalDatabaseLogEvents with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabaseParameters for details on how to use this API operation. +// See GetRelationalDatabaseLogEvents for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseParametersWithContext(ctx aws.Context, input *GetRelationalDatabaseParametersInput, opts ...request.Option) (*GetRelationalDatabaseParametersOutput, error) { - req, out := c.GetRelationalDatabaseParametersRequest(input) +func (c *Lightsail) GetRelationalDatabaseLogEventsWithContext(ctx aws.Context, input *GetRelationalDatabaseLogEventsInput, opts ...request.Option) (*GetRelationalDatabaseLogEventsOutput, error) { + req, out := c.GetRelationalDatabaseLogEventsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabaseSnapshot = "GetRelationalDatabaseSnapshot" +const opGetRelationalDatabaseLogStreams = "GetRelationalDatabaseLogStreams" -// GetRelationalDatabaseSnapshotRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabaseSnapshot operation. The "output" return +// GetRelationalDatabaseLogStreamsRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabaseLogStreams operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabaseSnapshot for more information on using the GetRelationalDatabaseSnapshot +// See GetRelationalDatabaseLogStreams for more information on using the GetRelationalDatabaseLogStreams // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseSnapshotRequest method. -// req, resp := client.GetRelationalDatabaseSnapshotRequest(params) +// // Example sending a request using the GetRelationalDatabaseLogStreamsRequest method. +// req, resp := client.GetRelationalDatabaseLogStreamsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseSnapshot -func (c *Lightsail) GetRelationalDatabaseSnapshotRequest(input *GetRelationalDatabaseSnapshotInput) (req *request.Request, output *GetRelationalDatabaseSnapshotOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseLogStreams +func (c *Lightsail) GetRelationalDatabaseLogStreamsRequest(input *GetRelationalDatabaseLogStreamsInput) (req *request.Request, output *GetRelationalDatabaseLogStreamsOutput) { op := &request.Operation{ - Name: opGetRelationalDatabaseSnapshot, + Name: opGetRelationalDatabaseLogStreams, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseSnapshotInput{} + input = &GetRelationalDatabaseLogStreamsInput{} } - output = &GetRelationalDatabaseSnapshotOutput{} + output = &GetRelationalDatabaseLogStreamsOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabaseSnapshot API operation for Amazon Lightsail. +// GetRelationalDatabaseLogStreams API operation for Amazon Lightsail. // -// Returns information about a specific database snapshot in Amazon Lightsail. +// Returns a list of available log streams for a specific database in Amazon +// Lightsail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabaseSnapshot for usage and error information. +// API operation GetRelationalDatabaseLogStreams for usage and error information. // // Returned Error Types: // * ServiceException @@ -9344,80 +10054,84 @@ func (c *Lightsail) GetRelationalDatabaseSnapshotRequest(input *GetRelationalDat // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseSnapshot -func (c *Lightsail) GetRelationalDatabaseSnapshot(input *GetRelationalDatabaseSnapshotInput) (*GetRelationalDatabaseSnapshotOutput, error) { - req, out := c.GetRelationalDatabaseSnapshotRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseLogStreams +func (c *Lightsail) GetRelationalDatabaseLogStreams(input *GetRelationalDatabaseLogStreamsInput) (*GetRelationalDatabaseLogStreamsOutput, error) { + req, out := c.GetRelationalDatabaseLogStreamsRequest(input) return out, req.Send() } -// GetRelationalDatabaseSnapshotWithContext is the same as GetRelationalDatabaseSnapshot with the addition of +// GetRelationalDatabaseLogStreamsWithContext is the same as GetRelationalDatabaseLogStreams with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabaseSnapshot for details on how to use this API operation. +// See GetRelationalDatabaseLogStreams for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseSnapshotWithContext(ctx aws.Context, input *GetRelationalDatabaseSnapshotInput, opts ...request.Option) (*GetRelationalDatabaseSnapshotOutput, error) { - req, out := c.GetRelationalDatabaseSnapshotRequest(input) +func (c *Lightsail) GetRelationalDatabaseLogStreamsWithContext(ctx aws.Context, input *GetRelationalDatabaseLogStreamsInput, opts ...request.Option) (*GetRelationalDatabaseLogStreamsOutput, error) { + req, out := c.GetRelationalDatabaseLogStreamsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabaseSnapshots = "GetRelationalDatabaseSnapshots" +const opGetRelationalDatabaseMasterUserPassword = "GetRelationalDatabaseMasterUserPassword" -// GetRelationalDatabaseSnapshotsRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabaseSnapshots operation. The "output" return +// GetRelationalDatabaseMasterUserPasswordRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabaseMasterUserPassword operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabaseSnapshots for more information on using the GetRelationalDatabaseSnapshots +// See GetRelationalDatabaseMasterUserPassword for more information on using the GetRelationalDatabaseMasterUserPassword // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabaseSnapshotsRequest method. -// req, resp := client.GetRelationalDatabaseSnapshotsRequest(params) +// // Example sending a request using the GetRelationalDatabaseMasterUserPasswordRequest method. +// req, resp := client.GetRelationalDatabaseMasterUserPasswordRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseSnapshots -func (c *Lightsail) GetRelationalDatabaseSnapshotsRequest(input *GetRelationalDatabaseSnapshotsInput) (req *request.Request, output *GetRelationalDatabaseSnapshotsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseMasterUserPassword +func (c *Lightsail) GetRelationalDatabaseMasterUserPasswordRequest(input *GetRelationalDatabaseMasterUserPasswordInput) (req *request.Request, output *GetRelationalDatabaseMasterUserPasswordOutput) { op := &request.Operation{ - Name: opGetRelationalDatabaseSnapshots, + Name: opGetRelationalDatabaseMasterUserPassword, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabaseSnapshotsInput{} + input = &GetRelationalDatabaseMasterUserPasswordInput{} } - output = &GetRelationalDatabaseSnapshotsOutput{} + output = &GetRelationalDatabaseMasterUserPasswordOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabaseSnapshots API operation for Amazon Lightsail. +// GetRelationalDatabaseMasterUserPassword API operation for Amazon Lightsail. // -// Returns information about all of your database snapshots in Amazon Lightsail. +// Returns the current, previous, or pending versions of the master user password +// for a Lightsail database. +// +// The GetRelationalDatabaseMasterUserPassword operation supports tag-based +// access control via resource tags applied to the resource identified by relationalDatabaseName. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabaseSnapshots for usage and error information. +// API operation GetRelationalDatabaseMasterUserPassword for usage and error information. // // Returned Error Types: // * ServiceException @@ -9448,80 +10162,85 @@ func (c *Lightsail) GetRelationalDatabaseSnapshotsRequest(input *GetRelationalDa // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseSnapshots -func (c *Lightsail) GetRelationalDatabaseSnapshots(input *GetRelationalDatabaseSnapshotsInput) (*GetRelationalDatabaseSnapshotsOutput, error) { - req, out := c.GetRelationalDatabaseSnapshotsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseMasterUserPassword +func (c *Lightsail) GetRelationalDatabaseMasterUserPassword(input *GetRelationalDatabaseMasterUserPasswordInput) (*GetRelationalDatabaseMasterUserPasswordOutput, error) { + req, out := c.GetRelationalDatabaseMasterUserPasswordRequest(input) return out, req.Send() } -// GetRelationalDatabaseSnapshotsWithContext is the same as GetRelationalDatabaseSnapshots with the addition of +// GetRelationalDatabaseMasterUserPasswordWithContext is the same as GetRelationalDatabaseMasterUserPassword with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabaseSnapshots for details on how to use this API operation. +// See GetRelationalDatabaseMasterUserPassword for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabaseSnapshotsWithContext(ctx aws.Context, input *GetRelationalDatabaseSnapshotsInput, opts ...request.Option) (*GetRelationalDatabaseSnapshotsOutput, error) { - req, out := c.GetRelationalDatabaseSnapshotsRequest(input) +func (c *Lightsail) GetRelationalDatabaseMasterUserPasswordWithContext(ctx aws.Context, input *GetRelationalDatabaseMasterUserPasswordInput, opts ...request.Option) (*GetRelationalDatabaseMasterUserPasswordOutput, error) { + req, out := c.GetRelationalDatabaseMasterUserPasswordRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetRelationalDatabases = "GetRelationalDatabases" +const opGetRelationalDatabaseMetricData = "GetRelationalDatabaseMetricData" -// GetRelationalDatabasesRequest generates a "aws/request.Request" representing the -// client's request for the GetRelationalDatabases operation. The "output" return +// GetRelationalDatabaseMetricDataRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabaseMetricData operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetRelationalDatabases for more information on using the GetRelationalDatabases +// See GetRelationalDatabaseMetricData for more information on using the GetRelationalDatabaseMetricData // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetRelationalDatabasesRequest method. -// req, resp := client.GetRelationalDatabasesRequest(params) +// // Example sending a request using the GetRelationalDatabaseMetricDataRequest method. +// req, resp := client.GetRelationalDatabaseMetricDataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabases -func (c *Lightsail) GetRelationalDatabasesRequest(input *GetRelationalDatabasesInput) (req *request.Request, output *GetRelationalDatabasesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseMetricData +func (c *Lightsail) GetRelationalDatabaseMetricDataRequest(input *GetRelationalDatabaseMetricDataInput) (req *request.Request, output *GetRelationalDatabaseMetricDataOutput) { op := &request.Operation{ - Name: opGetRelationalDatabases, + Name: opGetRelationalDatabaseMetricData, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetRelationalDatabasesInput{} + input = &GetRelationalDatabaseMetricDataInput{} } - output = &GetRelationalDatabasesOutput{} + output = &GetRelationalDatabaseMetricDataOutput{} req = c.newRequest(op, input, output) return } -// GetRelationalDatabases API operation for Amazon Lightsail. +// GetRelationalDatabaseMetricData API operation for Amazon Lightsail. // -// Returns information about all of your databases in Amazon Lightsail. +// Returns the data points of the specified metric for a database in Amazon +// Lightsail. +// +// 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetRelationalDatabases for usage and error information. +// API operation GetRelationalDatabaseMetricData for usage and error information. // // Returned Error Types: // * ServiceException @@ -9552,80 +10271,86 @@ func (c *Lightsail) GetRelationalDatabasesRequest(input *GetRelationalDatabasesI // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabases -func (c *Lightsail) GetRelationalDatabases(input *GetRelationalDatabasesInput) (*GetRelationalDatabasesOutput, error) { - req, out := c.GetRelationalDatabasesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseMetricData +func (c *Lightsail) GetRelationalDatabaseMetricData(input *GetRelationalDatabaseMetricDataInput) (*GetRelationalDatabaseMetricDataOutput, error) { + req, out := c.GetRelationalDatabaseMetricDataRequest(input) return out, req.Send() } -// GetRelationalDatabasesWithContext is the same as GetRelationalDatabases with the addition of +// GetRelationalDatabaseMetricDataWithContext is the same as GetRelationalDatabaseMetricData with the addition of // the ability to pass a context and additional request options. // -// See GetRelationalDatabases for details on how to use this API operation. +// See GetRelationalDatabaseMetricData for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetRelationalDatabasesWithContext(ctx aws.Context, input *GetRelationalDatabasesInput, opts ...request.Option) (*GetRelationalDatabasesOutput, error) { - req, out := c.GetRelationalDatabasesRequest(input) +func (c *Lightsail) GetRelationalDatabaseMetricDataWithContext(ctx aws.Context, input *GetRelationalDatabaseMetricDataInput, opts ...request.Option) (*GetRelationalDatabaseMetricDataOutput, error) { + req, out := c.GetRelationalDatabaseMetricDataRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetStaticIp = "GetStaticIp" +const opGetRelationalDatabaseParameters = "GetRelationalDatabaseParameters" -// GetStaticIpRequest generates a "aws/request.Request" representing the -// client's request for the GetStaticIp operation. The "output" return +// GetRelationalDatabaseParametersRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabaseParameters operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetStaticIp for more information on using the GetStaticIp +// See GetRelationalDatabaseParameters for more information on using the GetRelationalDatabaseParameters // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetStaticIpRequest method. -// req, resp := client.GetStaticIpRequest(params) +// // Example sending a request using the GetRelationalDatabaseParametersRequest method. +// req, resp := client.GetRelationalDatabaseParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetStaticIp -func (c *Lightsail) GetStaticIpRequest(input *GetStaticIpInput) (req *request.Request, output *GetStaticIpOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseParameters +func (c *Lightsail) GetRelationalDatabaseParametersRequest(input *GetRelationalDatabaseParametersInput) (req *request.Request, output *GetRelationalDatabaseParametersOutput) { op := &request.Operation{ - Name: opGetStaticIp, + Name: opGetRelationalDatabaseParameters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetStaticIpInput{} + input = &GetRelationalDatabaseParametersInput{} } - output = &GetStaticIpOutput{} + output = &GetRelationalDatabaseParametersOutput{} req = c.newRequest(op, input, output) return } -// GetStaticIp API operation for Amazon Lightsail. +// GetRelationalDatabaseParameters API operation for Amazon Lightsail. // -// Returns information about a specific static IP. +// Returns all of the runtime parameters offered by the underlying database +// software, or engine, for a specific database in Amazon Lightsail. +// +// In addition to the parameter names and values, this operation returns other +// information about each parameter. This information includes whether changes +// require a reboot, whether the parameter is modifiable, the allowed values, +// and the data types. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetStaticIp for usage and error information. +// API operation GetRelationalDatabaseParameters for usage and error information. // // Returned Error Types: // * ServiceException @@ -9656,80 +10381,80 @@ func (c *Lightsail) GetStaticIpRequest(input *GetStaticIpInput) (req *request.Re // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetStaticIp -func (c *Lightsail) GetStaticIp(input *GetStaticIpInput) (*GetStaticIpOutput, error) { - req, out := c.GetStaticIpRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseParameters +func (c *Lightsail) GetRelationalDatabaseParameters(input *GetRelationalDatabaseParametersInput) (*GetRelationalDatabaseParametersOutput, error) { + req, out := c.GetRelationalDatabaseParametersRequest(input) return out, req.Send() } -// GetStaticIpWithContext is the same as GetStaticIp with the addition of +// GetRelationalDatabaseParametersWithContext is the same as GetRelationalDatabaseParameters with the addition of // the ability to pass a context and additional request options. // -// See GetStaticIp for details on how to use this API operation. +// See GetRelationalDatabaseParameters for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetStaticIpWithContext(ctx aws.Context, input *GetStaticIpInput, opts ...request.Option) (*GetStaticIpOutput, error) { - req, out := c.GetStaticIpRequest(input) +func (c *Lightsail) GetRelationalDatabaseParametersWithContext(ctx aws.Context, input *GetRelationalDatabaseParametersInput, opts ...request.Option) (*GetRelationalDatabaseParametersOutput, error) { + req, out := c.GetRelationalDatabaseParametersRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetStaticIps = "GetStaticIps" +const opGetRelationalDatabaseSnapshot = "GetRelationalDatabaseSnapshot" -// GetStaticIpsRequest generates a "aws/request.Request" representing the -// client's request for the GetStaticIps operation. The "output" return +// GetRelationalDatabaseSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabaseSnapshot operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetStaticIps for more information on using the GetStaticIps +// See GetRelationalDatabaseSnapshot for more information on using the GetRelationalDatabaseSnapshot // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetStaticIpsRequest method. -// req, resp := client.GetStaticIpsRequest(params) +// // Example sending a request using the GetRelationalDatabaseSnapshotRequest method. +// req, resp := client.GetRelationalDatabaseSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetStaticIps -func (c *Lightsail) GetStaticIpsRequest(input *GetStaticIpsInput) (req *request.Request, output *GetStaticIpsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseSnapshot +func (c *Lightsail) GetRelationalDatabaseSnapshotRequest(input *GetRelationalDatabaseSnapshotInput) (req *request.Request, output *GetRelationalDatabaseSnapshotOutput) { op := &request.Operation{ - Name: opGetStaticIps, + Name: opGetRelationalDatabaseSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetStaticIpsInput{} + input = &GetRelationalDatabaseSnapshotInput{} } - output = &GetStaticIpsOutput{} + output = &GetRelationalDatabaseSnapshotOutput{} req = c.newRequest(op, input, output) return } -// GetStaticIps API operation for Amazon Lightsail. +// GetRelationalDatabaseSnapshot API operation for Amazon Lightsail. // -// Returns information about all static IPs in the user's account. +// Returns information about a specific database snapshot in Amazon Lightsail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation GetStaticIps for usage and error information. +// API operation GetRelationalDatabaseSnapshot for usage and error information. // // Returned Error Types: // * ServiceException @@ -9760,80 +10485,80 @@ func (c *Lightsail) GetStaticIpsRequest(input *GetStaticIpsInput) (req *request. // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetStaticIps -func (c *Lightsail) GetStaticIps(input *GetStaticIpsInput) (*GetStaticIpsOutput, error) { - req, out := c.GetStaticIpsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseSnapshot +func (c *Lightsail) GetRelationalDatabaseSnapshot(input *GetRelationalDatabaseSnapshotInput) (*GetRelationalDatabaseSnapshotOutput, error) { + req, out := c.GetRelationalDatabaseSnapshotRequest(input) return out, req.Send() } -// GetStaticIpsWithContext is the same as GetStaticIps with the addition of +// GetRelationalDatabaseSnapshotWithContext is the same as GetRelationalDatabaseSnapshot with the addition of // the ability to pass a context and additional request options. // -// See GetStaticIps for details on how to use this API operation. +// See GetRelationalDatabaseSnapshot for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) GetStaticIpsWithContext(ctx aws.Context, input *GetStaticIpsInput, opts ...request.Option) (*GetStaticIpsOutput, error) { - req, out := c.GetStaticIpsRequest(input) +func (c *Lightsail) GetRelationalDatabaseSnapshotWithContext(ctx aws.Context, input *GetRelationalDatabaseSnapshotInput, opts ...request.Option) (*GetRelationalDatabaseSnapshotOutput, error) { + req, out := c.GetRelationalDatabaseSnapshotRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opImportKeyPair = "ImportKeyPair" +const opGetRelationalDatabaseSnapshots = "GetRelationalDatabaseSnapshots" -// ImportKeyPairRequest generates a "aws/request.Request" representing the -// client's request for the ImportKeyPair operation. The "output" return +// GetRelationalDatabaseSnapshotsRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabaseSnapshots operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ImportKeyPair for more information on using the ImportKeyPair +// See GetRelationalDatabaseSnapshots for more information on using the GetRelationalDatabaseSnapshots // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ImportKeyPairRequest method. -// req, resp := client.ImportKeyPairRequest(params) +// // Example sending a request using the GetRelationalDatabaseSnapshotsRequest method. +// req, resp := client.GetRelationalDatabaseSnapshotsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/ImportKeyPair -func (c *Lightsail) ImportKeyPairRequest(input *ImportKeyPairInput) (req *request.Request, output *ImportKeyPairOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseSnapshots +func (c *Lightsail) GetRelationalDatabaseSnapshotsRequest(input *GetRelationalDatabaseSnapshotsInput) (req *request.Request, output *GetRelationalDatabaseSnapshotsOutput) { op := &request.Operation{ - Name: opImportKeyPair, + Name: opGetRelationalDatabaseSnapshots, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &ImportKeyPairInput{} + input = &GetRelationalDatabaseSnapshotsInput{} } - output = &ImportKeyPairOutput{} + output = &GetRelationalDatabaseSnapshotsOutput{} req = c.newRequest(op, input, output) return } -// ImportKeyPair API operation for Amazon Lightsail. +// GetRelationalDatabaseSnapshots API operation for Amazon Lightsail. // -// Imports a public SSH key from a specific key pair. +// Returns information about all of your database snapshots in Amazon Lightsail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation ImportKeyPair for usage and error information. +// API operation GetRelationalDatabaseSnapshots for usage and error information. // // Returned Error Types: // * ServiceException @@ -9864,80 +10589,80 @@ func (c *Lightsail) ImportKeyPairRequest(input *ImportKeyPairInput) (req *reques // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/ImportKeyPair -func (c *Lightsail) ImportKeyPair(input *ImportKeyPairInput) (*ImportKeyPairOutput, error) { - req, out := c.ImportKeyPairRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabaseSnapshots +func (c *Lightsail) GetRelationalDatabaseSnapshots(input *GetRelationalDatabaseSnapshotsInput) (*GetRelationalDatabaseSnapshotsOutput, error) { + req, out := c.GetRelationalDatabaseSnapshotsRequest(input) return out, req.Send() } -// ImportKeyPairWithContext is the same as ImportKeyPair with the addition of +// GetRelationalDatabaseSnapshotsWithContext is the same as GetRelationalDatabaseSnapshots with the addition of // the ability to pass a context and additional request options. // -// See ImportKeyPair for details on how to use this API operation. +// See GetRelationalDatabaseSnapshots for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) ImportKeyPairWithContext(ctx aws.Context, input *ImportKeyPairInput, opts ...request.Option) (*ImportKeyPairOutput, error) { - req, out := c.ImportKeyPairRequest(input) +func (c *Lightsail) GetRelationalDatabaseSnapshotsWithContext(ctx aws.Context, input *GetRelationalDatabaseSnapshotsInput, opts ...request.Option) (*GetRelationalDatabaseSnapshotsOutput, error) { + req, out := c.GetRelationalDatabaseSnapshotsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opIsVpcPeered = "IsVpcPeered" +const opGetRelationalDatabases = "GetRelationalDatabases" -// IsVpcPeeredRequest generates a "aws/request.Request" representing the -// client's request for the IsVpcPeered operation. The "output" return +// GetRelationalDatabasesRequest generates a "aws/request.Request" representing the +// client's request for the GetRelationalDatabases operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See IsVpcPeered for more information on using the IsVpcPeered +// See GetRelationalDatabases for more information on using the GetRelationalDatabases // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the IsVpcPeeredRequest method. -// req, resp := client.IsVpcPeeredRequest(params) +// // Example sending a request using the GetRelationalDatabasesRequest method. +// req, resp := client.GetRelationalDatabasesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/IsVpcPeered -func (c *Lightsail) IsVpcPeeredRequest(input *IsVpcPeeredInput) (req *request.Request, output *IsVpcPeeredOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabases +func (c *Lightsail) GetRelationalDatabasesRequest(input *GetRelationalDatabasesInput) (req *request.Request, output *GetRelationalDatabasesOutput) { op := &request.Operation{ - Name: opIsVpcPeered, + Name: opGetRelationalDatabases, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &IsVpcPeeredInput{} + input = &GetRelationalDatabasesInput{} } - output = &IsVpcPeeredOutput{} + output = &GetRelationalDatabasesOutput{} req = c.newRequest(op, input, output) return } -// IsVpcPeered API operation for Amazon Lightsail. +// GetRelationalDatabases API operation for Amazon Lightsail. // -// Returns a Boolean value indicating whether your Lightsail VPC is peered. +// Returns information about all of your databases in Amazon Lightsail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation IsVpcPeered for usage and error information. +// API operation GetRelationalDatabases for usage and error information. // // Returned Error Types: // * ServiceException @@ -9968,85 +10693,80 @@ func (c *Lightsail) IsVpcPeeredRequest(input *IsVpcPeeredInput) (req *request.Re // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/IsVpcPeered -func (c *Lightsail) IsVpcPeered(input *IsVpcPeeredInput) (*IsVpcPeeredOutput, error) { - req, out := c.IsVpcPeeredRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetRelationalDatabases +func (c *Lightsail) GetRelationalDatabases(input *GetRelationalDatabasesInput) (*GetRelationalDatabasesOutput, error) { + req, out := c.GetRelationalDatabasesRequest(input) return out, req.Send() } -// IsVpcPeeredWithContext is the same as IsVpcPeered with the addition of +// GetRelationalDatabasesWithContext is the same as GetRelationalDatabases with the addition of // the ability to pass a context and additional request options. // -// See IsVpcPeered for details on how to use this API operation. +// See GetRelationalDatabases for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) IsVpcPeeredWithContext(ctx aws.Context, input *IsVpcPeeredInput, opts ...request.Option) (*IsVpcPeeredOutput, error) { - req, out := c.IsVpcPeeredRequest(input) +func (c *Lightsail) GetRelationalDatabasesWithContext(ctx aws.Context, input *GetRelationalDatabasesInput, opts ...request.Option) (*GetRelationalDatabasesOutput, error) { + req, out := c.GetRelationalDatabasesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opOpenInstancePublicPorts = "OpenInstancePublicPorts" +const opGetStaticIp = "GetStaticIp" -// OpenInstancePublicPortsRequest generates a "aws/request.Request" representing the -// client's request for the OpenInstancePublicPorts operation. The "output" return +// GetStaticIpRequest generates a "aws/request.Request" representing the +// client's request for the GetStaticIp operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See OpenInstancePublicPorts for more information on using the OpenInstancePublicPorts +// See GetStaticIp for more information on using the GetStaticIp // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the OpenInstancePublicPortsRequest method. -// req, resp := client.OpenInstancePublicPortsRequest(params) +// // Example sending a request using the GetStaticIpRequest method. +// req, resp := client.GetStaticIpRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/OpenInstancePublicPorts -func (c *Lightsail) OpenInstancePublicPortsRequest(input *OpenInstancePublicPortsInput) (req *request.Request, output *OpenInstancePublicPortsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetStaticIp +func (c *Lightsail) GetStaticIpRequest(input *GetStaticIpInput) (req *request.Request, output *GetStaticIpOutput) { op := &request.Operation{ - Name: opOpenInstancePublicPorts, + Name: opGetStaticIp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &OpenInstancePublicPortsInput{} + input = &GetStaticIpInput{} } - output = &OpenInstancePublicPortsOutput{} + output = &GetStaticIpOutput{} req = c.newRequest(op, input, output) return } -// OpenInstancePublicPorts API operation for Amazon Lightsail. -// -// Opens ports for a specific Amazon Lightsail instance, and specifies the IP -// addresses allowed to connect to the instance through the ports, and the protocol. +// GetStaticIp API operation for Amazon Lightsail. // -// The OpenInstancePublicPorts action supports tag-based access control via -// resource tags applied to the resource identified by instanceName. For more -// information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// Returns information about a specific static IP. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation OpenInstancePublicPorts for usage and error information. +// API operation GetStaticIp for usage and error information. // // Returned Error Types: // * ServiceException @@ -10077,80 +10797,80 @@ func (c *Lightsail) OpenInstancePublicPortsRequest(input *OpenInstancePublicPort // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/OpenInstancePublicPorts -func (c *Lightsail) OpenInstancePublicPorts(input *OpenInstancePublicPortsInput) (*OpenInstancePublicPortsOutput, error) { - req, out := c.OpenInstancePublicPortsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetStaticIp +func (c *Lightsail) GetStaticIp(input *GetStaticIpInput) (*GetStaticIpOutput, error) { + req, out := c.GetStaticIpRequest(input) return out, req.Send() } -// OpenInstancePublicPortsWithContext is the same as OpenInstancePublicPorts with the addition of +// GetStaticIpWithContext is the same as GetStaticIp with the addition of // the ability to pass a context and additional request options. // -// See OpenInstancePublicPorts for details on how to use this API operation. +// See GetStaticIp for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) OpenInstancePublicPortsWithContext(ctx aws.Context, input *OpenInstancePublicPortsInput, opts ...request.Option) (*OpenInstancePublicPortsOutput, error) { - req, out := c.OpenInstancePublicPortsRequest(input) +func (c *Lightsail) GetStaticIpWithContext(ctx aws.Context, input *GetStaticIpInput, opts ...request.Option) (*GetStaticIpOutput, error) { + req, out := c.GetStaticIpRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opPeerVpc = "PeerVpc" +const opGetStaticIps = "GetStaticIps" -// PeerVpcRequest generates a "aws/request.Request" representing the -// client's request for the PeerVpc operation. The "output" return +// GetStaticIpsRequest generates a "aws/request.Request" representing the +// client's request for the GetStaticIps operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See PeerVpc for more information on using the PeerVpc +// See GetStaticIps for more information on using the GetStaticIps // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the PeerVpcRequest method. -// req, resp := client.PeerVpcRequest(params) +// // Example sending a request using the GetStaticIpsRequest method. +// req, resp := client.GetStaticIpsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PeerVpc -func (c *Lightsail) PeerVpcRequest(input *PeerVpcInput) (req *request.Request, output *PeerVpcOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetStaticIps +func (c *Lightsail) GetStaticIpsRequest(input *GetStaticIpsInput) (req *request.Request, output *GetStaticIpsOutput) { op := &request.Operation{ - Name: opPeerVpc, + Name: opGetStaticIps, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &PeerVpcInput{} + input = &GetStaticIpsInput{} } - output = &PeerVpcOutput{} + output = &GetStaticIpsOutput{} req = c.newRequest(op, input, output) return } -// PeerVpc API operation for Amazon Lightsail. +// GetStaticIps API operation for Amazon Lightsail. // -// Tries to peer the Lightsail VPC with the user's default VPC. +// Returns information about all static IPs in the user's account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation PeerVpc for usage and error information. +// API operation GetStaticIps for usage and error information. // // Returned Error Types: // * ServiceException @@ -10181,93 +10901,80 @@ func (c *Lightsail) PeerVpcRequest(input *PeerVpcInput) (req *request.Request, o // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PeerVpc -func (c *Lightsail) PeerVpc(input *PeerVpcInput) (*PeerVpcOutput, error) { - req, out := c.PeerVpcRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/GetStaticIps +func (c *Lightsail) GetStaticIps(input *GetStaticIpsInput) (*GetStaticIpsOutput, error) { + req, out := c.GetStaticIpsRequest(input) return out, req.Send() } -// PeerVpcWithContext is the same as PeerVpc with the addition of +// GetStaticIpsWithContext is the same as GetStaticIps with the addition of // the ability to pass a context and additional request options. // -// See PeerVpc for details on how to use this API operation. +// See GetStaticIps for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) PeerVpcWithContext(ctx aws.Context, input *PeerVpcInput, opts ...request.Option) (*PeerVpcOutput, error) { - req, out := c.PeerVpcRequest(input) +func (c *Lightsail) GetStaticIpsWithContext(ctx aws.Context, input *GetStaticIpsInput, opts ...request.Option) (*GetStaticIpsOutput, error) { + req, out := c.GetStaticIpsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opPutAlarm = "PutAlarm" +const opImportKeyPair = "ImportKeyPair" -// PutAlarmRequest generates a "aws/request.Request" representing the -// client's request for the PutAlarm operation. The "output" return +// ImportKeyPairRequest generates a "aws/request.Request" representing the +// client's request for the ImportKeyPair operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See PutAlarm for more information on using the PutAlarm +// See ImportKeyPair for more information on using the ImportKeyPair // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the PutAlarmRequest method. -// req, resp := client.PutAlarmRequest(params) +// // Example sending a request using the ImportKeyPairRequest method. +// req, resp := client.ImportKeyPairRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PutAlarm -func (c *Lightsail) PutAlarmRequest(input *PutAlarmInput) (req *request.Request, output *PutAlarmOutput) { - op := &request.Operation{ - Name: opPutAlarm, +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/ImportKeyPair +func (c *Lightsail) ImportKeyPairRequest(input *ImportKeyPairInput) (req *request.Request, output *ImportKeyPairOutput) { + op := &request.Operation{ + Name: opImportKeyPair, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &PutAlarmInput{} + input = &ImportKeyPairInput{} } - output = &PutAlarmOutput{} + output = &ImportKeyPairOutput{} req = c.newRequest(op, input, output) return } -// PutAlarm API operation for Amazon Lightsail. -// -// Creates or updates an alarm, and associates it with the specified metric. -// -// An alarm is used to monitor a single metric for one of your resources. When -// a metric condition is met, the alarm can notify you by email, SMS text message, -// and a banner displayed on the Amazon Lightsail console. For more information, -// see Alarms in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-alarms). -// -// When this action creates an alarm, the alarm state is immediately set to -// INSUFFICIENT_DATA. The alarm is then evaluated and its state is set appropriately. -// Any actions associated with the new state are then executed. +// ImportKeyPair API operation for Amazon Lightsail. // -// When you update an existing alarm, its state is left unchanged, but the update -// completely overwrites the previous configuration of the alarm. The alarm -// is then evaluated with the updated configuration. +// Imports a public SSH key from a specific key pair. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation PutAlarm for usage and error information. +// API operation ImportKeyPair for usage and error information. // // Returned Error Types: // * ServiceException @@ -10281,6 +10988,9 @@ func (c *Lightsail) PutAlarmRequest(input *PutAlarmInput) (req *request.Request, // Please set your AWS Region configuration to us-east-1 to create, view, or // edit these resources. // +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// // * OperationFailureException // Lightsail throws this exception when an operation fails to execute. // @@ -10288,95 +10998,87 @@ func (c *Lightsail) PutAlarmRequest(input *PutAlarmInput) (req *request.Request, // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // +// * AccountSetupInProgressException +// Lightsail throws this exception when an account is still in the setup in +// progress state. +// // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// * NotFoundException -// Lightsail throws this exception when it cannot find a resource. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PutAlarm -func (c *Lightsail) PutAlarm(input *PutAlarmInput) (*PutAlarmOutput, error) { - req, out := c.PutAlarmRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/ImportKeyPair +func (c *Lightsail) ImportKeyPair(input *ImportKeyPairInput) (*ImportKeyPairOutput, error) { + req, out := c.ImportKeyPairRequest(input) return out, req.Send() } -// PutAlarmWithContext is the same as PutAlarm with the addition of +// ImportKeyPairWithContext is the same as ImportKeyPair with the addition of // the ability to pass a context and additional request options. // -// See PutAlarm for details on how to use this API operation. +// See ImportKeyPair for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) PutAlarmWithContext(ctx aws.Context, input *PutAlarmInput, opts ...request.Option) (*PutAlarmOutput, error) { - req, out := c.PutAlarmRequest(input) +func (c *Lightsail) ImportKeyPairWithContext(ctx aws.Context, input *ImportKeyPairInput, opts ...request.Option) (*ImportKeyPairOutput, error) { + req, out := c.ImportKeyPairRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opPutInstancePublicPorts = "PutInstancePublicPorts" +const opIsVpcPeered = "IsVpcPeered" -// PutInstancePublicPortsRequest generates a "aws/request.Request" representing the -// client's request for the PutInstancePublicPorts operation. The "output" return +// IsVpcPeeredRequest generates a "aws/request.Request" representing the +// client's request for the IsVpcPeered operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See PutInstancePublicPorts for more information on using the PutInstancePublicPorts +// See IsVpcPeered for more information on using the IsVpcPeered // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the PutInstancePublicPortsRequest method. -// req, resp := client.PutInstancePublicPortsRequest(params) +// // Example sending a request using the IsVpcPeeredRequest method. +// req, resp := client.IsVpcPeeredRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PutInstancePublicPorts -func (c *Lightsail) PutInstancePublicPortsRequest(input *PutInstancePublicPortsInput) (req *request.Request, output *PutInstancePublicPortsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/IsVpcPeered +func (c *Lightsail) IsVpcPeeredRequest(input *IsVpcPeeredInput) (req *request.Request, output *IsVpcPeeredOutput) { op := &request.Operation{ - Name: opPutInstancePublicPorts, + Name: opIsVpcPeered, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &PutInstancePublicPortsInput{} + input = &IsVpcPeeredInput{} } - output = &PutInstancePublicPortsOutput{} + output = &IsVpcPeeredOutput{} req = c.newRequest(op, input, output) return } -// PutInstancePublicPorts API operation for Amazon Lightsail. -// -// Opens ports for a specific Amazon Lightsail instance, and specifies the IP -// addresses allowed to connect to the instance through the ports, and the protocol. -// This action also closes all currently open ports that are not included in -// the request. Include all of the ports and the protocols you want to open -// in your PutInstancePublicPortsrequest. Or use the OpenInstancePublicPorts -// action to open ports without closing currently open ports. +// IsVpcPeered API operation for Amazon Lightsail. // -// The PutInstancePublicPorts action supports tag-based access control via resource -// tags applied to the resource identified by instanceName. For more information, -// see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// Returns a Boolean value indicating whether your Lightsail VPC is peered. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation PutInstancePublicPorts for usage and error information. +// API operation IsVpcPeered for usage and error information. // // Returned Error Types: // * ServiceException @@ -10407,84 +11109,85 @@ func (c *Lightsail) PutInstancePublicPortsRequest(input *PutInstancePublicPortsI // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PutInstancePublicPorts -func (c *Lightsail) PutInstancePublicPorts(input *PutInstancePublicPortsInput) (*PutInstancePublicPortsOutput, error) { - req, out := c.PutInstancePublicPortsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/IsVpcPeered +func (c *Lightsail) IsVpcPeered(input *IsVpcPeeredInput) (*IsVpcPeeredOutput, error) { + req, out := c.IsVpcPeeredRequest(input) return out, req.Send() } -// PutInstancePublicPortsWithContext is the same as PutInstancePublicPorts with the addition of +// IsVpcPeeredWithContext is the same as IsVpcPeered with the addition of // the ability to pass a context and additional request options. // -// See PutInstancePublicPorts for details on how to use this API operation. +// See IsVpcPeered for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) PutInstancePublicPortsWithContext(ctx aws.Context, input *PutInstancePublicPortsInput, opts ...request.Option) (*PutInstancePublicPortsOutput, error) { - req, out := c.PutInstancePublicPortsRequest(input) +func (c *Lightsail) IsVpcPeeredWithContext(ctx aws.Context, input *IsVpcPeeredInput, opts ...request.Option) (*IsVpcPeeredOutput, error) { + req, out := c.IsVpcPeeredRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opRebootInstance = "RebootInstance" +const opOpenInstancePublicPorts = "OpenInstancePublicPorts" -// RebootInstanceRequest generates a "aws/request.Request" representing the -// client's request for the RebootInstance operation. The "output" return +// OpenInstancePublicPortsRequest generates a "aws/request.Request" representing the +// client's request for the OpenInstancePublicPorts operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See RebootInstance for more information on using the RebootInstance +// See OpenInstancePublicPorts for more information on using the OpenInstancePublicPorts // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the RebootInstanceRequest method. -// req, resp := client.RebootInstanceRequest(params) +// // Example sending a request using the OpenInstancePublicPortsRequest method. +// req, resp := client.OpenInstancePublicPortsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/RebootInstance -func (c *Lightsail) RebootInstanceRequest(input *RebootInstanceInput) (req *request.Request, output *RebootInstanceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/OpenInstancePublicPorts +func (c *Lightsail) OpenInstancePublicPortsRequest(input *OpenInstancePublicPortsInput) (req *request.Request, output *OpenInstancePublicPortsOutput) { op := &request.Operation{ - Name: opRebootInstance, + Name: opOpenInstancePublicPorts, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &RebootInstanceInput{} + input = &OpenInstancePublicPortsInput{} } - output = &RebootInstanceOutput{} + output = &OpenInstancePublicPortsOutput{} req = c.newRequest(op, input, output) return } -// RebootInstance API operation for Amazon Lightsail. +// OpenInstancePublicPorts API operation for Amazon Lightsail. // -// Restarts a specific instance. +// Opens ports for a specific Amazon Lightsail instance, and specifies the IP +// addresses allowed to connect to the instance through the ports, and the protocol. // -// The reboot instance operation supports tag-based access control via resource -// tags applied to the resource identified by instance name. For more information, -// see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// The OpenInstancePublicPorts action supports tag-based access control via +// resource tags applied to the resource identified by instanceName. For more +// information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation RebootInstance for usage and error information. +// API operation OpenInstancePublicPorts for usage and error information. // // Returned Error Types: // * ServiceException @@ -10515,84 +11218,80 @@ func (c *Lightsail) RebootInstanceRequest(input *RebootInstanceInput) (req *requ // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/RebootInstance -func (c *Lightsail) RebootInstance(input *RebootInstanceInput) (*RebootInstanceOutput, error) { - req, out := c.RebootInstanceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/OpenInstancePublicPorts +func (c *Lightsail) OpenInstancePublicPorts(input *OpenInstancePublicPortsInput) (*OpenInstancePublicPortsOutput, error) { + req, out := c.OpenInstancePublicPortsRequest(input) return out, req.Send() } -// RebootInstanceWithContext is the same as RebootInstance with the addition of +// OpenInstancePublicPortsWithContext is the same as OpenInstancePublicPorts with the addition of // the ability to pass a context and additional request options. // -// See RebootInstance for details on how to use this API operation. +// See OpenInstancePublicPorts for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) RebootInstanceWithContext(ctx aws.Context, input *RebootInstanceInput, opts ...request.Option) (*RebootInstanceOutput, error) { - req, out := c.RebootInstanceRequest(input) +func (c *Lightsail) OpenInstancePublicPortsWithContext(ctx aws.Context, input *OpenInstancePublicPortsInput, opts ...request.Option) (*OpenInstancePublicPortsOutput, error) { + req, out := c.OpenInstancePublicPortsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opRebootRelationalDatabase = "RebootRelationalDatabase" +const opPeerVpc = "PeerVpc" -// RebootRelationalDatabaseRequest generates a "aws/request.Request" representing the -// client's request for the RebootRelationalDatabase operation. The "output" return +// PeerVpcRequest generates a "aws/request.Request" representing the +// client's request for the PeerVpc operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See RebootRelationalDatabase for more information on using the RebootRelationalDatabase +// See PeerVpc for more information on using the PeerVpc // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the RebootRelationalDatabaseRequest method. -// req, resp := client.RebootRelationalDatabaseRequest(params) +// // Example sending a request using the PeerVpcRequest method. +// req, resp := client.PeerVpcRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/RebootRelationalDatabase -func (c *Lightsail) RebootRelationalDatabaseRequest(input *RebootRelationalDatabaseInput) (req *request.Request, output *RebootRelationalDatabaseOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PeerVpc +func (c *Lightsail) PeerVpcRequest(input *PeerVpcInput) (req *request.Request, output *PeerVpcOutput) { op := &request.Operation{ - Name: opRebootRelationalDatabase, + Name: opPeerVpc, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &RebootRelationalDatabaseInput{} + input = &PeerVpcInput{} } - output = &RebootRelationalDatabaseOutput{} + output = &PeerVpcOutput{} req = c.newRequest(op, input, output) return } -// RebootRelationalDatabase API operation for Amazon Lightsail. -// -// Restarts a specific database in Amazon Lightsail. +// PeerVpc API operation for Amazon Lightsail. // -// The reboot relational database operation supports tag-based access control -// via resource tags applied to the resource identified by relationalDatabaseName. -// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// Tries to peer the Lightsail VPC with the user's default VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation RebootRelationalDatabase for usage and error information. +// API operation PeerVpc for usage and error information. // // Returned Error Types: // * ServiceException @@ -10623,80 +11322,93 @@ func (c *Lightsail) RebootRelationalDatabaseRequest(input *RebootRelationalDatab // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/RebootRelationalDatabase -func (c *Lightsail) RebootRelationalDatabase(input *RebootRelationalDatabaseInput) (*RebootRelationalDatabaseOutput, error) { - req, out := c.RebootRelationalDatabaseRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PeerVpc +func (c *Lightsail) PeerVpc(input *PeerVpcInput) (*PeerVpcOutput, error) { + req, out := c.PeerVpcRequest(input) return out, req.Send() } -// RebootRelationalDatabaseWithContext is the same as RebootRelationalDatabase with the addition of +// PeerVpcWithContext is the same as PeerVpc with the addition of // the ability to pass a context and additional request options. // -// See RebootRelationalDatabase for details on how to use this API operation. +// See PeerVpc for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) RebootRelationalDatabaseWithContext(ctx aws.Context, input *RebootRelationalDatabaseInput, opts ...request.Option) (*RebootRelationalDatabaseOutput, error) { - req, out := c.RebootRelationalDatabaseRequest(input) +func (c *Lightsail) PeerVpcWithContext(ctx aws.Context, input *PeerVpcInput, opts ...request.Option) (*PeerVpcOutput, error) { + req, out := c.PeerVpcRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opReleaseStaticIp = "ReleaseStaticIp" +const opPutAlarm = "PutAlarm" -// ReleaseStaticIpRequest generates a "aws/request.Request" representing the -// client's request for the ReleaseStaticIp operation. The "output" return +// PutAlarmRequest generates a "aws/request.Request" representing the +// client's request for the PutAlarm operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ReleaseStaticIp for more information on using the ReleaseStaticIp +// See PutAlarm for more information on using the PutAlarm // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ReleaseStaticIpRequest method. -// req, resp := client.ReleaseStaticIpRequest(params) +// // Example sending a request using the PutAlarmRequest method. +// req, resp := client.PutAlarmRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/ReleaseStaticIp -func (c *Lightsail) ReleaseStaticIpRequest(input *ReleaseStaticIpInput) (req *request.Request, output *ReleaseStaticIpOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PutAlarm +func (c *Lightsail) PutAlarmRequest(input *PutAlarmInput) (req *request.Request, output *PutAlarmOutput) { op := &request.Operation{ - Name: opReleaseStaticIp, + Name: opPutAlarm, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &ReleaseStaticIpInput{} + input = &PutAlarmInput{} } - output = &ReleaseStaticIpOutput{} + output = &PutAlarmOutput{} req = c.newRequest(op, input, output) return } -// ReleaseStaticIp API operation for Amazon Lightsail. +// PutAlarm API operation for Amazon Lightsail. // -// Deletes a specific static IP from your account. +// Creates or updates an alarm, and associates it with the specified metric. +// +// An alarm is used to monitor a single metric for one of your resources. When +// a metric condition is met, the alarm can notify you by email, SMS text message, +// and a banner displayed on the Amazon Lightsail console. For more information, +// see Alarms in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-alarms). +// +// When this action creates an alarm, the alarm state is immediately set to +// INSUFFICIENT_DATA. The alarm is then evaluated and its state is set appropriately. +// Any actions associated with the new state are then executed. +// +// When you update an existing alarm, its state is left unchanged, but the update +// completely overwrites the previous configuration of the alarm. The alarm +// is then evaluated with the updated configuration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation ReleaseStaticIp for usage and error information. +// API operation PutAlarm for usage and error information. // // Returned Error Types: // * ServiceException @@ -10710,9 +11422,6 @@ func (c *Lightsail) ReleaseStaticIpRequest(input *ReleaseStaticIpInput) (req *re // Please set your AWS Region configuration to us-east-1 to create, view, or // edit these resources. // -// * NotFoundException -// Lightsail throws this exception when it cannot find a resource. -// // * OperationFailureException // Lightsail throws this exception when an operation fails to execute. // @@ -10720,101 +11429,95 @@ func (c *Lightsail) ReleaseStaticIpRequest(input *ReleaseStaticIpInput) (req *re // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // -// * AccountSetupInProgressException -// Lightsail throws this exception when an account is still in the setup in -// progress state. -// // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/ReleaseStaticIp -func (c *Lightsail) ReleaseStaticIp(input *ReleaseStaticIpInput) (*ReleaseStaticIpOutput, error) { - req, out := c.ReleaseStaticIpRequest(input) +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PutAlarm +func (c *Lightsail) PutAlarm(input *PutAlarmInput) (*PutAlarmOutput, error) { + req, out := c.PutAlarmRequest(input) return out, req.Send() } -// ReleaseStaticIpWithContext is the same as ReleaseStaticIp with the addition of +// PutAlarmWithContext is the same as PutAlarm with the addition of // the ability to pass a context and additional request options. // -// See ReleaseStaticIp for details on how to use this API operation. +// See PutAlarm for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) ReleaseStaticIpWithContext(ctx aws.Context, input *ReleaseStaticIpInput, opts ...request.Option) (*ReleaseStaticIpOutput, error) { - req, out := c.ReleaseStaticIpRequest(input) +func (c *Lightsail) PutAlarmWithContext(ctx aws.Context, input *PutAlarmInput, opts ...request.Option) (*PutAlarmOutput, error) { + req, out := c.PutAlarmRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opSendContactMethodVerification = "SendContactMethodVerification" +const opPutInstancePublicPorts = "PutInstancePublicPorts" -// SendContactMethodVerificationRequest generates a "aws/request.Request" representing the -// client's request for the SendContactMethodVerification operation. The "output" return +// PutInstancePublicPortsRequest generates a "aws/request.Request" representing the +// client's request for the PutInstancePublicPorts operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See SendContactMethodVerification for more information on using the SendContactMethodVerification +// See PutInstancePublicPorts for more information on using the PutInstancePublicPorts // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the SendContactMethodVerificationRequest method. -// req, resp := client.SendContactMethodVerificationRequest(params) +// // Example sending a request using the PutInstancePublicPortsRequest method. +// req, resp := client.PutInstancePublicPortsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/SendContactMethodVerification -func (c *Lightsail) SendContactMethodVerificationRequest(input *SendContactMethodVerificationInput) (req *request.Request, output *SendContactMethodVerificationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PutInstancePublicPorts +func (c *Lightsail) PutInstancePublicPortsRequest(input *PutInstancePublicPortsInput) (req *request.Request, output *PutInstancePublicPortsOutput) { op := &request.Operation{ - Name: opSendContactMethodVerification, + Name: opPutInstancePublicPorts, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &SendContactMethodVerificationInput{} + input = &PutInstancePublicPortsInput{} } - output = &SendContactMethodVerificationOutput{} + output = &PutInstancePublicPortsOutput{} req = c.newRequest(op, input, output) return } -// SendContactMethodVerification API operation for Amazon Lightsail. -// -// Sends a verification request to an email contact method to ensure it's owned -// by the requester. SMS contact methods don't need to be verified. -// -// A contact method is used to send you notifications about your Amazon Lightsail -// resources. You can add one email address and one mobile phone number contact -// method in each AWS Region. However, SMS text messaging is not supported in -// some AWS Regions, and SMS text messages cannot be sent to some countries/regions. -// For more information, see Notifications in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-notifications). +// PutInstancePublicPorts API operation for Amazon Lightsail. // -// A verification request is sent to the contact method when you initially create -// it. Use this action to send another verification request if a previous verification -// request was deleted, or has expired. +// Opens ports for a specific Amazon Lightsail instance, and specifies the IP +// addresses allowed to connect to the instance through the ports, and the protocol. +// This action also closes all currently open ports that are not included in +// the request. Include all of the ports and the protocols you want to open +// in your PutInstancePublicPortsrequest. Or use the OpenInstancePublicPorts +// action to open ports without closing currently open ports. // -// Notifications are not sent to an email contact method until after it is verified, -// and confirmed as valid. +// The PutInstancePublicPorts action supports tag-based access control via resource +// tags applied to the resource identified by instanceName. For more information, +// see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation SendContactMethodVerification for usage and error information. +// API operation PutInstancePublicPorts for usage and error information. // // Returned Error Types: // * ServiceException @@ -10828,94 +11531,92 @@ func (c *Lightsail) SendContactMethodVerificationRequest(input *SendContactMetho // Please set your AWS Region configuration to us-east-1 to create, view, or // edit these resources. // +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// // * OperationFailureException // Lightsail throws this exception when an operation fails to execute. // -// * UnauthenticatedException -// Lightsail throws this exception when the user has not been authenticated. -// // * AccessDeniedException // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // -// * NotFoundException -// Lightsail throws this exception when it cannot find a resource. +// * AccountSetupInProgressException +// Lightsail throws this exception when an account is still in the setup in +// progress state. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/SendContactMethodVerification -func (c *Lightsail) SendContactMethodVerification(input *SendContactMethodVerificationInput) (*SendContactMethodVerificationOutput, error) { - req, out := c.SendContactMethodVerificationRequest(input) +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PutInstancePublicPorts +func (c *Lightsail) PutInstancePublicPorts(input *PutInstancePublicPortsInput) (*PutInstancePublicPortsOutput, error) { + req, out := c.PutInstancePublicPortsRequest(input) return out, req.Send() } -// SendContactMethodVerificationWithContext is the same as SendContactMethodVerification with the addition of +// PutInstancePublicPortsWithContext is the same as PutInstancePublicPorts with the addition of // the ability to pass a context and additional request options. // -// See SendContactMethodVerification for details on how to use this API operation. +// See PutInstancePublicPorts for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) SendContactMethodVerificationWithContext(ctx aws.Context, input *SendContactMethodVerificationInput, opts ...request.Option) (*SendContactMethodVerificationOutput, error) { - req, out := c.SendContactMethodVerificationRequest(input) +func (c *Lightsail) PutInstancePublicPortsWithContext(ctx aws.Context, input *PutInstancePublicPortsInput, opts ...request.Option) (*PutInstancePublicPortsOutput, error) { + req, out := c.PutInstancePublicPortsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStartInstance = "StartInstance" +const opRebootInstance = "RebootInstance" -// StartInstanceRequest generates a "aws/request.Request" representing the -// client's request for the StartInstance operation. The "output" return +// RebootInstanceRequest generates a "aws/request.Request" representing the +// client's request for the RebootInstance operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See StartInstance for more information on using the StartInstance +// See RebootInstance for more information on using the RebootInstance // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the StartInstanceRequest method. -// req, resp := client.StartInstanceRequest(params) +// // Example sending a request using the RebootInstanceRequest method. +// req, resp := client.RebootInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StartInstance -func (c *Lightsail) StartInstanceRequest(input *StartInstanceInput) (req *request.Request, output *StartInstanceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/RebootInstance +func (c *Lightsail) RebootInstanceRequest(input *RebootInstanceInput) (req *request.Request, output *RebootInstanceOutput) { op := &request.Operation{ - Name: opStartInstance, + Name: opRebootInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &StartInstanceInput{} + input = &RebootInstanceInput{} } - output = &StartInstanceOutput{} + output = &RebootInstanceOutput{} req = c.newRequest(op, input, output) return } -// StartInstance API operation for Amazon Lightsail. -// -// Starts a specific Amazon Lightsail instance from a stopped state. To restart -// an instance, use the reboot instance operation. +// RebootInstance API operation for Amazon Lightsail. // -// When you start a stopped instance, Lightsail assigns a new public IP address -// to the instance. To use the same IP address after stopping and starting an -// instance, create a static IP address and attach it to the instance. For more -// information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/lightsail-create-static-ip). +// Restarts a specific instance. // -// The start instance operation supports tag-based access control via resource +// The reboot instance operation supports tag-based access control via resource // tags applied to the resource identified by instance name. For more information, // see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). // @@ -10924,7 +11625,7 @@ func (c *Lightsail) StartInstanceRequest(input *StartInstanceInput) (req *reques // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation StartInstance for usage and error information. +// API operation RebootInstance for usage and error information. // // Returned Error Types: // * ServiceException @@ -10955,76 +11656,75 @@ func (c *Lightsail) StartInstanceRequest(input *StartInstanceInput) (req *reques // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StartInstance -func (c *Lightsail) StartInstance(input *StartInstanceInput) (*StartInstanceOutput, error) { - req, out := c.StartInstanceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/RebootInstance +func (c *Lightsail) RebootInstance(input *RebootInstanceInput) (*RebootInstanceOutput, error) { + req, out := c.RebootInstanceRequest(input) return out, req.Send() } -// StartInstanceWithContext is the same as StartInstance with the addition of +// RebootInstanceWithContext is the same as RebootInstance with the addition of // the ability to pass a context and additional request options. // -// See StartInstance for details on how to use this API operation. +// See RebootInstance for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) StartInstanceWithContext(ctx aws.Context, input *StartInstanceInput, opts ...request.Option) (*StartInstanceOutput, error) { - req, out := c.StartInstanceRequest(input) +func (c *Lightsail) RebootInstanceWithContext(ctx aws.Context, input *RebootInstanceInput, opts ...request.Option) (*RebootInstanceOutput, error) { + req, out := c.RebootInstanceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStartRelationalDatabase = "StartRelationalDatabase" +const opRebootRelationalDatabase = "RebootRelationalDatabase" -// StartRelationalDatabaseRequest generates a "aws/request.Request" representing the -// client's request for the StartRelationalDatabase operation. The "output" return +// RebootRelationalDatabaseRequest generates a "aws/request.Request" representing the +// client's request for the RebootRelationalDatabase operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See StartRelationalDatabase for more information on using the StartRelationalDatabase +// See RebootRelationalDatabase for more information on using the RebootRelationalDatabase // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the StartRelationalDatabaseRequest method. -// req, resp := client.StartRelationalDatabaseRequest(params) +// // Example sending a request using the RebootRelationalDatabaseRequest method. +// req, resp := client.RebootRelationalDatabaseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StartRelationalDatabase -func (c *Lightsail) StartRelationalDatabaseRequest(input *StartRelationalDatabaseInput) (req *request.Request, output *StartRelationalDatabaseOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/RebootRelationalDatabase +func (c *Lightsail) RebootRelationalDatabaseRequest(input *RebootRelationalDatabaseInput) (req *request.Request, output *RebootRelationalDatabaseOutput) { op := &request.Operation{ - Name: opStartRelationalDatabase, + Name: opRebootRelationalDatabase, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &StartRelationalDatabaseInput{} + input = &RebootRelationalDatabaseInput{} } - output = &StartRelationalDatabaseOutput{} + output = &RebootRelationalDatabaseOutput{} req = c.newRequest(op, input, output) return } -// StartRelationalDatabase API operation for Amazon Lightsail. +// RebootRelationalDatabase API operation for Amazon Lightsail. // -// Starts a specific database from a stopped state in Amazon Lightsail. To restart -// a database, use the reboot relational database operation. +// Restarts a specific database in Amazon Lightsail. // -// The start relational database operation supports tag-based access control +// The reboot relational database operation supports tag-based access control // via resource tags applied to the resource identified by relationalDatabaseName. // For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). // @@ -11033,7 +11733,7 @@ func (c *Lightsail) StartRelationalDatabaseRequest(input *StartRelationalDatabas // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation StartRelationalDatabase for usage and error information. +// API operation RebootRelationalDatabase for usage and error information. // // Returned Error Types: // * ServiceException @@ -11064,89 +11764,80 @@ func (c *Lightsail) StartRelationalDatabaseRequest(input *StartRelationalDatabas // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StartRelationalDatabase -func (c *Lightsail) StartRelationalDatabase(input *StartRelationalDatabaseInput) (*StartRelationalDatabaseOutput, error) { - req, out := c.StartRelationalDatabaseRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/RebootRelationalDatabase +func (c *Lightsail) RebootRelationalDatabase(input *RebootRelationalDatabaseInput) (*RebootRelationalDatabaseOutput, error) { + req, out := c.RebootRelationalDatabaseRequest(input) return out, req.Send() } -// StartRelationalDatabaseWithContext is the same as StartRelationalDatabase with the addition of +// RebootRelationalDatabaseWithContext is the same as RebootRelationalDatabase with the addition of // the ability to pass a context and additional request options. // -// See StartRelationalDatabase for details on how to use this API operation. +// See RebootRelationalDatabase for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) StartRelationalDatabaseWithContext(ctx aws.Context, input *StartRelationalDatabaseInput, opts ...request.Option) (*StartRelationalDatabaseOutput, error) { - req, out := c.StartRelationalDatabaseRequest(input) +func (c *Lightsail) RebootRelationalDatabaseWithContext(ctx aws.Context, input *RebootRelationalDatabaseInput, opts ...request.Option) (*RebootRelationalDatabaseOutput, error) { + req, out := c.RebootRelationalDatabaseRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStopInstance = "StopInstance" +const opReleaseStaticIp = "ReleaseStaticIp" -// StopInstanceRequest generates a "aws/request.Request" representing the -// client's request for the StopInstance operation. The "output" return +// ReleaseStaticIpRequest generates a "aws/request.Request" representing the +// client's request for the ReleaseStaticIp operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See StopInstance for more information on using the StopInstance +// See ReleaseStaticIp for more information on using the ReleaseStaticIp // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the StopInstanceRequest method. -// req, resp := client.StopInstanceRequest(params) +// // Example sending a request using the ReleaseStaticIpRequest method. +// req, resp := client.ReleaseStaticIpRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StopInstance -func (c *Lightsail) StopInstanceRequest(input *StopInstanceInput) (req *request.Request, output *StopInstanceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/ReleaseStaticIp +func (c *Lightsail) ReleaseStaticIpRequest(input *ReleaseStaticIpInput) (req *request.Request, output *ReleaseStaticIpOutput) { op := &request.Operation{ - Name: opStopInstance, + Name: opReleaseStaticIp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &StopInstanceInput{} + input = &ReleaseStaticIpInput{} } - output = &StopInstanceOutput{} + output = &ReleaseStaticIpOutput{} req = c.newRequest(op, input, output) return } -// StopInstance API operation for Amazon Lightsail. -// -// Stops a specific Amazon Lightsail instance that is currently running. -// -// When you start a stopped instance, Lightsail assigns a new public IP address -// to the instance. To use the same IP address after stopping and starting an -// instance, create a static IP address and attach it to the instance. For more -// information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/lightsail-create-static-ip). +// ReleaseStaticIp API operation for Amazon Lightsail. // -// The stop instance operation supports tag-based access control via resource -// tags applied to the resource identified by instance name. For more information, -// see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// Deletes a specific static IP from your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation StopInstance for usage and error information. +// API operation ReleaseStaticIp for usage and error information. // // Returned Error Types: // * ServiceException @@ -11177,84 +11868,84 @@ func (c *Lightsail) StopInstanceRequest(input *StopInstanceInput) (req *request. // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StopInstance -func (c *Lightsail) StopInstance(input *StopInstanceInput) (*StopInstanceOutput, error) { - req, out := c.StopInstanceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/ReleaseStaticIp +func (c *Lightsail) ReleaseStaticIp(input *ReleaseStaticIpInput) (*ReleaseStaticIpOutput, error) { + req, out := c.ReleaseStaticIpRequest(input) return out, req.Send() } -// StopInstanceWithContext is the same as StopInstance with the addition of +// ReleaseStaticIpWithContext is the same as ReleaseStaticIp with the addition of // the ability to pass a context and additional request options. // -// See StopInstance for details on how to use this API operation. +// See ReleaseStaticIp for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) StopInstanceWithContext(ctx aws.Context, input *StopInstanceInput, opts ...request.Option) (*StopInstanceOutput, error) { - req, out := c.StopInstanceRequest(input) +func (c *Lightsail) ReleaseStaticIpWithContext(ctx aws.Context, input *ReleaseStaticIpInput, opts ...request.Option) (*ReleaseStaticIpOutput, error) { + req, out := c.ReleaseStaticIpRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStopRelationalDatabase = "StopRelationalDatabase" +const opResetDistributionCache = "ResetDistributionCache" -// StopRelationalDatabaseRequest generates a "aws/request.Request" representing the -// client's request for the StopRelationalDatabase operation. The "output" return +// ResetDistributionCacheRequest generates a "aws/request.Request" representing the +// client's request for the ResetDistributionCache operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See StopRelationalDatabase for more information on using the StopRelationalDatabase +// See ResetDistributionCache for more information on using the ResetDistributionCache // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the StopRelationalDatabaseRequest method. -// req, resp := client.StopRelationalDatabaseRequest(params) +// // Example sending a request using the ResetDistributionCacheRequest method. +// req, resp := client.ResetDistributionCacheRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StopRelationalDatabase -func (c *Lightsail) StopRelationalDatabaseRequest(input *StopRelationalDatabaseInput) (req *request.Request, output *StopRelationalDatabaseOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/ResetDistributionCache +func (c *Lightsail) ResetDistributionCacheRequest(input *ResetDistributionCacheInput) (req *request.Request, output *ResetDistributionCacheOutput) { op := &request.Operation{ - Name: opStopRelationalDatabase, + Name: opResetDistributionCache, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &StopRelationalDatabaseInput{} + input = &ResetDistributionCacheInput{} } - output = &StopRelationalDatabaseOutput{} + output = &ResetDistributionCacheOutput{} req = c.newRequest(op, input, output) return } -// StopRelationalDatabase API operation for Amazon Lightsail. +// ResetDistributionCache API operation for Amazon Lightsail. // -// Stops a specific database that is currently running in Amazon Lightsail. +// Deletes currently cached content from your Amazon Lightsail content delivery +// network (CDN) distribution. // -// The stop relational database operation supports tag-based access control -// via resource tags applied to the resource identified by relationalDatabaseName. -// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// After resetting the cache, the next time a content request is made, your +// distribution pulls, serves, and caches it from the origin. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation StopRelationalDatabase for usage and error information. +// API operation ResetDistributionCache for usage and error information. // // Returned Error Types: // * ServiceException @@ -11278,94 +11969,97 @@ func (c *Lightsail) StopRelationalDatabaseRequest(input *StopRelationalDatabaseI // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // -// * AccountSetupInProgressException -// Lightsail throws this exception when an account is still in the setup in -// progress state. -// // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StopRelationalDatabase -func (c *Lightsail) StopRelationalDatabase(input *StopRelationalDatabaseInput) (*StopRelationalDatabaseOutput, error) { - req, out := c.StopRelationalDatabaseRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/ResetDistributionCache +func (c *Lightsail) ResetDistributionCache(input *ResetDistributionCacheInput) (*ResetDistributionCacheOutput, error) { + req, out := c.ResetDistributionCacheRequest(input) return out, req.Send() } -// StopRelationalDatabaseWithContext is the same as StopRelationalDatabase with the addition of +// ResetDistributionCacheWithContext is the same as ResetDistributionCache with the addition of // the ability to pass a context and additional request options. // -// See StopRelationalDatabase for details on how to use this API operation. +// See ResetDistributionCache for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) StopRelationalDatabaseWithContext(ctx aws.Context, input *StopRelationalDatabaseInput, opts ...request.Option) (*StopRelationalDatabaseOutput, error) { - req, out := c.StopRelationalDatabaseRequest(input) +func (c *Lightsail) ResetDistributionCacheWithContext(ctx aws.Context, input *ResetDistributionCacheInput, opts ...request.Option) (*ResetDistributionCacheOutput, error) { + req, out := c.ResetDistributionCacheRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opTagResource = "TagResource" +const opSendContactMethodVerification = "SendContactMethodVerification" -// TagResourceRequest generates a "aws/request.Request" representing the -// client's request for the TagResource operation. The "output" return +// SendContactMethodVerificationRequest generates a "aws/request.Request" representing the +// client's request for the SendContactMethodVerification operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See TagResource for more information on using the TagResource +// See SendContactMethodVerification for more information on using the SendContactMethodVerification // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the TagResourceRequest method. -// req, resp := client.TagResourceRequest(params) +// // Example sending a request using the SendContactMethodVerificationRequest method. +// req, resp := client.SendContactMethodVerificationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/TagResource -func (c *Lightsail) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/SendContactMethodVerification +func (c *Lightsail) SendContactMethodVerificationRequest(input *SendContactMethodVerificationInput) (req *request.Request, output *SendContactMethodVerificationOutput) { op := &request.Operation{ - Name: opTagResource, + Name: opSendContactMethodVerification, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &TagResourceInput{} + input = &SendContactMethodVerificationInput{} } - output = &TagResourceOutput{} + output = &SendContactMethodVerificationOutput{} req = c.newRequest(op, input, output) return } -// TagResource API operation for Amazon Lightsail. +// SendContactMethodVerification API operation for Amazon Lightsail. // -// Adds one or more tags to the specified Amazon Lightsail resource. Each resource -// can have a maximum of 50 tags. Each tag consists of a key and an optional -// value. Tag keys must be unique per resource. For more information about tags, -// see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). +// Sends a verification request to an email contact method to ensure it's owned +// by the requester. SMS contact methods don't need to be verified. // -// The tag resource operation supports tag-based access control via request -// tags and resource tags applied to the resource identified by resource name. -// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// A contact method is used to send you notifications about your Amazon Lightsail +// resources. You can add one email address and one mobile phone number contact +// method in each AWS Region. However, SMS text messaging is not supported in +// some AWS Regions, and SMS text messages cannot be sent to some countries/regions. +// For more information, see Notifications in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-notifications). +// +// A verification request is sent to the contact method when you initially create +// it. Use this action to send another verification request if a previous verification +// request was deleted, or has expired. +// +// Notifications are not sent to an email contact method until after it is verified, +// and confirmed as valid. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation TagResource for usage and error information. +// API operation SendContactMethodVerification for usage and error information. // // Returned Error Types: // * ServiceException @@ -11379,105 +12073,103 @@ func (c *Lightsail) TagResourceRequest(input *TagResourceInput) (req *request.Re // Please set your AWS Region configuration to us-east-1 to create, view, or // edit these resources. // -// * NotFoundException -// Lightsail throws this exception when it cannot find a resource. -// // * OperationFailureException // Lightsail throws this exception when an operation fails to execute. // +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// // * AccessDeniedException // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // -// * AccountSetupInProgressException -// Lightsail throws this exception when an account is still in the setup in -// progress state. -// -// * UnauthenticatedException -// Lightsail throws this exception when the user has not been authenticated. +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/TagResource -func (c *Lightsail) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/SendContactMethodVerification +func (c *Lightsail) SendContactMethodVerification(input *SendContactMethodVerificationInput) (*SendContactMethodVerificationOutput, error) { + req, out := c.SendContactMethodVerificationRequest(input) return out, req.Send() } -// TagResourceWithContext is the same as TagResource with the addition of +// SendContactMethodVerificationWithContext is the same as SendContactMethodVerification with the addition of // the ability to pass a context and additional request options. // -// See TagResource for details on how to use this API operation. +// See SendContactMethodVerification for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +func (c *Lightsail) SendContactMethodVerificationWithContext(ctx aws.Context, input *SendContactMethodVerificationInput, opts ...request.Option) (*SendContactMethodVerificationOutput, error) { + req, out := c.SendContactMethodVerificationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opTestAlarm = "TestAlarm" +const opStartInstance = "StartInstance" -// TestAlarmRequest generates a "aws/request.Request" representing the -// client's request for the TestAlarm operation. The "output" return +// StartInstanceRequest generates a "aws/request.Request" representing the +// client's request for the StartInstance operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See TestAlarm for more information on using the TestAlarm +// See StartInstance for more information on using the StartInstance // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the TestAlarmRequest method. -// req, resp := client.TestAlarmRequest(params) +// // Example sending a request using the StartInstanceRequest method. +// req, resp := client.StartInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/TestAlarm -func (c *Lightsail) TestAlarmRequest(input *TestAlarmInput) (req *request.Request, output *TestAlarmOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StartInstance +func (c *Lightsail) StartInstanceRequest(input *StartInstanceInput) (req *request.Request, output *StartInstanceOutput) { op := &request.Operation{ - Name: opTestAlarm, + Name: opStartInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &TestAlarmInput{} + input = &StartInstanceInput{} } - output = &TestAlarmOutput{} + output = &StartInstanceOutput{} req = c.newRequest(op, input, output) return } -// TestAlarm API operation for Amazon Lightsail. +// StartInstance API operation for Amazon Lightsail. // -// Tests an alarm by displaying a banner on the Amazon Lightsail console. If -// a notification trigger is configured for the specified alarm, the test also -// sends a notification to the notification protocol (Email and/or SMS) configured -// for the alarm. +// Starts a specific Amazon Lightsail instance from a stopped state. To restart +// an instance, use the reboot instance operation. // -// An alarm is used to monitor a single metric for one of your resources. When -// a metric condition is met, the alarm can notify you by email, SMS text message, -// and a banner displayed on the Amazon Lightsail console. For more information, -// see Alarms in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-alarms). +// When you start a stopped instance, Lightsail assigns a new public IP address +// to the instance. To use the same IP address after stopping and starting an +// instance, create a static IP address and attach it to the instance. For more +// information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/lightsail-create-static-ip). +// +// The start instance operation supports tag-based access control via resource +// tags applied to the resource identified by instance name. For more information, +// see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation TestAlarm for usage and error information. +// API operation StartInstance for usage and error information. // // Returned Error Types: // * ServiceException @@ -11491,93 +12183,102 @@ func (c *Lightsail) TestAlarmRequest(input *TestAlarmInput) (req *request.Reques // Please set your AWS Region configuration to us-east-1 to create, view, or // edit these resources. // +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// // * OperationFailureException // Lightsail throws this exception when an operation fails to execute. // -// * UnauthenticatedException -// Lightsail throws this exception when the user has not been authenticated. -// // * AccessDeniedException // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // -// * NotFoundException -// Lightsail throws this exception when it cannot find a resource. +// * AccountSetupInProgressException +// Lightsail throws this exception when an account is still in the setup in +// progress state. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/TestAlarm -func (c *Lightsail) TestAlarm(input *TestAlarmInput) (*TestAlarmOutput, error) { - req, out := c.TestAlarmRequest(input) +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StartInstance +func (c *Lightsail) StartInstance(input *StartInstanceInput) (*StartInstanceOutput, error) { + req, out := c.StartInstanceRequest(input) return out, req.Send() } -// TestAlarmWithContext is the same as TestAlarm with the addition of +// StartInstanceWithContext is the same as StartInstance with the addition of // the ability to pass a context and additional request options. // -// See TestAlarm for details on how to use this API operation. +// See StartInstance for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) TestAlarmWithContext(ctx aws.Context, input *TestAlarmInput, opts ...request.Option) (*TestAlarmOutput, error) { - req, out := c.TestAlarmRequest(input) +func (c *Lightsail) StartInstanceWithContext(ctx aws.Context, input *StartInstanceInput, opts ...request.Option) (*StartInstanceOutput, error) { + req, out := c.StartInstanceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUnpeerVpc = "UnpeerVpc" +const opStartRelationalDatabase = "StartRelationalDatabase" -// UnpeerVpcRequest generates a "aws/request.Request" representing the -// client's request for the UnpeerVpc operation. The "output" return +// StartRelationalDatabaseRequest generates a "aws/request.Request" representing the +// client's request for the StartRelationalDatabase operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UnpeerVpc for more information on using the UnpeerVpc +// See StartRelationalDatabase for more information on using the StartRelationalDatabase // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UnpeerVpcRequest method. -// req, resp := client.UnpeerVpcRequest(params) +// // Example sending a request using the StartRelationalDatabaseRequest method. +// req, resp := client.StartRelationalDatabaseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UnpeerVpc -func (c *Lightsail) UnpeerVpcRequest(input *UnpeerVpcInput) (req *request.Request, output *UnpeerVpcOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StartRelationalDatabase +func (c *Lightsail) StartRelationalDatabaseRequest(input *StartRelationalDatabaseInput) (req *request.Request, output *StartRelationalDatabaseOutput) { op := &request.Operation{ - Name: opUnpeerVpc, + Name: opStartRelationalDatabase, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &UnpeerVpcInput{} + input = &StartRelationalDatabaseInput{} } - output = &UnpeerVpcOutput{} + output = &StartRelationalDatabaseOutput{} req = c.newRequest(op, input, output) return } -// UnpeerVpc API operation for Amazon Lightsail. +// StartRelationalDatabase API operation for Amazon Lightsail. // -// Attempts to unpeer the Lightsail VPC from the user's default VPC. +// Starts a specific database from a stopped state in Amazon Lightsail. To restart +// a database, use the reboot relational database operation. +// +// The start relational database operation supports tag-based access control +// via resource tags applied to the resource identified by relationalDatabaseName. +// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation UnpeerVpc for usage and error information. +// API operation StartRelationalDatabase for usage and error information. // // Returned Error Types: // * ServiceException @@ -11608,85 +12309,89 @@ func (c *Lightsail) UnpeerVpcRequest(input *UnpeerVpcInput) (req *request.Reques // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UnpeerVpc -func (c *Lightsail) UnpeerVpc(input *UnpeerVpcInput) (*UnpeerVpcOutput, error) { - req, out := c.UnpeerVpcRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StartRelationalDatabase +func (c *Lightsail) StartRelationalDatabase(input *StartRelationalDatabaseInput) (*StartRelationalDatabaseOutput, error) { + req, out := c.StartRelationalDatabaseRequest(input) return out, req.Send() } -// UnpeerVpcWithContext is the same as UnpeerVpc with the addition of +// StartRelationalDatabaseWithContext is the same as StartRelationalDatabase with the addition of // the ability to pass a context and additional request options. // -// See UnpeerVpc for details on how to use this API operation. +// See StartRelationalDatabase for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) UnpeerVpcWithContext(ctx aws.Context, input *UnpeerVpcInput, opts ...request.Option) (*UnpeerVpcOutput, error) { - req, out := c.UnpeerVpcRequest(input) +func (c *Lightsail) StartRelationalDatabaseWithContext(ctx aws.Context, input *StartRelationalDatabaseInput, opts ...request.Option) (*StartRelationalDatabaseOutput, error) { + req, out := c.StartRelationalDatabaseRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUntagResource = "UntagResource" +const opStopInstance = "StopInstance" -// UntagResourceRequest generates a "aws/request.Request" representing the -// client's request for the UntagResource operation. The "output" return +// StopInstanceRequest generates a "aws/request.Request" representing the +// client's request for the StopInstance operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UntagResource for more information on using the UntagResource +// See StopInstance for more information on using the StopInstance // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UntagResourceRequest method. -// req, resp := client.UntagResourceRequest(params) +// // Example sending a request using the StopInstanceRequest method. +// req, resp := client.StopInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UntagResource -func (c *Lightsail) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StopInstance +func (c *Lightsail) StopInstanceRequest(input *StopInstanceInput) (req *request.Request, output *StopInstanceOutput) { op := &request.Operation{ - Name: opUntagResource, + Name: opStopInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &UntagResourceInput{} + input = &StopInstanceInput{} } - output = &UntagResourceOutput{} + output = &StopInstanceOutput{} req = c.newRequest(op, input, output) return } -// UntagResource API operation for Amazon Lightsail. +// StopInstance API operation for Amazon Lightsail. // -// Deletes the specified set of tag keys and their values from the specified -// Amazon Lightsail resource. +// Stops a specific Amazon Lightsail instance that is currently running. // -// The untag resource operation supports tag-based access control via request -// tags and resource tags applied to the resource identified by resource name. -// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// When you start a stopped instance, Lightsail assigns a new public IP address +// to the instance. To use the same IP address after stopping and starting an +// instance, create a static IP address and attach it to the instance. For more +// information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/lightsail-create-static-ip). +// +// The stop instance operation supports tag-based access control via resource +// tags applied to the resource identified by instance name. For more information, +// see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation UntagResource for usage and error information. +// API operation StopInstance for usage and error information. // // Returned Error Types: // * ServiceException @@ -11717,84 +12422,84 @@ func (c *Lightsail) UntagResourceRequest(input *UntagResourceInput) (req *reques // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UntagResource -func (c *Lightsail) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StopInstance +func (c *Lightsail) StopInstance(input *StopInstanceInput) (*StopInstanceOutput, error) { + req, out := c.StopInstanceRequest(input) return out, req.Send() } -// UntagResourceWithContext is the same as UntagResource with the addition of +// StopInstanceWithContext is the same as StopInstance with the addition of // the ability to pass a context and additional request options. // -// See UntagResource for details on how to use this API operation. +// See StopInstance for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +func (c *Lightsail) StopInstanceWithContext(ctx aws.Context, input *StopInstanceInput, opts ...request.Option) (*StopInstanceOutput, error) { + req, out := c.StopInstanceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateDomainEntry = "UpdateDomainEntry" +const opStopRelationalDatabase = "StopRelationalDatabase" -// UpdateDomainEntryRequest generates a "aws/request.Request" representing the -// client's request for the UpdateDomainEntry operation. The "output" return +// StopRelationalDatabaseRequest generates a "aws/request.Request" representing the +// client's request for the StopRelationalDatabase operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateDomainEntry for more information on using the UpdateDomainEntry +// See StopRelationalDatabase for more information on using the StopRelationalDatabase // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UpdateDomainEntryRequest method. -// req, resp := client.UpdateDomainEntryRequest(params) +// // Example sending a request using the StopRelationalDatabaseRequest method. +// req, resp := client.StopRelationalDatabaseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateDomainEntry -func (c *Lightsail) UpdateDomainEntryRequest(input *UpdateDomainEntryInput) (req *request.Request, output *UpdateDomainEntryOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StopRelationalDatabase +func (c *Lightsail) StopRelationalDatabaseRequest(input *StopRelationalDatabaseInput) (req *request.Request, output *StopRelationalDatabaseOutput) { op := &request.Operation{ - Name: opUpdateDomainEntry, + Name: opStopRelationalDatabase, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &UpdateDomainEntryInput{} + input = &StopRelationalDatabaseInput{} } - output = &UpdateDomainEntryOutput{} + output = &StopRelationalDatabaseOutput{} req = c.newRequest(op, input, output) return } -// UpdateDomainEntry API operation for Amazon Lightsail. +// StopRelationalDatabase API operation for Amazon Lightsail. // -// Updates a domain recordset after it is created. +// Stops a specific database that is currently running in Amazon Lightsail. // -// The update 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 (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// The stop relational database operation supports tag-based access control +// via resource tags applied to the resource identified by relationalDatabaseName. +// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation UpdateDomainEntry for usage and error information. +// API operation StopRelationalDatabase for usage and error information. // // Returned Error Types: // * ServiceException @@ -11825,77 +12530,79 @@ func (c *Lightsail) UpdateDomainEntryRequest(input *UpdateDomainEntryInput) (req // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateDomainEntry -func (c *Lightsail) UpdateDomainEntry(input *UpdateDomainEntryInput) (*UpdateDomainEntryOutput, error) { - req, out := c.UpdateDomainEntryRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/StopRelationalDatabase +func (c *Lightsail) StopRelationalDatabase(input *StopRelationalDatabaseInput) (*StopRelationalDatabaseOutput, error) { + req, out := c.StopRelationalDatabaseRequest(input) return out, req.Send() } -// UpdateDomainEntryWithContext is the same as UpdateDomainEntry with the addition of +// StopRelationalDatabaseWithContext is the same as StopRelationalDatabase with the addition of // the ability to pass a context and additional request options. // -// See UpdateDomainEntry for details on how to use this API operation. +// See StopRelationalDatabase for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) UpdateDomainEntryWithContext(ctx aws.Context, input *UpdateDomainEntryInput, opts ...request.Option) (*UpdateDomainEntryOutput, error) { - req, out := c.UpdateDomainEntryRequest(input) +func (c *Lightsail) StopRelationalDatabaseWithContext(ctx aws.Context, input *StopRelationalDatabaseInput, opts ...request.Option) (*StopRelationalDatabaseOutput, error) { + req, out := c.StopRelationalDatabaseRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateLoadBalancerAttribute = "UpdateLoadBalancerAttribute" +const opTagResource = "TagResource" -// UpdateLoadBalancerAttributeRequest generates a "aws/request.Request" representing the -// client's request for the UpdateLoadBalancerAttribute operation. The "output" return +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateLoadBalancerAttribute for more information on using the UpdateLoadBalancerAttribute +// See TagResource for more information on using the TagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UpdateLoadBalancerAttributeRequest method. -// req, resp := client.UpdateLoadBalancerAttributeRequest(params) +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateLoadBalancerAttribute -func (c *Lightsail) UpdateLoadBalancerAttributeRequest(input *UpdateLoadBalancerAttributeInput) (req *request.Request, output *UpdateLoadBalancerAttributeOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/TagResource +func (c *Lightsail) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { op := &request.Operation{ - Name: opUpdateLoadBalancerAttribute, + Name: opTagResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &UpdateLoadBalancerAttributeInput{} + input = &TagResourceInput{} } - output = &UpdateLoadBalancerAttributeOutput{} + output = &TagResourceOutput{} req = c.newRequest(op, input, output) return } -// UpdateLoadBalancerAttribute API operation for Amazon Lightsail. +// TagResource API operation for Amazon Lightsail. // -// Updates the specified attribute for a load balancer. You can only update -// one attribute at a time. +// Adds one or more tags to the specified Amazon Lightsail resource. Each resource +// can have a maximum of 50 tags. Each tag consists of a key and an optional +// value. Tag keys must be unique per resource. For more information about tags, +// see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). // -// The update load balancer attribute operation supports tag-based access control -// via resource tags applied to the resource identified by load balancer name. +// The tag resource operation supports tag-based access control via request +// tags and resource tags applied to the resource identified by resource name. // For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -11903,7 +12610,7 @@ func (c *Lightsail) UpdateLoadBalancerAttributeRequest(input *UpdateLoadBalancer // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation UpdateLoadBalancerAttribute for usage and error information. +// API operation TagResource for usage and error information. // // Returned Error Types: // * ServiceException @@ -11934,87 +12641,88 @@ func (c *Lightsail) UpdateLoadBalancerAttributeRequest(input *UpdateLoadBalancer // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateLoadBalancerAttribute -func (c *Lightsail) UpdateLoadBalancerAttribute(input *UpdateLoadBalancerAttributeInput) (*UpdateLoadBalancerAttributeOutput, error) { - req, out := c.UpdateLoadBalancerAttributeRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/TagResource +func (c *Lightsail) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) return out, req.Send() } -// UpdateLoadBalancerAttributeWithContext is the same as UpdateLoadBalancerAttribute with the addition of +// TagResourceWithContext is the same as TagResource with the addition of // the ability to pass a context and additional request options. // -// See UpdateLoadBalancerAttribute for details on how to use this API operation. +// See TagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) UpdateLoadBalancerAttributeWithContext(ctx aws.Context, input *UpdateLoadBalancerAttributeInput, opts ...request.Option) (*UpdateLoadBalancerAttributeOutput, error) { - req, out := c.UpdateLoadBalancerAttributeRequest(input) +func (c *Lightsail) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateRelationalDatabase = "UpdateRelationalDatabase" +const opTestAlarm = "TestAlarm" -// UpdateRelationalDatabaseRequest generates a "aws/request.Request" representing the -// client's request for the UpdateRelationalDatabase operation. The "output" return +// TestAlarmRequest generates a "aws/request.Request" representing the +// client's request for the TestAlarm operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateRelationalDatabase for more information on using the UpdateRelationalDatabase +// See TestAlarm for more information on using the TestAlarm // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UpdateRelationalDatabaseRequest method. -// req, resp := client.UpdateRelationalDatabaseRequest(params) +// // Example sending a request using the TestAlarmRequest method. +// req, resp := client.TestAlarmRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateRelationalDatabase -func (c *Lightsail) UpdateRelationalDatabaseRequest(input *UpdateRelationalDatabaseInput) (req *request.Request, output *UpdateRelationalDatabaseOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/TestAlarm +func (c *Lightsail) TestAlarmRequest(input *TestAlarmInput) (req *request.Request, output *TestAlarmOutput) { op := &request.Operation{ - Name: opUpdateRelationalDatabase, + Name: opTestAlarm, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &UpdateRelationalDatabaseInput{} + input = &TestAlarmInput{} } - output = &UpdateRelationalDatabaseOutput{} + output = &TestAlarmOutput{} req = c.newRequest(op, input, output) return } -// UpdateRelationalDatabase API operation for Amazon Lightsail. -// -// Allows the update of one or more attributes of a database in Amazon Lightsail. +// TestAlarm API operation for Amazon Lightsail. // -// Updates are applied immediately, or in cases where the updates could result -// in an outage, are applied during the database's predefined maintenance window. +// Tests an alarm by displaying a banner on the Amazon Lightsail console. If +// a notification trigger is configured for the specified alarm, the test also +// sends a notification to the notification protocol (Email and/or SMS) configured +// for the alarm. // -// The update relational database operation supports tag-based access control -// via resource tags applied to the resource identified by relationalDatabaseName. -// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// An alarm is used to monitor a single metric for one of your resources. When +// a metric condition is met, the alarm can notify you by email, SMS text message, +// and a banner displayed on the Amazon Lightsail console. For more information, +// see Alarms in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-alarms). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation UpdateRelationalDatabase for usage and error information. +// API operation TestAlarm for usage and error information. // // Returned Error Types: // * ServiceException @@ -12028,108 +12736,93 @@ func (c *Lightsail) UpdateRelationalDatabaseRequest(input *UpdateRelationalDatab // Please set your AWS Region configuration to us-east-1 to create, view, or // edit these resources. // -// * NotFoundException -// Lightsail throws this exception when it cannot find a resource. -// // * OperationFailureException // Lightsail throws this exception when an operation fails to execute. // +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// // * AccessDeniedException // Lightsail throws this exception when the user cannot be authenticated or // uses invalid credentials to access a resource. // -// * AccountSetupInProgressException -// Lightsail throws this exception when an account is still in the setup in -// progress state. -// -// * UnauthenticatedException -// Lightsail throws this exception when the user has not been authenticated. +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateRelationalDatabase -func (c *Lightsail) UpdateRelationalDatabase(input *UpdateRelationalDatabaseInput) (*UpdateRelationalDatabaseOutput, error) { - req, out := c.UpdateRelationalDatabaseRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/TestAlarm +func (c *Lightsail) TestAlarm(input *TestAlarmInput) (*TestAlarmOutput, error) { + req, out := c.TestAlarmRequest(input) return out, req.Send() } -// UpdateRelationalDatabaseWithContext is the same as UpdateRelationalDatabase with the addition of +// TestAlarmWithContext is the same as TestAlarm with the addition of // the ability to pass a context and additional request options. // -// See UpdateRelationalDatabase for details on how to use this API operation. +// See TestAlarm for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) UpdateRelationalDatabaseWithContext(ctx aws.Context, input *UpdateRelationalDatabaseInput, opts ...request.Option) (*UpdateRelationalDatabaseOutput, error) { - req, out := c.UpdateRelationalDatabaseRequest(input) +func (c *Lightsail) TestAlarmWithContext(ctx aws.Context, input *TestAlarmInput, opts ...request.Option) (*TestAlarmOutput, error) { + req, out := c.TestAlarmRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateRelationalDatabaseParameters = "UpdateRelationalDatabaseParameters" +const opUnpeerVpc = "UnpeerVpc" -// UpdateRelationalDatabaseParametersRequest generates a "aws/request.Request" representing the -// client's request for the UpdateRelationalDatabaseParameters operation. The "output" return +// UnpeerVpcRequest generates a "aws/request.Request" representing the +// client's request for the UnpeerVpc operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateRelationalDatabaseParameters for more information on using the UpdateRelationalDatabaseParameters +// See UnpeerVpc for more information on using the UnpeerVpc // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UpdateRelationalDatabaseParametersRequest method. -// req, resp := client.UpdateRelationalDatabaseParametersRequest(params) +// // Example sending a request using the UnpeerVpcRequest method. +// req, resp := client.UnpeerVpcRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateRelationalDatabaseParameters -func (c *Lightsail) UpdateRelationalDatabaseParametersRequest(input *UpdateRelationalDatabaseParametersInput) (req *request.Request, output *UpdateRelationalDatabaseParametersOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UnpeerVpc +func (c *Lightsail) UnpeerVpcRequest(input *UnpeerVpcInput) (req *request.Request, output *UnpeerVpcOutput) { op := &request.Operation{ - Name: opUpdateRelationalDatabaseParameters, + Name: opUnpeerVpc, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &UpdateRelationalDatabaseParametersInput{} + input = &UnpeerVpcInput{} } - output = &UpdateRelationalDatabaseParametersOutput{} + output = &UnpeerVpcOutput{} req = c.newRequest(op, input, output) return } -// UpdateRelationalDatabaseParameters API operation for Amazon Lightsail. -// -// Allows the update of one or more parameters of a database in Amazon Lightsail. -// -// Parameter updates don't cause outages; therefore, their application is not -// subject to the preferred maintenance window. However, there are two ways -// in which parameter updates are applied: dynamic or pending-reboot. Parameters -// marked with a dynamic apply type are applied immediately. Parameters marked -// with a pending-reboot apply type are applied only after the database is rebooted -// using the reboot relational database operation. +// UnpeerVpc API operation for Amazon Lightsail. // -// The update relational database parameters operation supports tag-based access -// control via resource tags applied to the resource identified by relationalDatabaseName. -// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// Attempts to unpeer the Lightsail VPC from the user's default VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lightsail's -// API operation UpdateRelationalDatabaseParameters for usage and error information. +// API operation UnpeerVpc for usage and error information. // // Returned Error Types: // * ServiceException @@ -12160,248 +12853,2798 @@ func (c *Lightsail) UpdateRelationalDatabaseParametersRequest(input *UpdateRelat // * UnauthenticatedException // Lightsail throws this exception when the user has not been authenticated. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateRelationalDatabaseParameters -func (c *Lightsail) UpdateRelationalDatabaseParameters(input *UpdateRelationalDatabaseParametersInput) (*UpdateRelationalDatabaseParametersOutput, error) { - req, out := c.UpdateRelationalDatabaseParametersRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UnpeerVpc +func (c *Lightsail) UnpeerVpc(input *UnpeerVpcInput) (*UnpeerVpcOutput, error) { + req, out := c.UnpeerVpcRequest(input) return out, req.Send() } -// UpdateRelationalDatabaseParametersWithContext is the same as UpdateRelationalDatabaseParameters with the addition of +// UnpeerVpcWithContext is the same as UnpeerVpc with the addition of // the ability to pass a context and additional request options. // -// See UpdateRelationalDatabaseParameters for details on how to use this API operation. +// See UnpeerVpc for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *Lightsail) UpdateRelationalDatabaseParametersWithContext(ctx aws.Context, input *UpdateRelationalDatabaseParametersInput, opts ...request.Option) (*UpdateRelationalDatabaseParametersOutput, error) { - req, out := c.UpdateRelationalDatabaseParametersRequest(input) +func (c *Lightsail) UnpeerVpcWithContext(ctx aws.Context, input *UnpeerVpcInput, opts ...request.Option) (*UnpeerVpcOutput, error) { + req, out := c.UnpeerVpcRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// Lightsail throws this exception when the user cannot be authenticated or -// uses invalid credentials to access a resource. -type AccessDeniedException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +const opUntagResource = "UntagResource" - Code_ *string `locationName:"code" type:"string"` +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UntagResource +func (c *Lightsail) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } - Docs *string `locationName:"docs" type:"string"` + if input == nil { + input = &UntagResourceInput{} + } - Message_ *string `locationName:"message" type:"string"` + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// UntagResource API operation for Amazon Lightsail. +// +// Deletes the specified set of tag keys and their values from the specified +// Amazon Lightsail resource. +// +// The untag resource operation supports tag-based access control via request +// tags and resource tags applied to the resource identified by resource name. +// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * AccountSetupInProgressException +// Lightsail throws this exception when an account is still in the setup in +// progress state. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UntagResource +func (c *Lightsail) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateDistribution = "UpdateDistribution" + +// UpdateDistributionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDistribution operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateDistribution for more information on using the UpdateDistribution +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateDistributionRequest method. +// req, resp := client.UpdateDistributionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateDistribution +func (c *Lightsail) UpdateDistributionRequest(input *UpdateDistributionInput) (req *request.Request, output *UpdateDistributionOutput) { + op := &request.Operation{ + Name: opUpdateDistribution, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateDistributionInput{} + } + + output = &UpdateDistributionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateDistribution API operation for Amazon Lightsail. +// +// Updates an existing Amazon Lightsail content delivery network (CDN) distribution. +// +// Use this action to update the configuration of your existing distribution +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation UpdateDistribution for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateDistribution +func (c *Lightsail) UpdateDistribution(input *UpdateDistributionInput) (*UpdateDistributionOutput, error) { + req, out := c.UpdateDistributionRequest(input) + return out, req.Send() +} + +// UpdateDistributionWithContext is the same as UpdateDistribution with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDistribution for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) UpdateDistributionWithContext(ctx aws.Context, input *UpdateDistributionInput, opts ...request.Option) (*UpdateDistributionOutput, error) { + req, out := c.UpdateDistributionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateDistributionBundle = "UpdateDistributionBundle" + +// UpdateDistributionBundleRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDistributionBundle operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateDistributionBundle for more information on using the UpdateDistributionBundle +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateDistributionBundleRequest method. +// req, resp := client.UpdateDistributionBundleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateDistributionBundle +func (c *Lightsail) UpdateDistributionBundleRequest(input *UpdateDistributionBundleInput) (req *request.Request, output *UpdateDistributionBundleOutput) { + op := &request.Operation{ + Name: opUpdateDistributionBundle, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateDistributionBundleInput{} + } + + output = &UpdateDistributionBundleOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateDistributionBundle API operation for Amazon Lightsail. +// +// 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 +// result will indicate whether you can currently update your distribution's +// bundle. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation UpdateDistributionBundle for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateDistributionBundle +func (c *Lightsail) UpdateDistributionBundle(input *UpdateDistributionBundleInput) (*UpdateDistributionBundleOutput, error) { + req, out := c.UpdateDistributionBundleRequest(input) + return out, req.Send() +} + +// UpdateDistributionBundleWithContext is the same as UpdateDistributionBundle with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDistributionBundle for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) UpdateDistributionBundleWithContext(ctx aws.Context, input *UpdateDistributionBundleInput, opts ...request.Option) (*UpdateDistributionBundleOutput, error) { + req, out := c.UpdateDistributionBundleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateDomainEntry = "UpdateDomainEntry" + +// UpdateDomainEntryRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDomainEntry operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateDomainEntry for more information on using the UpdateDomainEntry +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateDomainEntryRequest method. +// req, resp := client.UpdateDomainEntryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateDomainEntry +func (c *Lightsail) UpdateDomainEntryRequest(input *UpdateDomainEntryInput) (req *request.Request, output *UpdateDomainEntryOutput) { + op := &request.Operation{ + Name: opUpdateDomainEntry, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateDomainEntryInput{} + } + + output = &UpdateDomainEntryOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateDomainEntry API operation for Amazon Lightsail. +// +// Updates a domain recordset after it is created. +// +// The update 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 (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation UpdateDomainEntry for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * AccountSetupInProgressException +// Lightsail throws this exception when an account is still in the setup in +// progress state. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateDomainEntry +func (c *Lightsail) UpdateDomainEntry(input *UpdateDomainEntryInput) (*UpdateDomainEntryOutput, error) { + req, out := c.UpdateDomainEntryRequest(input) + return out, req.Send() +} + +// UpdateDomainEntryWithContext is the same as UpdateDomainEntry with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDomainEntry for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) UpdateDomainEntryWithContext(ctx aws.Context, input *UpdateDomainEntryInput, opts ...request.Option) (*UpdateDomainEntryOutput, error) { + req, out := c.UpdateDomainEntryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateLoadBalancerAttribute = "UpdateLoadBalancerAttribute" + +// UpdateLoadBalancerAttributeRequest generates a "aws/request.Request" representing the +// client's request for the UpdateLoadBalancerAttribute operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateLoadBalancerAttribute for more information on using the UpdateLoadBalancerAttribute +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateLoadBalancerAttributeRequest method. +// req, resp := client.UpdateLoadBalancerAttributeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateLoadBalancerAttribute +func (c *Lightsail) UpdateLoadBalancerAttributeRequest(input *UpdateLoadBalancerAttributeInput) (req *request.Request, output *UpdateLoadBalancerAttributeOutput) { + op := &request.Operation{ + Name: opUpdateLoadBalancerAttribute, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateLoadBalancerAttributeInput{} + } + + output = &UpdateLoadBalancerAttributeOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateLoadBalancerAttribute API operation for Amazon Lightsail. +// +// Updates the specified attribute for a load balancer. You can only update +// one attribute at a time. +// +// The update load balancer attribute operation supports tag-based access control +// via resource tags applied to the resource identified by load balancer name. +// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation UpdateLoadBalancerAttribute for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * AccountSetupInProgressException +// Lightsail throws this exception when an account is still in the setup in +// progress state. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateLoadBalancerAttribute +func (c *Lightsail) UpdateLoadBalancerAttribute(input *UpdateLoadBalancerAttributeInput) (*UpdateLoadBalancerAttributeOutput, error) { + req, out := c.UpdateLoadBalancerAttributeRequest(input) + return out, req.Send() +} + +// UpdateLoadBalancerAttributeWithContext is the same as UpdateLoadBalancerAttribute with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateLoadBalancerAttribute for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) UpdateLoadBalancerAttributeWithContext(ctx aws.Context, input *UpdateLoadBalancerAttributeInput, opts ...request.Option) (*UpdateLoadBalancerAttributeOutput, error) { + req, out := c.UpdateLoadBalancerAttributeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateRelationalDatabase = "UpdateRelationalDatabase" + +// UpdateRelationalDatabaseRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRelationalDatabase operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateRelationalDatabase for more information on using the UpdateRelationalDatabase +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateRelationalDatabaseRequest method. +// req, resp := client.UpdateRelationalDatabaseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateRelationalDatabase +func (c *Lightsail) UpdateRelationalDatabaseRequest(input *UpdateRelationalDatabaseInput) (req *request.Request, output *UpdateRelationalDatabaseOutput) { + op := &request.Operation{ + Name: opUpdateRelationalDatabase, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateRelationalDatabaseInput{} + } + + output = &UpdateRelationalDatabaseOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateRelationalDatabase API operation for Amazon Lightsail. +// +// Allows the update of one or more attributes of a database in Amazon Lightsail. +// +// Updates are applied immediately, or in cases where the updates could result +// in an outage, are applied during the database's predefined maintenance window. +// +// The update relational database operation supports tag-based access control +// via resource tags applied to the resource identified by relationalDatabaseName. +// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation UpdateRelationalDatabase for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * AccountSetupInProgressException +// Lightsail throws this exception when an account is still in the setup in +// progress state. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateRelationalDatabase +func (c *Lightsail) UpdateRelationalDatabase(input *UpdateRelationalDatabaseInput) (*UpdateRelationalDatabaseOutput, error) { + req, out := c.UpdateRelationalDatabaseRequest(input) + return out, req.Send() +} + +// UpdateRelationalDatabaseWithContext is the same as UpdateRelationalDatabase with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRelationalDatabase for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) UpdateRelationalDatabaseWithContext(ctx aws.Context, input *UpdateRelationalDatabaseInput, opts ...request.Option) (*UpdateRelationalDatabaseOutput, error) { + req, out := c.UpdateRelationalDatabaseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateRelationalDatabaseParameters = "UpdateRelationalDatabaseParameters" + +// UpdateRelationalDatabaseParametersRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRelationalDatabaseParameters operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateRelationalDatabaseParameters for more information on using the UpdateRelationalDatabaseParameters +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateRelationalDatabaseParametersRequest method. +// req, resp := client.UpdateRelationalDatabaseParametersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateRelationalDatabaseParameters +func (c *Lightsail) UpdateRelationalDatabaseParametersRequest(input *UpdateRelationalDatabaseParametersInput) (req *request.Request, output *UpdateRelationalDatabaseParametersOutput) { + op := &request.Operation{ + Name: opUpdateRelationalDatabaseParameters, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateRelationalDatabaseParametersInput{} + } + + output = &UpdateRelationalDatabaseParametersOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateRelationalDatabaseParameters API operation for Amazon Lightsail. +// +// Allows the update of one or more parameters of a database in Amazon Lightsail. +// +// Parameter updates don't cause outages; therefore, their application is not +// subject to the preferred maintenance window. However, there are two ways +// in which parameter updates are applied: dynamic or pending-reboot. Parameters +// marked with a dynamic apply type are applied immediately. Parameters marked +// with a pending-reboot apply type are applied only after the database is rebooted +// using the reboot relational database operation. +// +// The update relational database parameters operation supports tag-based access +// control via resource tags applied to the resource identified by relationalDatabaseName. +// For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-controlling-access-using-tags). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lightsail's +// API operation UpdateRelationalDatabaseParameters for usage and error information. +// +// Returned Error Types: +// * ServiceException +// A general service exception. +// +// * InvalidInputException +// Lightsail throws this exception when user input does not conform to the validation +// rules of an input field. +// +// Domain-related APIs are only available in the N. Virginia (us-east-1) Region. +// Please set your AWS Region configuration to us-east-1 to create, view, or +// edit these resources. +// +// * NotFoundException +// Lightsail throws this exception when it cannot find a resource. +// +// * OperationFailureException +// Lightsail throws this exception when an operation fails to execute. +// +// * AccessDeniedException +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +// +// * AccountSetupInProgressException +// Lightsail throws this exception when an account is still in the setup in +// progress state. +// +// * UnauthenticatedException +// Lightsail throws this exception when the user has not been authenticated. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/UpdateRelationalDatabaseParameters +func (c *Lightsail) UpdateRelationalDatabaseParameters(input *UpdateRelationalDatabaseParametersInput) (*UpdateRelationalDatabaseParametersOutput, error) { + req, out := c.UpdateRelationalDatabaseParametersRequest(input) + return out, req.Send() +} + +// UpdateRelationalDatabaseParametersWithContext is the same as UpdateRelationalDatabaseParameters with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRelationalDatabaseParameters for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Lightsail) UpdateRelationalDatabaseParametersWithContext(ctx aws.Context, input *UpdateRelationalDatabaseParametersInput, opts ...request.Option) (*UpdateRelationalDatabaseParametersOutput, error) { + req, out := c.UpdateRelationalDatabaseParametersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// Lightsail throws this exception when the user cannot be authenticated or +// uses invalid credentials to access a resource. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Code_ *string `locationName:"code" type:"string"` + + Docs *string `locationName:"docs" type:"string"` + + Message_ *string `locationName:"message" type:"string"` + + Tip *string `locationName:"tip" type:"string"` +} + +// String returns the string representation +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Lightsail throws this exception when an account is still in the setup in +// progress state. +type AccountSetupInProgressException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Code_ *string `locationName:"code" type:"string"` + + Docs *string `locationName:"docs" type:"string"` + + Message_ *string `locationName:"message" type:"string"` + + Tip *string `locationName:"tip" type:"string"` +} + +// String returns the string representation +func (s AccountSetupInProgressException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AccountSetupInProgressException) GoString() string { + return s.String() +} + +func newErrorAccountSetupInProgressException(v protocol.ResponseMetadata) error { + return &AccountSetupInProgressException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccountSetupInProgressException) Code() string { + return "AccountSetupInProgressException" +} + +// Message returns the exception's message. +func (s *AccountSetupInProgressException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccountSetupInProgressException) OrigErr() error { + return nil +} + +func (s *AccountSetupInProgressException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccountSetupInProgressException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccountSetupInProgressException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Describes an add-on that is enabled for an Amazon Lightsail resource. +type AddOn struct { + _ struct{} `type:"structure"` + + // The name of the add-on. + Name *string `locationName:"name" type:"string"` + + // The next daily time an automatic snapshot will be 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. + NextSnapshotTimeOfDay *string `locationName:"nextSnapshotTimeOfDay" type:"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. + SnapshotTimeOfDay *string `locationName:"snapshotTimeOfDay" type:"string"` + + // The status of the add-on. + Status *string `locationName:"status" type:"string"` +} + +// String returns the string representation +func (s AddOn) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AddOn) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AddOn) SetName(v string) *AddOn { + s.Name = &v + return s +} + +// SetNextSnapshotTimeOfDay sets the NextSnapshotTimeOfDay field's value. +func (s *AddOn) SetNextSnapshotTimeOfDay(v string) *AddOn { + s.NextSnapshotTimeOfDay = &v + return s +} + +// SetSnapshotTimeOfDay sets the SnapshotTimeOfDay field's value. +func (s *AddOn) SetSnapshotTimeOfDay(v string) *AddOn { + s.SnapshotTimeOfDay = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AddOn) SetStatus(v string) *AddOn { + s.Status = &v + return s +} + +// Describes a request to enable, modify, or disable an add-on for an Amazon +// Lightsail resource. +// +// An additional cost may be associated with enabling add-ons. For more information, +// see the Lightsail pricing page (https://aws.amazon.com/lightsail/pricing/). +type AddOnRequest struct { + _ struct{} `type:"structure"` + + // The add-on type. + // + // AddOnType is a required field + AddOnType *string `locationName:"addOnType" type:"string" required:"true" enum:"AddOnType"` + + // An object that represents additional parameters when enabling or modifying + // the automatic snapshot add-on. + AutoSnapshotAddOnRequest *AutoSnapshotAddOnRequest `locationName:"autoSnapshotAddOnRequest" type:"structure"` +} + +// String returns the string representation +func (s AddOnRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AddOnRequest) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AddOnRequest) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AddOnRequest"} + if s.AddOnType == nil { + invalidParams.Add(request.NewErrParamRequired("AddOnType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAddOnType sets the AddOnType field's value. +func (s *AddOnRequest) SetAddOnType(v string) *AddOnRequest { + s.AddOnType = &v + return s +} + +// SetAutoSnapshotAddOnRequest sets the AutoSnapshotAddOnRequest field's value. +func (s *AddOnRequest) SetAutoSnapshotAddOnRequest(v *AutoSnapshotAddOnRequest) *AddOnRequest { + s.AutoSnapshotAddOnRequest = v + return s +} + +// Describes an alarm. +// +// An alarm is a way to monitor your Amazon Lightsail resource metrics. For +// more information, see Alarms in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-alarms). +type Alarm struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the alarm. + Arn *string `locationName:"arn" type:"string"` + + // The arithmetic operation used when comparing the specified statistic and + // threshold. + ComparisonOperator *string `locationName:"comparisonOperator" type:"string" enum:"ComparisonOperator"` + + // The contact protocols for the alarm, such as Email, SMS (text messaging), + // or both. + ContactProtocols []*string `locationName:"contactProtocols" type:"list"` + + // The timestamp when the alarm was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The number of data points that must not within the specified threshold to + // trigger the alarm. + DatapointsToAlarm *int64 `locationName:"datapointsToAlarm" type:"integer"` + + // The number of periods over which data is compared to the specified threshold. + EvaluationPeriods *int64 `locationName:"evaluationPeriods" type:"integer"` + + // An object that lists information about the location of the alarm. + Location *ResourceLocation `locationName:"location" type:"structure"` + + // The name of the metric associated with the alarm. + MetricName *string `locationName:"metricName" type:"string" enum:"MetricName"` + + // An object that lists information about the resource monitored by the alarm. + MonitoredResourceInfo *MonitoredResourceInfo `locationName:"monitoredResourceInfo" type:"structure"` + + // The name of the alarm. + Name *string `locationName:"name" type:"string"` + + // Indicates whether the alarm is enabled. + NotificationEnabled *bool `locationName:"notificationEnabled" type:"boolean"` + + // The alarm states that trigger a notification. + NotificationTriggers []*string `locationName:"notificationTriggers" type:"list"` + + // The period, in seconds, over which the statistic is applied. + Period *int64 `locationName:"period" min:"60" type:"integer"` + + // The Lightsail resource type (e.g., Alarm). + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + + // 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. + State *string `locationName:"state" type:"string" enum:"AlarmState"` + + // The statistic for the metric associated with the alarm. + // + // 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. + Statistic *string `locationName:"statistic" type:"string" enum:"MetricStatistic"` + + // 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 `locationName:"supportCode" type:"string"` + + // The value against which the specified statistic is compared. + Threshold *float64 `locationName:"threshold" type:"double"` + + // Specifies how the alarm handles 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. + TreatMissingData *string `locationName:"treatMissingData" type:"string" enum:"TreatMissingData"` + + // The unit of the metric associated with the alarm. + Unit *string `locationName:"unit" type:"string" enum:"MetricUnit"` +} + +// String returns the string representation +func (s Alarm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Alarm) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *Alarm) SetArn(v string) *Alarm { + s.Arn = &v + return s +} + +// SetComparisonOperator sets the ComparisonOperator field's value. +func (s *Alarm) SetComparisonOperator(v string) *Alarm { + s.ComparisonOperator = &v + return s +} + +// SetContactProtocols sets the ContactProtocols field's value. +func (s *Alarm) SetContactProtocols(v []*string) *Alarm { + s.ContactProtocols = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Alarm) SetCreatedAt(v time.Time) *Alarm { + s.CreatedAt = &v + return s +} + +// SetDatapointsToAlarm sets the DatapointsToAlarm field's value. +func (s *Alarm) SetDatapointsToAlarm(v int64) *Alarm { + s.DatapointsToAlarm = &v + return s +} + +// SetEvaluationPeriods sets the EvaluationPeriods field's value. +func (s *Alarm) SetEvaluationPeriods(v int64) *Alarm { + s.EvaluationPeriods = &v + return s +} + +// SetLocation sets the Location field's value. +func (s *Alarm) SetLocation(v *ResourceLocation) *Alarm { + s.Location = v + return s +} + +// SetMetricName sets the MetricName field's value. +func (s *Alarm) SetMetricName(v string) *Alarm { + s.MetricName = &v + return s +} + +// SetMonitoredResourceInfo sets the MonitoredResourceInfo field's value. +func (s *Alarm) SetMonitoredResourceInfo(v *MonitoredResourceInfo) *Alarm { + s.MonitoredResourceInfo = v + return s +} + +// SetName sets the Name field's value. +func (s *Alarm) SetName(v string) *Alarm { + s.Name = &v + return s +} + +// SetNotificationEnabled sets the NotificationEnabled field's value. +func (s *Alarm) SetNotificationEnabled(v bool) *Alarm { + s.NotificationEnabled = &v + return s +} + +// SetNotificationTriggers sets the NotificationTriggers field's value. +func (s *Alarm) SetNotificationTriggers(v []*string) *Alarm { + s.NotificationTriggers = v + return s +} + +// SetPeriod sets the Period field's value. +func (s *Alarm) SetPeriod(v int64) *Alarm { + s.Period = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *Alarm) SetResourceType(v string) *Alarm { + s.ResourceType = &v + return s +} + +// SetState sets the State field's value. +func (s *Alarm) SetState(v string) *Alarm { + s.State = &v + return s +} + +// SetStatistic sets the Statistic field's value. +func (s *Alarm) SetStatistic(v string) *Alarm { + s.Statistic = &v + return s +} + +// SetSupportCode sets the SupportCode field's value. +func (s *Alarm) SetSupportCode(v string) *Alarm { + s.SupportCode = &v + return s +} + +// SetThreshold sets the Threshold field's value. +func (s *Alarm) SetThreshold(v float64) *Alarm { + s.Threshold = &v + return s +} + +// SetTreatMissingData sets the TreatMissingData field's value. +func (s *Alarm) SetTreatMissingData(v string) *Alarm { + s.TreatMissingData = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *Alarm) SetUnit(v string) *Alarm { + s.Unit = &v + return s +} + +type AllocateStaticIpInput struct { + _ struct{} `type:"structure"` + + // The name of the static IP address. + // + // StaticIpName is a required field + StaticIpName *string `locationName:"staticIpName" type:"string" required:"true"` +} + +// String returns the string representation +func (s AllocateStaticIpInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AllocateStaticIpInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AllocateStaticIpInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AllocateStaticIpInput"} + if s.StaticIpName == nil { + invalidParams.Add(request.NewErrParamRequired("StaticIpName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetStaticIpName sets the StaticIpName field's value. +func (s *AllocateStaticIpInput) SetStaticIpName(v string) *AllocateStaticIpInput { + s.StaticIpName = &v + return s +} + +type AllocateStaticIpOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operations" type:"list"` +} + +// String returns the string representation +func (s AllocateStaticIpOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AllocateStaticIpOutput) GoString() string { + return s.String() +} + +// SetOperations sets the Operations field's value. +func (s *AllocateStaticIpOutput) SetOperations(v []*Operation) *AllocateStaticIpOutput { + s.Operations = v + return s +} + +type AttachCertificateToDistributionInput struct { + _ struct{} `type:"structure"` + + // 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 certificate. For example, your certificate name might be WordPress-Blog-Certificate + // and the domain name of the certificate might be example.com. + // + // CertificateName is a required field + CertificateName *string `locationName:"certificateName" type:"string" required:"true"` + + // 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. + // + // DistributionName is a required field + DistributionName *string `locationName:"distributionName" type:"string" required:"true"` +} + +// String returns the string representation +func (s AttachCertificateToDistributionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachCertificateToDistributionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AttachCertificateToDistributionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AttachCertificateToDistributionInput"} + if s.CertificateName == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateName")) + } + if s.DistributionName == nil { + invalidParams.Add(request.NewErrParamRequired("DistributionName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCertificateName sets the CertificateName field's value. +func (s *AttachCertificateToDistributionInput) SetCertificateName(v string) *AttachCertificateToDistributionInput { + s.CertificateName = &v + return s +} + +// SetDistributionName sets the DistributionName field's value. +func (s *AttachCertificateToDistributionInput) SetDistributionName(v string) *AttachCertificateToDistributionInput { + s.DistributionName = &v + return s +} + +type AttachCertificateToDistributionOutput struct { + _ struct{} `type:"structure"` + + // 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. + Operation *Operation `locationName:"operation" type:"structure"` +} + +// String returns the string representation +func (s AttachCertificateToDistributionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachCertificateToDistributionOutput) GoString() string { + return s.String() +} + +// SetOperation sets the Operation field's value. +func (s *AttachCertificateToDistributionOutput) SetOperation(v *Operation) *AttachCertificateToDistributionOutput { + s.Operation = v + return s +} + +type AttachDiskInput struct { + _ struct{} `type:"structure"` + + // The unique Lightsail disk name (e.g., my-disk). + // + // DiskName is a required field + DiskName *string `locationName:"diskName" type:"string" required:"true"` + + // The disk path to expose to the instance (e.g., /dev/xvdf). + // + // DiskPath is a required field + DiskPath *string `locationName:"diskPath" type:"string" required:"true"` + + // The name of the Lightsail instance where you want to utilize the storage + // disk. + // + // InstanceName is a required field + InstanceName *string `locationName:"instanceName" type:"string" required:"true"` +} + +// String returns the string representation +func (s AttachDiskInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachDiskInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AttachDiskInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AttachDiskInput"} + if s.DiskName == nil { + invalidParams.Add(request.NewErrParamRequired("DiskName")) + } + if s.DiskPath == nil { + invalidParams.Add(request.NewErrParamRequired("DiskPath")) + } + if s.InstanceName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDiskName sets the DiskName field's value. +func (s *AttachDiskInput) SetDiskName(v string) *AttachDiskInput { + s.DiskName = &v + return s +} + +// SetDiskPath sets the DiskPath field's value. +func (s *AttachDiskInput) SetDiskPath(v string) *AttachDiskInput { + s.DiskPath = &v + return s +} + +// SetInstanceName sets the InstanceName field's value. +func (s *AttachDiskInput) SetInstanceName(v string) *AttachDiskInput { + s.InstanceName = &v + return s +} + +type AttachDiskOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operations" type:"list"` +} + +// String returns the string representation +func (s AttachDiskOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachDiskOutput) GoString() string { + return s.String() +} + +// SetOperations sets the Operations field's value. +func (s *AttachDiskOutput) SetOperations(v []*Operation) *AttachDiskOutput { + s.Operations = v + return s +} + +type AttachInstancesToLoadBalancerInput struct { + _ struct{} `type:"structure"` + + // An array of strings representing the instance name(s) you want to attach + // to your load balancer. + // + // An instance must be running before you can attach it to your load balancer. + // + // There are no additional limits on the number of instances you can attach + // to your load balancer, aside from the limit of Lightsail instances you can + // create in your account (20). + // + // InstanceNames is a required field + InstanceNames []*string `locationName:"instanceNames" type:"list" required:"true"` + + // The name of the load balancer. + // + // LoadBalancerName is a required field + LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` +} + +// String returns the string representation +func (s AttachInstancesToLoadBalancerInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachInstancesToLoadBalancerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AttachInstancesToLoadBalancerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AttachInstancesToLoadBalancerInput"} + if s.InstanceNames == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceNames")) + } + if s.LoadBalancerName == nil { + invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceNames sets the InstanceNames field's value. +func (s *AttachInstancesToLoadBalancerInput) SetInstanceNames(v []*string) *AttachInstancesToLoadBalancerInput { + s.InstanceNames = v + return s +} + +// SetLoadBalancerName sets the LoadBalancerName field's value. +func (s *AttachInstancesToLoadBalancerInput) SetLoadBalancerName(v string) *AttachInstancesToLoadBalancerInput { + s.LoadBalancerName = &v + return s +} + +type AttachInstancesToLoadBalancerOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operations" type:"list"` +} + +// String returns the string representation +func (s AttachInstancesToLoadBalancerOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachInstancesToLoadBalancerOutput) GoString() string { + return s.String() +} + +// SetOperations sets the Operations field's value. +func (s *AttachInstancesToLoadBalancerOutput) SetOperations(v []*Operation) *AttachInstancesToLoadBalancerOutput { + s.Operations = v + return s +} + +type AttachLoadBalancerTlsCertificateInput struct { + _ struct{} `type:"structure"` + + // The name of your SSL/TLS certificate. + // + // CertificateName is a required field + CertificateName *string `locationName:"certificateName" type:"string" required:"true"` + + // The name of the load balancer to which you want to associate the SSL/TLS + // certificate. + // + // LoadBalancerName is a required field + LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` +} + +// String returns the string representation +func (s AttachLoadBalancerTlsCertificateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachLoadBalancerTlsCertificateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AttachLoadBalancerTlsCertificateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AttachLoadBalancerTlsCertificateInput"} + if s.CertificateName == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateName")) + } + if s.LoadBalancerName == nil { + invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCertificateName sets the CertificateName field's value. +func (s *AttachLoadBalancerTlsCertificateInput) SetCertificateName(v string) *AttachLoadBalancerTlsCertificateInput { + s.CertificateName = &v + return s +} + +// SetLoadBalancerName sets the LoadBalancerName field's value. +func (s *AttachLoadBalancerTlsCertificateInput) SetLoadBalancerName(v string) *AttachLoadBalancerTlsCertificateInput { + s.LoadBalancerName = &v + return s +} + +type AttachLoadBalancerTlsCertificateOutput struct { + _ struct{} `type:"structure"` + + // 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. + // + // These SSL/TLS certificates are only usable by Lightsail load balancers. You + // can't get the certificate and use it for another purpose. + Operations []*Operation `locationName:"operations" type:"list"` +} + +// String returns the string representation +func (s AttachLoadBalancerTlsCertificateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachLoadBalancerTlsCertificateOutput) GoString() string { + return s.String() +} + +// SetOperations sets the Operations field's value. +func (s *AttachLoadBalancerTlsCertificateOutput) SetOperations(v []*Operation) *AttachLoadBalancerTlsCertificateOutput { + s.Operations = v + return s +} + +type AttachStaticIpInput struct { + _ struct{} `type:"structure"` + + // The instance name to which you want to attach the static IP address. + // + // InstanceName is a required field + InstanceName *string `locationName:"instanceName" type:"string" required:"true"` + + // The name of the static IP. + // + // StaticIpName is a required field + StaticIpName *string `locationName:"staticIpName" type:"string" required:"true"` +} + +// String returns the string representation +func (s AttachStaticIpInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachStaticIpInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AttachStaticIpInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AttachStaticIpInput"} + if s.InstanceName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceName")) + } + if s.StaticIpName == nil { + invalidParams.Add(request.NewErrParamRequired("StaticIpName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceName sets the InstanceName field's value. +func (s *AttachStaticIpInput) SetInstanceName(v string) *AttachStaticIpInput { + s.InstanceName = &v + return s +} + +// SetStaticIpName sets the StaticIpName field's value. +func (s *AttachStaticIpInput) SetStaticIpName(v string) *AttachStaticIpInput { + s.StaticIpName = &v + return s +} + +type AttachStaticIpOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operations" type:"list"` +} + +// String returns the string representation +func (s AttachStaticIpOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachStaticIpOutput) GoString() string { + return s.String() +} + +// SetOperations sets the Operations field's value. +func (s *AttachStaticIpOutput) SetOperations(v []*Operation) *AttachStaticIpOutput { + s.Operations = v + return s +} + +// Describes a block storage disk that is attached to an instance, and is included +// in an automatic snapshot. +type AttachedDisk struct { + _ struct{} `type:"structure"` + + // The path of the disk (e.g., /dev/xvdf). + Path *string `locationName:"path" type:"string"` + + // The size of the disk in GB. + SizeInGb *int64 `locationName:"sizeInGb" type:"integer"` +} + +// String returns the string representation +func (s AttachedDisk) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AttachedDisk) GoString() string { + return s.String() +} + +// SetPath sets the Path field's value. +func (s *AttachedDisk) SetPath(v string) *AttachedDisk { + s.Path = &v + return s +} + +// SetSizeInGb sets the SizeInGb field's value. +func (s *AttachedDisk) SetSizeInGb(v int64) *AttachedDisk { + s.SizeInGb = &v + return s +} + +// Describes a request to enable or modify the automatic snapshot add-on for +// an Amazon Lightsail instance or disk. +// +// When you modify the automatic snapshot time for a resource, it is typically +// effective immediately except under the following conditions: +// +// * If an automatic snapshot has been created for the current day, and you +// change the snapshot time to a later time of day, then the new snapshot +// time will be effective the following day. This ensures that two snapshots +// are not created for the current day. +// +// * If an automatic snapshot has not yet been created for the current day, +// and you change the snapshot time to an earlier time of day, then the new +// snapshot time will be effective the following day and a snapshot is automatically +// created at the previously set time for the current day. This ensures that +// a snapshot is created for the current day. +// +// * If an automatic snapshot has not yet been created for the current day, +// and you change the snapshot time to a time that is within 30 minutes from +// your current time, then the new snapshot time will be effective the following +// day and a snapshot is automatically created at the previously set time +// for the current day. This ensures that a snapshot is created for the current +// day, because 30 minutes is required between your current time and the +// new snapshot time that you specify. +// +// * If an automatic snapshot is scheduled to be created within 30 minutes +// from your current time and you change the snapshot time, then the new +// snapshot time will be effective the following day and a snapshot is automatically +// created at the previously set time for the current day. This ensures that +// a snapshot is created for the current day, because 30 minutes is required +// between your current time and the new snapshot time that you specify. +type AutoSnapshotAddOnRequest struct { + _ struct{} `type:"structure"` + + // The daily time when an automatic snapshot will be created. + // + // Constraints: + // + // * Must be in HH:00 format, and in an hourly increment. + // + // * Specified in Coordinated Universal Time (UTC). + // + // * The snapshot will be automatically created between the time specified + // and up to 45 minutes after. + SnapshotTimeOfDay *string `locationName:"snapshotTimeOfDay" type:"string"` +} + +// String returns the string representation +func (s AutoSnapshotAddOnRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AutoSnapshotAddOnRequest) GoString() string { + return s.String() +} + +// SetSnapshotTimeOfDay sets the SnapshotTimeOfDay field's value. +func (s *AutoSnapshotAddOnRequest) SetSnapshotTimeOfDay(v string) *AutoSnapshotAddOnRequest { + s.SnapshotTimeOfDay = &v + return s +} + +// Describes an automatic snapshot. +type AutoSnapshotDetails struct { + _ struct{} `type:"structure"` + + // The timestamp when the automatic snapshot was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The date of the automatic snapshot in YYYY-MM-DD format. + Date *string `locationName:"date" type:"string"` + + // An array of objects that describe the block storage disks attached to the + // instance when the automatic snapshot was created. + FromAttachedDisks []*AttachedDisk `locationName:"fromAttachedDisks" type:"list"` + + // The status of the automatic snapshot. + Status *string `locationName:"status" type:"string" enum:"AutoSnapshotStatus"` +} + +// String returns the string representation +func (s AutoSnapshotDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AutoSnapshotDetails) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AutoSnapshotDetails) SetCreatedAt(v time.Time) *AutoSnapshotDetails { + s.CreatedAt = &v + return s +} + +// SetDate sets the Date field's value. +func (s *AutoSnapshotDetails) SetDate(v string) *AutoSnapshotDetails { + s.Date = &v + return s +} + +// SetFromAttachedDisks sets the FromAttachedDisks field's value. +func (s *AutoSnapshotDetails) SetFromAttachedDisks(v []*AttachedDisk) *AutoSnapshotDetails { + s.FromAttachedDisks = v + return s +} + +// SetStatus sets the Status field's value. +func (s *AutoSnapshotDetails) SetStatus(v string) *AutoSnapshotDetails { + s.Status = &v + return s +} + +// Describes an Availability Zone. +type AvailabilityZone struct { + _ struct{} `type:"structure"` + + // The state of the Availability Zone. + State *string `locationName:"state" type:"string"` + + // The name of the Availability Zone. The format is us-east-2a (case-sensitive). + ZoneName *string `locationName:"zoneName" type:"string"` +} + +// String returns the string representation +func (s AvailabilityZone) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AvailabilityZone) GoString() string { + return s.String() +} + +// SetState sets the State field's value. +func (s *AvailabilityZone) SetState(v string) *AvailabilityZone { + s.State = &v + return s +} + +// SetZoneName sets the ZoneName field's value. +func (s *AvailabilityZone) SetZoneName(v string) *AvailabilityZone { + s.ZoneName = &v + return s +} + +// Describes a blueprint (a virtual private server image). +type Blueprint struct { + _ struct{} `type:"structure"` + + // The ID for the virtual private server image (e.g., app_wordpress_4_4 or app_lamp_7_0). + BlueprintId *string `locationName:"blueprintId" type:"string"` + + // The description of the blueprint. + Description *string `locationName:"description" type:"string"` + + // The group name of the blueprint (e.g., amazon-linux). + Group *string `locationName:"group" type:"string"` + + // 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 *bool `locationName:"isActive" type:"boolean"` + + // The end-user license agreement URL for the image or blueprint. + LicenseUrl *string `locationName:"licenseUrl" type:"string"` + + // 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 power value of 500. 0 indicates that the + // blueprint runs on all instance sizes. + MinPower *int64 `locationName:"minPower" type:"integer"` + + // The friendly name of the blueprint (e.g., Amazon Linux). + Name *string `locationName:"name" type:"string"` + + // The operating system platform (either Linux/Unix-based or Windows Server-based) + // of the blueprint. + Platform *string `locationName:"platform" type:"string" enum:"InstancePlatform"` + + // The product URL to learn more about the image or blueprint. + ProductUrl *string `locationName:"productUrl" type:"string"` + + // The type of the blueprint (e.g., os or app). + Type *string `locationName:"type" type:"string" enum:"BlueprintType"` + + // The version number of the operating system, application, or stack (e.g., + // 2016.03.0). + Version *string `locationName:"version" type:"string"` + + // The version code. + VersionCode *string `locationName:"versionCode" type:"string"` +} + +// String returns the string representation +func (s Blueprint) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Blueprint) GoString() string { + return s.String() +} + +// SetBlueprintId sets the BlueprintId field's value. +func (s *Blueprint) SetBlueprintId(v string) *Blueprint { + s.BlueprintId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Blueprint) SetDescription(v string) *Blueprint { + s.Description = &v + return s +} + +// SetGroup sets the Group field's value. +func (s *Blueprint) SetGroup(v string) *Blueprint { + s.Group = &v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *Blueprint) SetIsActive(v bool) *Blueprint { + s.IsActive = &v + return s +} + +// SetLicenseUrl sets the LicenseUrl field's value. +func (s *Blueprint) SetLicenseUrl(v string) *Blueprint { + s.LicenseUrl = &v + return s +} + +// SetMinPower sets the MinPower field's value. +func (s *Blueprint) SetMinPower(v int64) *Blueprint { + s.MinPower = &v + return s +} + +// SetName sets the Name field's value. +func (s *Blueprint) SetName(v string) *Blueprint { + s.Name = &v + return s +} + +// SetPlatform sets the Platform field's value. +func (s *Blueprint) SetPlatform(v string) *Blueprint { + s.Platform = &v + return s +} + +// SetProductUrl sets the ProductUrl field's value. +func (s *Blueprint) SetProductUrl(v string) *Blueprint { + s.ProductUrl = &v + return s +} + +// SetType sets the Type field's value. +func (s *Blueprint) SetType(v string) *Blueprint { + s.Type = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *Blueprint) SetVersion(v string) *Blueprint { + s.Version = &v + return s +} + +// SetVersionCode sets the VersionCode field's value. +func (s *Blueprint) SetVersionCode(v string) *Blueprint { + s.VersionCode = &v + return s +} + +// Describes a bundle, which is a set of specs describing your virtual private +// server (or instance). +type Bundle struct { + _ struct{} `type:"structure"` + + // The bundle ID (e.g., micro_1_0). + BundleId *string `locationName:"bundleId" type:"string"` + + // The number of vCPUs included in the bundle (e.g., 2). + CpuCount *int64 `locationName:"cpuCount" type:"integer"` + + // The size of the SSD (e.g., 30). + DiskSizeInGb *int64 `locationName:"diskSizeInGb" type:"integer"` + + // The Amazon EC2 instance type (e.g., t2.micro). + InstanceType *string `locationName:"instanceType" type:"string"` + + // A Boolean value indicating whether the bundle is active. + IsActive *bool `locationName:"isActive" type:"boolean"` + + // A friendly name for the bundle (e.g., Micro). + Name *string `locationName:"name" type:"string"` + + // A numeric value that represents the power of the bundle (e.g., 500). You + // can use the bundle's power value in conjunction with a blueprint's minimum + // power value to determine whether the blueprint will run on the bundle. 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 power value of 500. + Power *int64 `locationName:"power" type:"integer"` + + // The price in US dollars (e.g., 5.0) of the bundle. + Price *float64 `locationName:"price" type:"float"` + + // The amount of RAM in GB (e.g., 2.0). + RamSizeInGb *float64 `locationName:"ramSizeInGb" type:"float"` + + // The operating system platform (Linux/Unix-based or Windows Server-based) + // that the bundle supports. You can only launch a WINDOWS bundle on a blueprint + // that supports the WINDOWS platform. LINUX_UNIX blueprints require a LINUX_UNIX + // bundle. + SupportedPlatforms []*string `locationName:"supportedPlatforms" type:"list"` + + // The data transfer rate per month in GB (e.g., 2000). + TransferPerMonthInGb *int64 `locationName:"transferPerMonthInGb" type:"integer"` +} + +// String returns the string representation +func (s Bundle) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Bundle) GoString() string { + return s.String() +} + +// SetBundleId sets the BundleId field's value. +func (s *Bundle) SetBundleId(v string) *Bundle { + s.BundleId = &v + return s +} + +// SetCpuCount sets the CpuCount field's value. +func (s *Bundle) SetCpuCount(v int64) *Bundle { + s.CpuCount = &v + return s +} + +// SetDiskSizeInGb sets the DiskSizeInGb field's value. +func (s *Bundle) SetDiskSizeInGb(v int64) *Bundle { + s.DiskSizeInGb = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *Bundle) SetInstanceType(v string) *Bundle { + s.InstanceType = &v + return s +} + +// SetIsActive sets the IsActive field's value. +func (s *Bundle) SetIsActive(v bool) *Bundle { + s.IsActive = &v + return s +} + +// SetName sets the Name field's value. +func (s *Bundle) SetName(v string) *Bundle { + s.Name = &v + return s +} + +// SetPower sets the Power field's value. +func (s *Bundle) SetPower(v int64) *Bundle { + s.Power = &v + return s +} + +// SetPrice sets the Price field's value. +func (s *Bundle) SetPrice(v float64) *Bundle { + s.Price = &v + return s +} + +// SetRamSizeInGb sets the RamSizeInGb field's value. +func (s *Bundle) SetRamSizeInGb(v float64) *Bundle { + s.RamSizeInGb = &v + return s +} - Tip *string `locationName:"tip" type:"string"` +// SetSupportedPlatforms sets the SupportedPlatforms field's value. +func (s *Bundle) SetSupportedPlatforms(v []*string) *Bundle { + s.SupportedPlatforms = v + return s +} + +// SetTransferPerMonthInGb sets the TransferPerMonthInGb field's value. +func (s *Bundle) SetTransferPerMonthInGb(v int64) *Bundle { + s.TransferPerMonthInGb = &v + return s +} + +// Describes the default cache behavior of an Amazon Lightsail content delivery +// network (CDN) distribution. +type CacheBehavior struct { + _ struct{} `type:"structure"` + + // The cache behavior of the distribution. + // + // The following cache behaviors can be specified: + // + // * cache - This option is best for static sites. When specified, your distribution + // caches and serves your entire website as static content. This behavior + // is ideal for websites with static content that doesn't change depending + // on who views it, or for websites that don't use cookies, headers, or query + // strings to personalize content. + // + // * dont-cache - This option is best for sites that serve a mix of static + // and dynamic content. When specified, your distribution caches and serve + // only the content that is specified in the distribution's CacheBehaviorPerPath + // parameter. This behavior is ideal for websites or web applications that + // use cookies, headers, and query strings to personalize content for individual + // users. + Behavior *string `locationName:"behavior" type:"string" enum:"BehaviorEnum"` } // String returns the string representation -func (s AccessDeniedException) String() string { +func (s CacheBehavior) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AccessDeniedException) GoString() string { +func (s CacheBehavior) GoString() string { return s.String() } -func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { - return &AccessDeniedException{ - RespMetadata: v, - } +// SetBehavior sets the Behavior field's value. +func (s *CacheBehavior) SetBehavior(v string) *CacheBehavior { + s.Behavior = &v + return s } -// Code returns the exception type name. -func (s *AccessDeniedException) Code() string { - return "AccessDeniedException" +// 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 +type CacheBehaviorPerPath struct { + _ struct{} `type:"structure"` + + // 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. + Behavior *string `locationName:"behavior" type:"string" enum:"BehaviorEnum"` + + // 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 running on a Lightsail instance. var/www/html/ + // + // * Specify the following file to cache only the index page in the document + // root of an Apache web server. var/www/html/index.html + // + // * Specify the following to cache only the .html files in the document + // root of an Apache web server. var/www/html/*.html + // + // * Specify the following to cache only the .jpg, .png, and .gif files in + // the images sub-directory of the document root of an Apache web server. + // var/www/html/images/*.jpg var/www/html/images/*.png 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. var/www/html/images/ + Path *string `locationName:"path" type:"string"` } -// Message returns the exception's message. -func (s *AccessDeniedException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// String returns the string representation +func (s CacheBehaviorPerPath) String() string { + return awsutil.Prettify(s) } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *AccessDeniedException) OrigErr() error { - return nil +// GoString returns the string representation +func (s CacheBehaviorPerPath) GoString() string { + return s.String() } -func (s *AccessDeniedException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetBehavior sets the Behavior field's value. +func (s *CacheBehaviorPerPath) SetBehavior(v string) *CacheBehaviorPerPath { + s.Behavior = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *AccessDeniedException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetPath sets the Path field's value. +func (s *CacheBehaviorPerPath) SetPath(v string) *CacheBehaviorPerPath { + s.Path = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *AccessDeniedException) RequestID() string { - return s.RespMetadata.RequestID +// 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. +type CacheSettings struct { + _ struct{} `type:"structure"` + + // The HTTP methods that are processed and forwarded to the distribution's origin. + // + // You can specify the following options: + // + // * GET,HEAD - The distribution forwards 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. + // + // 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 `locationName:"allowedHTTPMethods" type:"string"` + + // The HTTP method responses that are cached by your distribution. + // + // You can specify the following options: + // + // * GET,HEAD - The distribution caches responses to the GET and HEAD methods. + // + // * GET,HEAD,OPTIONS - The distribution caches responses to the GET, HEAD, + // and OPTIONS methods. + CachedHTTPMethods *string `locationName:"cachedHTTPMethods" type:"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 Expires to objects. + DefaultTTL *int64 `locationName:"defaultTTL" type:"long"` + + // 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 `locationName:"forwardedCookies" type:"structure"` + + // 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 `locationName:"forwardedHeaders" type:"structure"` + + // 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 `locationName:"forwardedQueryStrings" type:"structure"` + + // 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. + MaximumTTL *int64 `locationName:"maximumTTL" type:"long"` + + // 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. + MinimumTTL *int64 `locationName:"minimumTTL" type:"long"` } -// Lightsail throws this exception when an account is still in the setup in -// progress state. -type AccountSetupInProgressException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// String returns the string representation +func (s CacheSettings) String() string { + return awsutil.Prettify(s) +} - Code_ *string `locationName:"code" type:"string"` +// GoString returns the string representation +func (s CacheSettings) GoString() string { + return s.String() +} - Docs *string `locationName:"docs" type:"string"` +// SetAllowedHTTPMethods sets the AllowedHTTPMethods field's value. +func (s *CacheSettings) SetAllowedHTTPMethods(v string) *CacheSettings { + s.AllowedHTTPMethods = &v + return s +} - Message_ *string `locationName:"message" type:"string"` +// SetCachedHTTPMethods sets the CachedHTTPMethods field's value. +func (s *CacheSettings) SetCachedHTTPMethods(v string) *CacheSettings { + s.CachedHTTPMethods = &v + return s +} - Tip *string `locationName:"tip" type:"string"` +// SetDefaultTTL sets the DefaultTTL field's value. +func (s *CacheSettings) SetDefaultTTL(v int64) *CacheSettings { + s.DefaultTTL = &v + return s +} + +// SetForwardedCookies sets the ForwardedCookies field's value. +func (s *CacheSettings) SetForwardedCookies(v *CookieObject) *CacheSettings { + s.ForwardedCookies = v + return s +} + +// SetForwardedHeaders sets the ForwardedHeaders field's value. +func (s *CacheSettings) SetForwardedHeaders(v *HeaderObject) *CacheSettings { + s.ForwardedHeaders = v + return s +} + +// SetForwardedQueryStrings sets the ForwardedQueryStrings field's value. +func (s *CacheSettings) SetForwardedQueryStrings(v *QueryStringObject) *CacheSettings { + s.ForwardedQueryStrings = v + return s +} + +// SetMaximumTTL sets the MaximumTTL field's value. +func (s *CacheSettings) SetMaximumTTL(v int64) *CacheSettings { + s.MaximumTTL = &v + return s +} + +// SetMinimumTTL sets the MinimumTTL field's value. +func (s *CacheSettings) SetMinimumTTL(v int64) *CacheSettings { + s.MinimumTTL = &v + return s +} + +// 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 +// the certificate Amazon Resource Name (ARN), certificate name, domain name, +// and tags. +type Certificate struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the certificate. + Arn *string `locationName:"arn" type:"string"` + + // The timestamp when the certificate was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The domain name of the certificate. + DomainName *string `locationName:"domainName" type:"string"` + + // An array of objects that describe the domain validation records of the certificate. + DomainValidationRecords []*DomainValidationRecord `locationName:"domainValidationRecords" type:"list"` + + // The renewal eligibility of the certificate. + EligibleToRenew *string `locationName:"eligibleToRenew" type:"string"` + + // The number of Lightsail resources that the certificate is attached to. + InUseResourceCount *int64 `locationName:"inUseResourceCount" type:"integer"` + + // The timestamp when the certificate was issued. + IssuedAt *time.Time `locationName:"issuedAt" type:"timestamp"` + + // The certificate authority that issued the certificate. + IssuerCA *string `locationName:"issuerCA" type:"string"` + + // The algorithm used to generate the key pair (the public and private key) + // of the certificate. + KeyAlgorithm *string `locationName:"keyAlgorithm" type:"string"` + + // The name of the certificate (e.g., my-certificate). + Name *string `locationName:"name" type:"string"` + + // The timestamp when the certificate expires. + NotAfter *time.Time `locationName:"notAfter" type:"timestamp"` + + // The timestamp when the certificate is first valid. + NotBefore *time.Time `locationName:"notBefore" type:"timestamp"` + + // An object that describes the status of the certificate renewal managed by + // Lightsail. + RenewalSummary *RenewalSummary `locationName:"renewalSummary" type:"structure"` + + // 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 (https://console.aws.amazon.com/support/home) + // 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 (https://www.virustotal.com/gui/home/url). + // To correct the problem, search for your domain name on the VirusTotal + // (https://www.virustotal.com/gui/home/url) website. If your domain is reported + // as suspicious, see Google Help for Hacked Websites (https://www.google.com/webmasters/hacked/?hl=en) + // 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 (https://console.aws.amazon.com/support/home) + // 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. + RequestFailureReason *string `locationName:"requestFailureReason" type:"string"` + + // The reason the certificate was revoked. This value is present only when the + // certificate status is REVOKED. + RevocationReason *string `locationName:"revocationReason" type:"string"` + + // The timestamp when the certificate was revoked. This value is present only + // when the certificate status is REVOKED. + RevokedAt *time.Time `locationName:"revokedAt" type:"timestamp"` + + // The serial number of the certificate. + SerialNumber *string `locationName:"serialNumber" type:"string"` + + // The validation status of the certificate. + Status *string `locationName:"status" type:"string" enum:"CertificateStatus"` + + // An array of strings that specify the alternate domains (e.g., example2.com) + // and subdomains (e.g., blog.example.com) of the certificate. + SubjectAlternativeNames []*string `locationName:"subjectAlternativeNames" type:"list"` + + // 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 `locationName:"supportCode" type:"string"` + + // The tag keys and optional values for the resource. For more information about + // tags in Lightsail, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s AccountSetupInProgressException) String() string { +func (s Certificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AccountSetupInProgressException) GoString() string { +func (s Certificate) GoString() string { return s.String() } -func newErrorAccountSetupInProgressException(v protocol.ResponseMetadata) error { - return &AccountSetupInProgressException{ - RespMetadata: v, - } +// SetArn sets the Arn field's value. +func (s *Certificate) SetArn(v string) *Certificate { + s.Arn = &v + return s } -// Code returns the exception type name. -func (s *AccountSetupInProgressException) Code() string { - return "AccountSetupInProgressException" +// SetCreatedAt sets the CreatedAt field's value. +func (s *Certificate) SetCreatedAt(v time.Time) *Certificate { + s.CreatedAt = &v + return s } -// Message returns the exception's message. -func (s *AccountSetupInProgressException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetDomainName sets the DomainName field's value. +func (s *Certificate) SetDomainName(v string) *Certificate { + s.DomainName = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *AccountSetupInProgressException) OrigErr() error { - return nil +// SetDomainValidationRecords sets the DomainValidationRecords field's value. +func (s *Certificate) SetDomainValidationRecords(v []*DomainValidationRecord) *Certificate { + s.DomainValidationRecords = v + return s +} + +// SetEligibleToRenew sets the EligibleToRenew field's value. +func (s *Certificate) SetEligibleToRenew(v string) *Certificate { + s.EligibleToRenew = &v + return s +} + +// SetInUseResourceCount sets the InUseResourceCount field's value. +func (s *Certificate) SetInUseResourceCount(v int64) *Certificate { + s.InUseResourceCount = &v + return s +} + +// SetIssuedAt sets the IssuedAt field's value. +func (s *Certificate) SetIssuedAt(v time.Time) *Certificate { + s.IssuedAt = &v + return s +} + +// SetIssuerCA sets the IssuerCA field's value. +func (s *Certificate) SetIssuerCA(v string) *Certificate { + s.IssuerCA = &v + return s +} + +// SetKeyAlgorithm sets the KeyAlgorithm field's value. +func (s *Certificate) SetKeyAlgorithm(v string) *Certificate { + s.KeyAlgorithm = &v + return s +} + +// SetName sets the Name field's value. +func (s *Certificate) SetName(v string) *Certificate { + s.Name = &v + return s +} + +// SetNotAfter sets the NotAfter field's value. +func (s *Certificate) SetNotAfter(v time.Time) *Certificate { + s.NotAfter = &v + return s +} + +// SetNotBefore sets the NotBefore field's value. +func (s *Certificate) SetNotBefore(v time.Time) *Certificate { + s.NotBefore = &v + return s +} + +// SetRenewalSummary sets the RenewalSummary field's value. +func (s *Certificate) SetRenewalSummary(v *RenewalSummary) *Certificate { + s.RenewalSummary = v + return s +} + +// SetRequestFailureReason sets the RequestFailureReason field's value. +func (s *Certificate) SetRequestFailureReason(v string) *Certificate { + s.RequestFailureReason = &v + return s +} + +// SetRevocationReason sets the RevocationReason field's value. +func (s *Certificate) SetRevocationReason(v string) *Certificate { + s.RevocationReason = &v + return s +} + +// SetRevokedAt sets the RevokedAt field's value. +func (s *Certificate) SetRevokedAt(v time.Time) *Certificate { + s.RevokedAt = &v + return s +} + +// SetSerialNumber sets the SerialNumber field's value. +func (s *Certificate) SetSerialNumber(v string) *Certificate { + s.SerialNumber = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Certificate) SetStatus(v string) *Certificate { + s.Status = &v + return s } -func (s *AccountSetupInProgressException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetSubjectAlternativeNames sets the SubjectAlternativeNames field's value. +func (s *Certificate) SetSubjectAlternativeNames(v []*string) *Certificate { + s.SubjectAlternativeNames = v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *AccountSetupInProgressException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetSupportCode sets the SupportCode field's value. +func (s *Certificate) SetSupportCode(v string) *Certificate { + s.SupportCode = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *AccountSetupInProgressException) RequestID() string { - return s.RespMetadata.RequestID +// SetTags sets the Tags field's value. +func (s *Certificate) SetTags(v []*Tag) *Certificate { + s.Tags = v + return s } -// Describes an add-on that is enabled for an Amazon Lightsail resource. -type AddOn struct { +// Describes an Amazon Lightsail SSL/TLS certificate. +type CertificateSummary struct { _ struct{} `type:"structure"` - // The name of the add-on. - Name *string `locationName:"name" type:"string"` + // The Amazon Resource Name (ARN) of the certificate. + CertificateArn *string `locationName:"certificateArn" type:"string"` - // The next daily time an automatic snapshot will be 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. - NextSnapshotTimeOfDay *string `locationName:"nextSnapshotTimeOfDay" type:"string"` + // An object that describes a certificate in detail. + CertificateDetail *Certificate `locationName:"certificateDetail" type:"structure"` - // 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. - SnapshotTimeOfDay *string `locationName:"snapshotTimeOfDay" type:"string"` + // The name of the certificate. + CertificateName *string `locationName:"certificateName" type:"string"` - // The status of the add-on. - Status *string `locationName:"status" type:"string"` + // The domain name of the certificate. + DomainName *string `locationName:"domainName" type:"string"` + + // The tag keys and optional values for the resource. For more information about + // tags in Lightsail, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s AddOn) String() string { +func (s CertificateSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AddOn) GoString() string { +func (s CertificateSummary) GoString() string { return s.String() } -// SetName sets the Name field's value. -func (s *AddOn) SetName(v string) *AddOn { - s.Name = &v +// SetCertificateArn sets the CertificateArn field's value. +func (s *CertificateSummary) SetCertificateArn(v string) *CertificateSummary { + s.CertificateArn = &v return s } -// SetNextSnapshotTimeOfDay sets the NextSnapshotTimeOfDay field's value. -func (s *AddOn) SetNextSnapshotTimeOfDay(v string) *AddOn { - s.NextSnapshotTimeOfDay = &v +// SetCertificateDetail sets the CertificateDetail field's value. +func (s *CertificateSummary) SetCertificateDetail(v *Certificate) *CertificateSummary { + s.CertificateDetail = v return s } -// SetSnapshotTimeOfDay sets the SnapshotTimeOfDay field's value. -func (s *AddOn) SetSnapshotTimeOfDay(v string) *AddOn { - s.SnapshotTimeOfDay = &v +// SetCertificateName sets the CertificateName field's value. +func (s *CertificateSummary) SetCertificateName(v string) *CertificateSummary { + s.CertificateName = &v return s } -// SetStatus sets the Status field's value. -func (s *AddOn) SetStatus(v string) *AddOn { - s.Status = &v +// SetDomainName sets the DomainName field's value. +func (s *CertificateSummary) SetDomainName(v string) *CertificateSummary { + s.DomainName = &v return s } -// Describes a request to enable, modify, or disable an add-on for an Amazon -// Lightsail resource. -// -// An additional cost may be associated with enabling add-ons. For more information, -// see the Lightsail pricing page (https://aws.amazon.com/lightsail/pricing/). -type AddOnRequest struct { +// SetTags sets the Tags field's value. +func (s *CertificateSummary) SetTags(v []*Tag) *CertificateSummary { + s.Tags = v + return s +} + +type CloseInstancePublicPortsInput struct { _ struct{} `type:"structure"` - // The add-on type. + // The name of the instance for which to close ports. // - // AddOnType is a required field - AddOnType *string `locationName:"addOnType" type:"string" required:"true" enum:"AddOnType"` + // InstanceName is a required field + InstanceName *string `locationName:"instanceName" type:"string" required:"true"` - // An object that represents additional parameters when enabling or modifying - // the automatic snapshot add-on. - AutoSnapshotAddOnRequest *AutoSnapshotAddOnRequest `locationName:"autoSnapshotAddOnRequest" type:"structure"` + // An object to describe the ports to close for the specified instance. + // + // PortInfo is a required field + PortInfo *PortInfo `locationName:"portInfo" type:"structure" required:"true"` } // String returns the string representation -func (s AddOnRequest) String() string { +func (s CloseInstancePublicPortsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AddOnRequest) GoString() string { +func (s CloseInstancePublicPortsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AddOnRequest) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AddOnRequest"} - if s.AddOnType == nil { - invalidParams.Add(request.NewErrParamRequired("AddOnType")) +func (s *CloseInstancePublicPortsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CloseInstancePublicPortsInput"} + if s.InstanceName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceName")) + } + if s.PortInfo == nil { + invalidParams.Add(request.NewErrParamRequired("PortInfo")) + } + if s.PortInfo != nil { + if err := s.PortInfo.Validate(); err != nil { + invalidParams.AddNested("PortInfo", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -12410,368 +15653,409 @@ func (s *AddOnRequest) Validate() error { return nil } -// SetAddOnType sets the AddOnType field's value. -func (s *AddOnRequest) SetAddOnType(v string) *AddOnRequest { - s.AddOnType = &v +// SetInstanceName sets the InstanceName field's value. +func (s *CloseInstancePublicPortsInput) SetInstanceName(v string) *CloseInstancePublicPortsInput { + s.InstanceName = &v return s } -// SetAutoSnapshotAddOnRequest sets the AutoSnapshotAddOnRequest field's value. -func (s *AddOnRequest) SetAutoSnapshotAddOnRequest(v *AutoSnapshotAddOnRequest) *AddOnRequest { - s.AutoSnapshotAddOnRequest = v +// SetPortInfo sets the PortInfo field's value. +func (s *CloseInstancePublicPortsInput) SetPortInfo(v *PortInfo) *CloseInstancePublicPortsInput { + s.PortInfo = v return s } -// Describes an alarm. -// -// An alarm is a way to monitor your Amazon Lightsail resource metrics. For -// more information, see Alarms in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-alarms). -type Alarm struct { +type CloseInstancePublicPortsOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the alarm. - Arn *string `locationName:"arn" type:"string"` - - // The arithmetic operation used when comparing the specified statistic and - // threshold. - ComparisonOperator *string `locationName:"comparisonOperator" type:"string" enum:"ComparisonOperator"` - - // The contact protocols for the alarm, such as Email, SMS (text messaging), - // or both. - ContactProtocols []*string `locationName:"contactProtocols" type:"list"` - - // The timestamp when the alarm was created. - CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` - - // The number of data points that must not within the specified threshold to - // trigger the alarm. - DatapointsToAlarm *int64 `locationName:"datapointsToAlarm" type:"integer"` - - // The number of periods over which data is compared to the specified threshold. - EvaluationPeriods *int64 `locationName:"evaluationPeriods" type:"integer"` - - // An object that lists information about the location of the alarm. - Location *ResourceLocation `locationName:"location" type:"structure"` - - // The name of the metric associated with the alarm. - MetricName *string `locationName:"metricName" type:"string" enum:"MetricName"` - - // An object that lists information about the resource monitored by the alarm. - MonitoredResourceInfo *MonitoredResourceInfo `locationName:"monitoredResourceInfo" type:"structure"` - - // The name of the alarm. - Name *string `locationName:"name" type:"string"` + // 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. + Operation *Operation `locationName:"operation" type:"structure"` +} - // Indicates whether the alarm is enabled. - NotificationEnabled *bool `locationName:"notificationEnabled" type:"boolean"` +// String returns the string representation +func (s CloseInstancePublicPortsOutput) String() string { + return awsutil.Prettify(s) +} - // The alarm states that trigger a notification. - NotificationTriggers []*string `locationName:"notificationTriggers" type:"list"` +// GoString returns the string representation +func (s CloseInstancePublicPortsOutput) GoString() string { + return s.String() +} - // The period, in seconds, over which the statistic is applied. - Period *int64 `locationName:"period" min:"60" type:"integer"` +// SetOperation sets the Operation field's value. +func (s *CloseInstancePublicPortsOutput) SetOperation(v *Operation) *CloseInstancePublicPortsOutput { + s.Operation = v + return s +} - // The Lightsail resource type (e.g., Alarm). - ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` +// Describes a CloudFormation stack record created as a result of the create +// cloud formation stack operation. +// +// A CloudFormation stack record provides information about the AWS CloudFormation +// stack used to create a new Amazon Elastic Compute Cloud instance from an +// exported Lightsail instance snapshot. +type CloudFormationStackRecord struct { + _ struct{} `type:"structure"` - // 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. - State *string `locationName:"state" type:"string" enum:"AlarmState"` + // The Amazon Resource Name (ARN) of the CloudFormation stack record. + Arn *string `locationName:"arn" type:"string"` - // The statistic for the metric associated with the alarm. - // - // 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. - Statistic *string `locationName:"statistic" type:"string" enum:"MetricStatistic"` + // The date when the CloudFormation stack record was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` - // 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 `locationName:"supportCode" type:"string"` + // A list of objects describing the destination service, which is AWS CloudFormation, + // and the Amazon Resource Name (ARN) of the AWS CloudFormation stack. + DestinationInfo *DestinationInfo `locationName:"destinationInfo" type:"structure"` - // The value against which the specified statistic is compared. - Threshold *float64 `locationName:"threshold" type:"double"` + // A list of objects describing the Availability Zone and AWS Region of the + // CloudFormation stack record. + Location *ResourceLocation `locationName:"location" type:"structure"` - // Specifies how the alarm handles 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. - TreatMissingData *string `locationName:"treatMissingData" type:"string" enum:"TreatMissingData"` + // The name of the CloudFormation stack record. It starts with CloudFormationStackRecord + // followed by a GUID. + Name *string `locationName:"name" type:"string"` - // The unit of the metric associated with the alarm. - Unit *string `locationName:"unit" type:"string" enum:"MetricUnit"` + // The Lightsail resource type (e.g., CloudFormationStackRecord). + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + + // A list of objects describing the source of the CloudFormation stack record. + SourceInfo []*CloudFormationStackRecordSourceInfo `locationName:"sourceInfo" type:"list"` + + // The current state of the CloudFormation stack record. + State *string `locationName:"state" type:"string" enum:"RecordState"` } // String returns the string representation -func (s Alarm) String() string { +func (s CloudFormationStackRecord) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Alarm) GoString() string { +func (s CloudFormationStackRecord) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *Alarm) SetArn(v string) *Alarm { +func (s *CloudFormationStackRecord) SetArn(v string) *CloudFormationStackRecord { s.Arn = &v return s } -// SetComparisonOperator sets the ComparisonOperator field's value. -func (s *Alarm) SetComparisonOperator(v string) *Alarm { - s.ComparisonOperator = &v +// SetCreatedAt sets the CreatedAt field's value. +func (s *CloudFormationStackRecord) SetCreatedAt(v time.Time) *CloudFormationStackRecord { + s.CreatedAt = &v return s } -// SetContactProtocols sets the ContactProtocols field's value. -func (s *Alarm) SetContactProtocols(v []*string) *Alarm { - s.ContactProtocols = v +// SetDestinationInfo sets the DestinationInfo field's value. +func (s *CloudFormationStackRecord) SetDestinationInfo(v *DestinationInfo) *CloudFormationStackRecord { + s.DestinationInfo = v return s } -// SetCreatedAt sets the CreatedAt field's value. -func (s *Alarm) SetCreatedAt(v time.Time) *Alarm { - s.CreatedAt = &v +// SetLocation sets the Location field's value. +func (s *CloudFormationStackRecord) SetLocation(v *ResourceLocation) *CloudFormationStackRecord { + s.Location = v return s } -// SetDatapointsToAlarm sets the DatapointsToAlarm field's value. -func (s *Alarm) SetDatapointsToAlarm(v int64) *Alarm { - s.DatapointsToAlarm = &v +// SetName sets the Name field's value. +func (s *CloudFormationStackRecord) SetName(v string) *CloudFormationStackRecord { + s.Name = &v return s } -// SetEvaluationPeriods sets the EvaluationPeriods field's value. -func (s *Alarm) SetEvaluationPeriods(v int64) *Alarm { - s.EvaluationPeriods = &v +// SetResourceType sets the ResourceType field's value. +func (s *CloudFormationStackRecord) SetResourceType(v string) *CloudFormationStackRecord { + s.ResourceType = &v return s } -// SetLocation sets the Location field's value. -func (s *Alarm) SetLocation(v *ResourceLocation) *Alarm { - s.Location = v +// SetSourceInfo sets the SourceInfo field's value. +func (s *CloudFormationStackRecord) SetSourceInfo(v []*CloudFormationStackRecordSourceInfo) *CloudFormationStackRecord { + s.SourceInfo = v return s } -// SetMetricName sets the MetricName field's value. -func (s *Alarm) SetMetricName(v string) *Alarm { - s.MetricName = &v +// SetState sets the State field's value. +func (s *CloudFormationStackRecord) SetState(v string) *CloudFormationStackRecord { + s.State = &v return s } -// SetMonitoredResourceInfo sets the MonitoredResourceInfo field's value. -func (s *Alarm) SetMonitoredResourceInfo(v *MonitoredResourceInfo) *Alarm { - s.MonitoredResourceInfo = v +// Describes the source of a CloudFormation stack record (i.e., the export snapshot +// record). +type CloudFormationStackRecordSourceInfo struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the export snapshot record. + Arn *string `locationName:"arn" type:"string"` + + // The name of the record. + Name *string `locationName:"name" type:"string"` + + // The Lightsail resource type (e.g., ExportSnapshotRecord). + ResourceType *string `locationName:"resourceType" type:"string" enum:"CloudFormationStackRecordSourceType"` +} + +// String returns the string representation +func (s CloudFormationStackRecordSourceInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CloudFormationStackRecordSourceInfo) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CloudFormationStackRecordSourceInfo) SetArn(v string) *CloudFormationStackRecordSourceInfo { + s.Arn = &v return s } // SetName sets the Name field's value. -func (s *Alarm) SetName(v string) *Alarm { +func (s *CloudFormationStackRecordSourceInfo) SetName(v string) *CloudFormationStackRecordSourceInfo { s.Name = &v return s } -// SetNotificationEnabled sets the NotificationEnabled field's value. -func (s *Alarm) SetNotificationEnabled(v bool) *Alarm { - s.NotificationEnabled = &v +// SetResourceType sets the ResourceType field's value. +func (s *CloudFormationStackRecordSourceInfo) SetResourceType(v string) *CloudFormationStackRecordSourceInfo { + s.ResourceType = &v return s } -// SetNotificationTriggers sets the NotificationTriggers field's value. -func (s *Alarm) SetNotificationTriggers(v []*string) *Alarm { - s.NotificationTriggers = v +// Describes a contact method. +// +// A contact method is a way to send you notifications. For more information, +// see Notifications in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-notifications). +type ContactMethod struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the contact method. + Arn *string `locationName:"arn" type:"string"` + + // The destination of the contact method, such as an email address or a mobile + // phone number. + ContactEndpoint *string `locationName:"contactEndpoint" type:"string"` + + // The timestamp when the contact method was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // Describes the resource location. + Location *ResourceLocation `locationName:"location" type:"structure"` + + // The name of the contact method. + Name *string `locationName:"name" type:"string"` + + // The protocol of the contact method, such as email or SMS (text messaging). + Protocol *string `locationName:"protocol" type:"string" enum:"ContactProtocol"` + + // The Lightsail resource type (e.g., ContactMethod). + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + + // The current status of the contact method. + // + // A contact method has the following possible status: + // + // * PendingVerification - The contact method has not yet been verified, + // and the verification has not yet expired. + // + // * Valid - The contact method has been verified. + // + // * InValid - An attempt was made to verify the contact method, but the + // verification has expired. + Status *string `locationName:"status" type:"string" enum:"ContactMethodStatus"` + + // 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 `locationName:"supportCode" type:"string"` +} + +// String returns the string representation +func (s ContactMethod) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ContactMethod) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ContactMethod) SetArn(v string) *ContactMethod { + s.Arn = &v return s } -// SetPeriod sets the Period field's value. -func (s *Alarm) SetPeriod(v int64) *Alarm { - s.Period = &v +// SetContactEndpoint sets the ContactEndpoint field's value. +func (s *ContactMethod) SetContactEndpoint(v string) *ContactMethod { + s.ContactEndpoint = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *Alarm) SetResourceType(v string) *Alarm { - s.ResourceType = &v +// SetCreatedAt sets the CreatedAt field's value. +func (s *ContactMethod) SetCreatedAt(v time.Time) *ContactMethod { + s.CreatedAt = &v return s } -// SetState sets the State field's value. -func (s *Alarm) SetState(v string) *Alarm { - s.State = &v +// SetLocation sets the Location field's value. +func (s *ContactMethod) SetLocation(v *ResourceLocation) *ContactMethod { + s.Location = v return s } -// SetStatistic sets the Statistic field's value. -func (s *Alarm) SetStatistic(v string) *Alarm { - s.Statistic = &v +// SetName sets the Name field's value. +func (s *ContactMethod) SetName(v string) *ContactMethod { + s.Name = &v return s } -// SetSupportCode sets the SupportCode field's value. -func (s *Alarm) SetSupportCode(v string) *Alarm { - s.SupportCode = &v +// SetProtocol sets the Protocol field's value. +func (s *ContactMethod) SetProtocol(v string) *ContactMethod { + s.Protocol = &v return s } -// SetThreshold sets the Threshold field's value. -func (s *Alarm) SetThreshold(v float64) *Alarm { - s.Threshold = &v +// SetResourceType sets the ResourceType field's value. +func (s *ContactMethod) SetResourceType(v string) *ContactMethod { + s.ResourceType = &v return s } -// SetTreatMissingData sets the TreatMissingData field's value. -func (s *Alarm) SetTreatMissingData(v string) *Alarm { - s.TreatMissingData = &v +// SetStatus sets the Status field's value. +func (s *ContactMethod) SetStatus(v string) *ContactMethod { + s.Status = &v return s } -// SetUnit sets the Unit field's value. -func (s *Alarm) SetUnit(v string) *Alarm { - s.Unit = &v +// SetSupportCode sets the SupportCode field's value. +func (s *ContactMethod) SetSupportCode(v string) *ContactMethod { + s.SupportCode = &v return s } -type AllocateStaticIpInput struct { +// 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. +type CookieObject struct { _ struct{} `type:"structure"` - // The name of the static IP address. - // - // StaticIpName is a required field - StaticIpName *string `locationName:"staticIpName" type:"string" required:"true"` + // The specific cookies to forward to your distribution's origin. + CookiesAllowList []*string `locationName:"cookiesAllowList" type:"list"` + + // Specifies which cookies to forward to the distribution's origin for a cache + // behavior: all, none, or allow-list to forward only the cookies specified + // in the cookiesAllowList parameter. + Option *string `locationName:"option" type:"string" enum:"ForwardValues"` } // String returns the string representation -func (s AllocateStaticIpInput) String() string { +func (s CookieObject) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AllocateStaticIpInput) GoString() string { +func (s CookieObject) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *AllocateStaticIpInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AllocateStaticIpInput"} - if s.StaticIpName == nil { - invalidParams.Add(request.NewErrParamRequired("StaticIpName")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetCookiesAllowList sets the CookiesAllowList field's value. +func (s *CookieObject) SetCookiesAllowList(v []*string) *CookieObject { + s.CookiesAllowList = v + return s } -// SetStaticIpName sets the StaticIpName field's value. -func (s *AllocateStaticIpInput) SetStaticIpName(v string) *AllocateStaticIpInput { - s.StaticIpName = &v +// SetOption sets the Option field's value. +func (s *CookieObject) SetOption(v string) *CookieObject { + s.Option = &v return s } -type AllocateStaticIpOutput struct { +type CopySnapshotInput struct { _ struct{} `type:"structure"` - // 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 `locationName:"operations" type:"list"` -} - -// String returns the string representation -func (s AllocateStaticIpOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s AllocateStaticIpOutput) GoString() string { - return s.String() -} + // 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 (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-keeping-automatic-snapshots). + RestoreDate *string `locationName:"restoreDate" type:"string"` -// SetOperations sets the Operations field's value. -func (s *AllocateStaticIpOutput) SetOperations(v []*Operation) *AllocateStaticIpOutput { - s.Operations = v - return s -} + // The AWS Region where the source manual or automatic snapshot is located. + // + // SourceRegion is a required field + SourceRegion *string `locationName:"sourceRegion" type:"string" required:"true" enum:"RegionName"` -type AttachDiskInput struct { - _ struct{} `type:"structure"` + // 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 (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-keeping-automatic-snapshots). + SourceResourceName *string `locationName:"sourceResourceName" type:"string"` - // The unique Lightsail disk name (e.g., my-disk). + // The name of the source manual snapshot to copy. // - // DiskName is a required field - DiskName *string `locationName:"diskName" type:"string" required:"true"` + // Constraint: + // + // * Define this parameter only when copying a manual snapshot as another + // manual snapshot. + SourceSnapshotName *string `locationName:"sourceSnapshotName" type:"string"` - // The disk path to expose to the instance (e.g., /dev/xvdf). + // The name of the new manual snapshot to be created as a copy. // - // DiskPath is a required field - DiskPath *string `locationName:"diskPath" type:"string" required:"true"` + // TargetSnapshotName is a required field + TargetSnapshotName *string `locationName:"targetSnapshotName" type:"string" required:"true"` - // The name of the Lightsail instance where you want to utilize the storage - // disk. + // A Boolean value to indicate whether to use the latest available automatic + // snapshot of the specified source instance or disk. // - // InstanceName is a required field - InstanceName *string `locationName:"instanceName" type:"string" required:"true"` + // 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 (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-keeping-automatic-snapshots). + UseLatestRestorableAutoSnapshot *bool `locationName:"useLatestRestorableAutoSnapshot" type:"boolean"` } // String returns the string representation -func (s AttachDiskInput) String() string { +func (s CopySnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AttachDiskInput) GoString() string { +func (s CopySnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AttachDiskInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AttachDiskInput"} - if s.DiskName == nil { - invalidParams.Add(request.NewErrParamRequired("DiskName")) - } - if s.DiskPath == nil { - invalidParams.Add(request.NewErrParamRequired("DiskPath")) +func (s *CopySnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopySnapshotInput"} + if s.SourceRegion == nil { + invalidParams.Add(request.NewErrParamRequired("SourceRegion")) } - if s.InstanceName == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceName")) + if s.TargetSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("TargetSnapshotName")) } if invalidParams.Len() > 0 { @@ -12780,25 +16064,43 @@ func (s *AttachDiskInput) Validate() error { return nil } -// SetDiskName sets the DiskName field's value. -func (s *AttachDiskInput) SetDiskName(v string) *AttachDiskInput { - s.DiskName = &v +// SetRestoreDate sets the RestoreDate field's value. +func (s *CopySnapshotInput) SetRestoreDate(v string) *CopySnapshotInput { + s.RestoreDate = &v return s } -// SetDiskPath sets the DiskPath field's value. -func (s *AttachDiskInput) SetDiskPath(v string) *AttachDiskInput { - s.DiskPath = &v +// SetSourceRegion sets the SourceRegion field's value. +func (s *CopySnapshotInput) SetSourceRegion(v string) *CopySnapshotInput { + s.SourceRegion = &v return s } -// SetInstanceName sets the InstanceName field's value. -func (s *AttachDiskInput) SetInstanceName(v string) *AttachDiskInput { - s.InstanceName = &v +// SetSourceResourceName sets the SourceResourceName field's value. +func (s *CopySnapshotInput) SetSourceResourceName(v string) *CopySnapshotInput { + s.SourceResourceName = &v return s } -type AttachDiskOutput struct { +// SetSourceSnapshotName sets the SourceSnapshotName field's value. +func (s *CopySnapshotInput) SetSourceSnapshotName(v string) *CopySnapshotInput { + s.SourceSnapshotName = &v + return s +} + +// SetTargetSnapshotName sets the TargetSnapshotName field's value. +func (s *CopySnapshotInput) SetTargetSnapshotName(v string) *CopySnapshotInput { + s.TargetSnapshotName = &v + return s +} + +// SetUseLatestRestorableAutoSnapshot sets the UseLatestRestorableAutoSnapshot field's value. +func (s *CopySnapshotInput) SetUseLatestRestorableAutoSnapshot(v bool) *CopySnapshotInput { + s.UseLatestRestorableAutoSnapshot = &v + return s +} + +type CopySnapshotOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -12808,60 +16110,67 @@ type AttachDiskOutput struct { } // String returns the string representation -func (s AttachDiskOutput) String() string { +func (s CopySnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AttachDiskOutput) GoString() string { +func (s CopySnapshotOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *AttachDiskOutput) SetOperations(v []*Operation) *AttachDiskOutput { +func (s *CopySnapshotOutput) SetOperations(v []*Operation) *CopySnapshotOutput { s.Operations = v return s } -type AttachInstancesToLoadBalancerInput struct { +type CreateCertificateInput struct { _ struct{} `type:"structure"` - // An array of strings representing the instance name(s) you want to attach - // to your load balancer. + // The name for the certificate. // - // An instance must be running before you can attach it to your load balancer. + // CertificateName is a required field + CertificateName *string `locationName:"certificateName" type:"string" required:"true"` + + // The domain name (e.g., example.com) for the certificate. // - // There are no additional limits on the number of instances you can attach - // to your load balancer, aside from the limit of Lightsail instances you can - // create in your account (20). + // DomainName is a required field + DomainName *string `locationName:"domainName" type:"string" required:"true"` + + // An array of strings that specify the alternate domains (e.g., example2.com) + // and subdomains (e.g., blog.example.com) for the certificate. // - // InstanceNames is a required field - InstanceNames []*string `locationName:"instanceNames" type:"list" required:"true"` + // 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. + SubjectAlternativeNames []*string `locationName:"subjectAlternativeNames" type:"list"` - // The name of the load balancer. + // The tag keys and optional values to add to the certificate during create. // - // LoadBalancerName is a required field - LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` + // Use the TagResource action to tag a resource after it's created. + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s AttachInstancesToLoadBalancerInput) String() string { +func (s CreateCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AttachInstancesToLoadBalancerInput) GoString() string { +func (s CreateCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AttachInstancesToLoadBalancerInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AttachInstancesToLoadBalancerInput"} - if s.InstanceNames == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceNames")) +func (s *CreateCertificateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateCertificateInput"} + if s.CertificateName == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateName")) } - if s.LoadBalancerName == nil { - invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { @@ -12870,21 +16179,36 @@ func (s *AttachInstancesToLoadBalancerInput) Validate() error { return nil } -// SetInstanceNames sets the InstanceNames field's value. -func (s *AttachInstancesToLoadBalancerInput) SetInstanceNames(v []*string) *AttachInstancesToLoadBalancerInput { - s.InstanceNames = v +// SetCertificateName sets the CertificateName field's value. +func (s *CreateCertificateInput) SetCertificateName(v string) *CreateCertificateInput { + s.CertificateName = &v return s } -// SetLoadBalancerName sets the LoadBalancerName field's value. -func (s *AttachInstancesToLoadBalancerInput) SetLoadBalancerName(v string) *AttachInstancesToLoadBalancerInput { - s.LoadBalancerName = &v +// SetDomainName sets the DomainName field's value. +func (s *CreateCertificateInput) SetDomainName(v string) *CreateCertificateInput { + s.DomainName = &v return s } -type AttachInstancesToLoadBalancerOutput struct { +// SetSubjectAlternativeNames sets the SubjectAlternativeNames field's value. +func (s *CreateCertificateInput) SetSubjectAlternativeNames(v []*string) *CreateCertificateInput { + s.SubjectAlternativeNames = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateCertificateInput) SetTags(v []*Tag) *CreateCertificateInput { + s.Tags = v + return s +} + +type CreateCertificateOutput struct { _ struct{} `type:"structure"` + // An object that describes the certificate created. + Certificate *CertificateSummary `locationName:"certificate" type:"structure"` + // 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. @@ -12892,54 +16216,64 @@ type AttachInstancesToLoadBalancerOutput struct { } // String returns the string representation -func (s AttachInstancesToLoadBalancerOutput) String() string { +func (s CreateCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AttachInstancesToLoadBalancerOutput) GoString() string { +func (s CreateCertificateOutput) GoString() string { return s.String() } +// SetCertificate sets the Certificate field's value. +func (s *CreateCertificateOutput) SetCertificate(v *CertificateSummary) *CreateCertificateOutput { + s.Certificate = v + return s +} + // SetOperations sets the Operations field's value. -func (s *AttachInstancesToLoadBalancerOutput) SetOperations(v []*Operation) *AttachInstancesToLoadBalancerOutput { +func (s *CreateCertificateOutput) SetOperations(v []*Operation) *CreateCertificateOutput { s.Operations = v return s } -type AttachLoadBalancerTlsCertificateInput struct { +type CreateCloudFormationStackInput struct { _ struct{} `type:"structure"` - // The name of your SSL/TLS certificate. - // - // CertificateName is a required field - CertificateName *string `locationName:"certificateName" type:"string" required:"true"` - - // The name of the load balancer to which you want to associate the SSL/TLS - // certificate. + // 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. // - // LoadBalancerName is a required field - LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` + // Instances is a required field + Instances []*InstanceEntry `locationName:"instances" type:"list" required:"true"` } // String returns the string representation -func (s AttachLoadBalancerTlsCertificateInput) String() string { +func (s CreateCloudFormationStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AttachLoadBalancerTlsCertificateInput) GoString() string { +func (s CreateCloudFormationStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AttachLoadBalancerTlsCertificateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AttachLoadBalancerTlsCertificateInput"} - if s.CertificateName == nil { - invalidParams.Add(request.NewErrParamRequired("CertificateName")) +func (s *CreateCloudFormationStackInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateCloudFormationStackInput"} + if s.Instances == nil { + invalidParams.Add(request.NewErrParamRequired("Instances")) } - if s.LoadBalancerName == nil { - invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) + if s.Instances != nil { + for i, v := range s.Instances { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Instances", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -12948,78 +16282,102 @@ func (s *AttachLoadBalancerTlsCertificateInput) Validate() error { return nil } -// SetCertificateName sets the CertificateName field's value. -func (s *AttachLoadBalancerTlsCertificateInput) SetCertificateName(v string) *AttachLoadBalancerTlsCertificateInput { - s.CertificateName = &v - return s -} - -// SetLoadBalancerName sets the LoadBalancerName field's value. -func (s *AttachLoadBalancerTlsCertificateInput) SetLoadBalancerName(v string) *AttachLoadBalancerTlsCertificateInput { - s.LoadBalancerName = &v +// SetInstances sets the Instances field's value. +func (s *CreateCloudFormationStackInput) SetInstances(v []*InstanceEntry) *CreateCloudFormationStackInput { + s.Instances = v return s } -type AttachLoadBalancerTlsCertificateOutput struct { +type CreateCloudFormationStackOutput struct { _ struct{} `type:"structure"` // 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. - // - // These SSL/TLS certificates are only usable by Lightsail load balancers. You - // can't get the certificate and use it for another purpose. Operations []*Operation `locationName:"operations" type:"list"` } // String returns the string representation -func (s AttachLoadBalancerTlsCertificateOutput) String() string { +func (s CreateCloudFormationStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AttachLoadBalancerTlsCertificateOutput) GoString() string { +func (s CreateCloudFormationStackOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *AttachLoadBalancerTlsCertificateOutput) SetOperations(v []*Operation) *AttachLoadBalancerTlsCertificateOutput { +func (s *CreateCloudFormationStackOutput) SetOperations(v []*Operation) *CreateCloudFormationStackOutput { s.Operations = v return s } -type AttachStaticIpInput struct { +type CreateContactMethodInput struct { _ struct{} `type:"structure"` - // The instance name to which you want to attach the static IP address. + // 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 (https://en.wikipedia.org/wiki/E.164) on Wikipedia. // - // InstanceName is a required field - InstanceName *string `locationName:"instanceName" type:"string" required:"true"` + // ContactEndpoint is a required field + ContactEndpoint *string `locationName:"contactEndpoint" min:"1" type:"string" required:"true"` - // The name of the static IP. + // The protocol of the contact method, such as Email or SMS (text messaging). // - // StaticIpName is a required field - StaticIpName *string `locationName:"staticIpName" type:"string" required:"true"` + // 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 (https://docs.aws.amazon.com/sns/latest/dg/sns-supported-regions-countries.html) + // in the Amazon SNS Developer Guide. + // + // For more information about notifications in Amazon Lightsail, see Notifications + // in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-notifications). + // + // Protocol is a required field + Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"ContactProtocol"` } // String returns the string representation -func (s AttachStaticIpInput) String() string { +func (s CreateContactMethodInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AttachStaticIpInput) GoString() string { +func (s CreateContactMethodInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AttachStaticIpInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AttachStaticIpInput"} - if s.InstanceName == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceName")) +func (s *CreateContactMethodInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateContactMethodInput"} + if s.ContactEndpoint == nil { + invalidParams.Add(request.NewErrParamRequired("ContactEndpoint")) } - if s.StaticIpName == nil { - invalidParams.Add(request.NewErrParamRequired("StaticIpName")) + if s.ContactEndpoint != nil && len(*s.ContactEndpoint) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ContactEndpoint", 1)) + } + if s.Protocol == nil { + invalidParams.Add(request.NewErrParamRequired("Protocol")) } if invalidParams.Len() > 0 { @@ -13028,19 +16386,19 @@ func (s *AttachStaticIpInput) Validate() error { return nil } -// SetInstanceName sets the InstanceName field's value. -func (s *AttachStaticIpInput) SetInstanceName(v string) *AttachStaticIpInput { - s.InstanceName = &v +// SetContactEndpoint sets the ContactEndpoint field's value. +func (s *CreateContactMethodInput) SetContactEndpoint(v string) *CreateContactMethodInput { + s.ContactEndpoint = &v return s } -// SetStaticIpName sets the StaticIpName field's value. -func (s *AttachStaticIpInput) SetStaticIpName(v string) *AttachStaticIpInput { - s.StaticIpName = &v +// SetProtocol sets the Protocol field's value. +func (s *CreateContactMethodInput) SetProtocol(v string) *CreateContactMethodInput { + s.Protocol = &v return s } -type AttachStaticIpOutput struct { +type CreateContactMethodOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -13050,493 +16408,516 @@ type AttachStaticIpOutput struct { } // String returns the string representation -func (s AttachStaticIpOutput) String() string { +func (s CreateContactMethodOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AttachStaticIpOutput) GoString() string { +func (s CreateContactMethodOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *AttachStaticIpOutput) SetOperations(v []*Operation) *AttachStaticIpOutput { +func (s *CreateContactMethodOutput) SetOperations(v []*Operation) *CreateContactMethodOutput { s.Operations = v return s } -// Describes a block storage disk that is attached to an instance, and is included -// in an automatic snapshot. -type AttachedDisk struct { +type CreateDiskFromSnapshotInput struct { _ struct{} `type:"structure"` - // The path of the disk (e.g., /dev/xvdf). - Path *string `locationName:"path" type:"string"` - - // The size of the disk in GB. - SizeInGb *int64 `locationName:"sizeInGb" type:"integer"` -} + // An array of objects that represent the add-ons to enable for the new disk. + AddOns []*AddOnRequest `locationName:"addOns" type:"list"` -// String returns the string representation -func (s AttachedDisk) String() string { - return awsutil.Prettify(s) -} + // 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 is a required field + AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` -// GoString returns the string representation -func (s AttachedDisk) GoString() string { - return s.String() -} + // The unique Lightsail disk name (e.g., my-disk). + // + // DiskName is a required field + DiskName *string `locationName:"diskName" type:"string" required:"true"` -// SetPath sets the Path field's value. -func (s *AttachedDisk) SetPath(v string) *AttachedDisk { - s.Path = &v - return s -} + // 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. + DiskSnapshotName *string `locationName:"diskSnapshotName" type:"string"` -// SetSizeInGb sets the SizeInGb field's value. -func (s *AttachedDisk) SetSizeInGb(v int64) *AttachedDisk { - s.SizeInGb = &v - return s -} + // 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 (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). + RestoreDate *string `locationName:"restoreDate" type:"string"` -// Describes a request to enable or modify the automatic snapshot add-on for -// an Amazon Lightsail instance or disk. -// -// When you modify the automatic snapshot time for a resource, it is typically -// effective immediately except under the following conditions: -// -// * If an automatic snapshot has been created for the current day, and you -// change the snapshot time to a later time of day, then the new snapshot -// time will be effective the following day. This ensures that two snapshots -// are not created for the current day. -// -// * If an automatic snapshot has not yet been created for the current day, -// and you change the snapshot time to an earlier time of day, then the new -// snapshot time will be effective the following day and a snapshot is automatically -// created at the previously set time for the current day. This ensures that -// a snapshot is created for the current day. -// -// * If an automatic snapshot has not yet been created for the current day, -// and you change the snapshot time to a time that is within 30 minutes from -// your current time, then the new snapshot time will be effective the following -// day and a snapshot is automatically created at the previously set time -// for the current day. This ensures that a snapshot is created for the current -// day, because 30 minutes is required between your current time and the -// new snapshot time that you specify. -// -// * If an automatic snapshot is scheduled to be created within 30 minutes -// from your current time and you change the snapshot time, then the new -// snapshot time will be effective the following day and a snapshot is automatically -// created at the previously set time for the current day. This ensures that -// a snapshot is created for the current day, because 30 minutes is required -// between your current time and the new snapshot time that you specify. -type AutoSnapshotAddOnRequest struct { - _ struct{} `type:"structure"` + // The size of the disk in GB (e.g., 32). + // + // SizeInGb is a required field + SizeInGb *int64 `locationName:"sizeInGb" type:"integer" required:"true"` - // The daily time when an automatic snapshot will be created. + // The name of the source disk from which the source automatic snapshot was + // created. // // Constraints: // - // * Must be in HH:00 format, and in an hourly increment. + // * This parameter cannot be defined together with the disk snapshot name + // parameter. The source disk name and disk snapshot name parameters are + // mutually exclusive. // - // * Specified in Coordinated Universal Time (UTC). + // * Define this parameter only when creating a new disk from an automatic + // snapshot. For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). + SourceDiskName *string `locationName:"sourceDiskName" type:"string"` + + // The tag keys and optional values to add to the resource during create. // - // * The snapshot will be automatically created between the time specified - // and up to 45 minutes after. - SnapshotTimeOfDay *string `locationName:"snapshotTimeOfDay" type:"string"` + // Use the TagResource action to tag a resource after it's created. + Tags []*Tag `locationName:"tags" type:"list"` + + // 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 (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). + UseLatestRestorableAutoSnapshot *bool `locationName:"useLatestRestorableAutoSnapshot" type:"boolean"` } // String returns the string representation -func (s AutoSnapshotAddOnRequest) String() string { +func (s CreateDiskFromSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AutoSnapshotAddOnRequest) GoString() string { +func (s CreateDiskFromSnapshotInput) GoString() string { return s.String() } -// SetSnapshotTimeOfDay sets the SnapshotTimeOfDay field's value. -func (s *AutoSnapshotAddOnRequest) SetSnapshotTimeOfDay(v string) *AutoSnapshotAddOnRequest { - s.SnapshotTimeOfDay = &v - return s -} - -// Describes an automatic snapshot. -type AutoSnapshotDetails struct { - _ struct{} `type:"structure"` +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDiskFromSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDiskFromSnapshotInput"} + if s.AvailabilityZone == nil { + invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) + } + if s.DiskName == nil { + invalidParams.Add(request.NewErrParamRequired("DiskName")) + } + if s.SizeInGb == nil { + invalidParams.Add(request.NewErrParamRequired("SizeInGb")) + } + if s.AddOns != nil { + for i, v := range s.AddOns { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddOns", i), err.(request.ErrInvalidParams)) + } + } + } - // The timestamp when the automatic snapshot was created. - CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} - // The date of the automatic snapshot in YYYY-MM-DD format. - Date *string `locationName:"date" type:"string"` +// SetAddOns sets the AddOns field's value. +func (s *CreateDiskFromSnapshotInput) SetAddOns(v []*AddOnRequest) *CreateDiskFromSnapshotInput { + s.AddOns = v + return s +} - // An array of objects that describe the block storage disks attached to the - // instance when the automatic snapshot was created. - FromAttachedDisks []*AttachedDisk `locationName:"fromAttachedDisks" type:"list"` +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *CreateDiskFromSnapshotInput) SetAvailabilityZone(v string) *CreateDiskFromSnapshotInput { + s.AvailabilityZone = &v + return s +} - // The status of the automatic snapshot. - Status *string `locationName:"status" type:"string" enum:"AutoSnapshotStatus"` +// SetDiskName sets the DiskName field's value. +func (s *CreateDiskFromSnapshotInput) SetDiskName(v string) *CreateDiskFromSnapshotInput { + s.DiskName = &v + return s } -// String returns the string representation -func (s AutoSnapshotDetails) String() string { - return awsutil.Prettify(s) +// SetDiskSnapshotName sets the DiskSnapshotName field's value. +func (s *CreateDiskFromSnapshotInput) SetDiskSnapshotName(v string) *CreateDiskFromSnapshotInput { + s.DiskSnapshotName = &v + return s } -// GoString returns the string representation -func (s AutoSnapshotDetails) GoString() string { - return s.String() +// SetRestoreDate sets the RestoreDate field's value. +func (s *CreateDiskFromSnapshotInput) SetRestoreDate(v string) *CreateDiskFromSnapshotInput { + s.RestoreDate = &v + return s } -// SetCreatedAt sets the CreatedAt field's value. -func (s *AutoSnapshotDetails) SetCreatedAt(v time.Time) *AutoSnapshotDetails { - s.CreatedAt = &v +// SetSizeInGb sets the SizeInGb field's value. +func (s *CreateDiskFromSnapshotInput) SetSizeInGb(v int64) *CreateDiskFromSnapshotInput { + s.SizeInGb = &v return s } -// SetDate sets the Date field's value. -func (s *AutoSnapshotDetails) SetDate(v string) *AutoSnapshotDetails { - s.Date = &v +// SetSourceDiskName sets the SourceDiskName field's value. +func (s *CreateDiskFromSnapshotInput) SetSourceDiskName(v string) *CreateDiskFromSnapshotInput { + s.SourceDiskName = &v return s } -// SetFromAttachedDisks sets the FromAttachedDisks field's value. -func (s *AutoSnapshotDetails) SetFromAttachedDisks(v []*AttachedDisk) *AutoSnapshotDetails { - s.FromAttachedDisks = v +// SetTags sets the Tags field's value. +func (s *CreateDiskFromSnapshotInput) SetTags(v []*Tag) *CreateDiskFromSnapshotInput { + s.Tags = v return s } -// SetStatus sets the Status field's value. -func (s *AutoSnapshotDetails) SetStatus(v string) *AutoSnapshotDetails { - s.Status = &v +// SetUseLatestRestorableAutoSnapshot sets the UseLatestRestorableAutoSnapshot field's value. +func (s *CreateDiskFromSnapshotInput) SetUseLatestRestorableAutoSnapshot(v bool) *CreateDiskFromSnapshotInput { + s.UseLatestRestorableAutoSnapshot = &v return s } -// Describes an Availability Zone. -type AvailabilityZone struct { +type CreateDiskFromSnapshotOutput struct { _ struct{} `type:"structure"` - // The state of the Availability Zone. - State *string `locationName:"state" type:"string"` - - // The name of the Availability Zone. The format is us-east-2a (case-sensitive). - ZoneName *string `locationName:"zoneName" type:"string"` + // 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 `locationName:"operations" type:"list"` } // String returns the string representation -func (s AvailabilityZone) String() string { +func (s CreateDiskFromSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AvailabilityZone) GoString() string { +func (s CreateDiskFromSnapshotOutput) GoString() string { return s.String() } -// SetState sets the State field's value. -func (s *AvailabilityZone) SetState(v string) *AvailabilityZone { - s.State = &v - return s -} - -// SetZoneName sets the ZoneName field's value. -func (s *AvailabilityZone) SetZoneName(v string) *AvailabilityZone { - s.ZoneName = &v +// SetOperations sets the Operations field's value. +func (s *CreateDiskFromSnapshotOutput) SetOperations(v []*Operation) *CreateDiskFromSnapshotOutput { + s.Operations = v return s } -// Describes a blueprint (a virtual private server image). -type Blueprint struct { +type CreateDiskInput struct { _ struct{} `type:"structure"` - // The ID for the virtual private server image (e.g., app_wordpress_4_4 or app_lamp_7_0). - BlueprintId *string `locationName:"blueprintId" type:"string"` - - // The description of the blueprint. - Description *string `locationName:"description" type:"string"` - - // The group name of the blueprint (e.g., amazon-linux). - Group *string `locationName:"group" type:"string"` - - // 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 *bool `locationName:"isActive" type:"boolean"` - - // The end-user license agreement URL for the image or blueprint. - LicenseUrl *string `locationName:"licenseUrl" type:"string"` - - // 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 power value of 500. 0 indicates that the - // blueprint runs on all instance sizes. - MinPower *int64 `locationName:"minPower" type:"integer"` - - // The friendly name of the blueprint (e.g., Amazon Linux). - Name *string `locationName:"name" type:"string"` - - // The operating system platform (either Linux/Unix-based or Windows Server-based) - // of the blueprint. - Platform *string `locationName:"platform" type:"string" enum:"InstancePlatform"` + // An array of objects that represent the add-ons to enable for the new disk. + AddOns []*AddOnRequest `locationName:"addOns" type:"list"` - // The product URL to learn more about the image or blueprint. - ProductUrl *string `locationName:"productUrl" type:"string"` + // 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. + // + // AvailabilityZone is a required field + AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` - // The type of the blueprint (e.g., os or app). - Type *string `locationName:"type" type:"string" enum:"BlueprintType"` + // The unique Lightsail disk name (e.g., my-disk). + // + // DiskName is a required field + DiskName *string `locationName:"diskName" type:"string" required:"true"` - // The version number of the operating system, application, or stack (e.g., - // 2016.03.0). - Version *string `locationName:"version" type:"string"` + // The size of the disk in GB (e.g., 32). + // + // SizeInGb is a required field + SizeInGb *int64 `locationName:"sizeInGb" type:"integer" required:"true"` - // The version code. - VersionCode *string `locationName:"versionCode" type:"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. + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s Blueprint) String() string { +func (s CreateDiskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Blueprint) GoString() string { +func (s CreateDiskInput) GoString() string { return s.String() } -// SetBlueprintId sets the BlueprintId field's value. -func (s *Blueprint) SetBlueprintId(v string) *Blueprint { - s.BlueprintId = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *Blueprint) SetDescription(v string) *Blueprint { - s.Description = &v - return s -} - -// SetGroup sets the Group field's value. -func (s *Blueprint) SetGroup(v string) *Blueprint { - s.Group = &v - return s -} - -// SetIsActive sets the IsActive field's value. -func (s *Blueprint) SetIsActive(v bool) *Blueprint { - s.IsActive = &v - return s -} - -// SetLicenseUrl sets the LicenseUrl field's value. -func (s *Blueprint) SetLicenseUrl(v string) *Blueprint { - s.LicenseUrl = &v - return s -} - -// SetMinPower sets the MinPower field's value. -func (s *Blueprint) SetMinPower(v int64) *Blueprint { - s.MinPower = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDiskInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDiskInput"} + if s.AvailabilityZone == nil { + invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) + } + if s.DiskName == nil { + invalidParams.Add(request.NewErrParamRequired("DiskName")) + } + if s.SizeInGb == nil { + invalidParams.Add(request.NewErrParamRequired("SizeInGb")) + } + if s.AddOns != nil { + for i, v := range s.AddOns { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddOns", i), err.(request.ErrInvalidParams)) + } + } + } -// SetName sets the Name field's value. -func (s *Blueprint) SetName(v string) *Blueprint { - s.Name = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetPlatform sets the Platform field's value. -func (s *Blueprint) SetPlatform(v string) *Blueprint { - s.Platform = &v +// SetAddOns sets the AddOns field's value. +func (s *CreateDiskInput) SetAddOns(v []*AddOnRequest) *CreateDiskInput { + s.AddOns = v return s } -// SetProductUrl sets the ProductUrl field's value. -func (s *Blueprint) SetProductUrl(v string) *Blueprint { - s.ProductUrl = &v +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *CreateDiskInput) SetAvailabilityZone(v string) *CreateDiskInput { + s.AvailabilityZone = &v return s } -// SetType sets the Type field's value. -func (s *Blueprint) SetType(v string) *Blueprint { - s.Type = &v +// SetDiskName sets the DiskName field's value. +func (s *CreateDiskInput) SetDiskName(v string) *CreateDiskInput { + s.DiskName = &v return s } -// SetVersion sets the Version field's value. -func (s *Blueprint) SetVersion(v string) *Blueprint { - s.Version = &v +// SetSizeInGb sets the SizeInGb field's value. +func (s *CreateDiskInput) SetSizeInGb(v int64) *CreateDiskInput { + s.SizeInGb = &v return s } -// SetVersionCode sets the VersionCode field's value. -func (s *Blueprint) SetVersionCode(v string) *Blueprint { - s.VersionCode = &v +// SetTags sets the Tags field's value. +func (s *CreateDiskInput) SetTags(v []*Tag) *CreateDiskInput { + s.Tags = v return s } -// Describes a bundle, which is a set of specs describing your virtual private -// server (or instance). -type Bundle struct { +type CreateDiskOutput struct { _ struct{} `type:"structure"` - // The bundle ID (e.g., micro_1_0). - BundleId *string `locationName:"bundleId" type:"string"` - - // The number of vCPUs included in the bundle (e.g., 2). - CpuCount *int64 `locationName:"cpuCount" type:"integer"` - - // The size of the SSD (e.g., 30). - DiskSizeInGb *int64 `locationName:"diskSizeInGb" type:"integer"` + // 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 `locationName:"operations" type:"list"` +} - // The Amazon EC2 instance type (e.g., t2.micro). - InstanceType *string `locationName:"instanceType" type:"string"` +// String returns the string representation +func (s CreateDiskOutput) String() string { + return awsutil.Prettify(s) +} - // A Boolean value indicating whether the bundle is active. - IsActive *bool `locationName:"isActive" type:"boolean"` +// GoString returns the string representation +func (s CreateDiskOutput) GoString() string { + return s.String() +} - // A friendly name for the bundle (e.g., Micro). - Name *string `locationName:"name" type:"string"` +// SetOperations sets the Operations field's value. +func (s *CreateDiskOutput) SetOperations(v []*Operation) *CreateDiskOutput { + s.Operations = v + return s +} - // A numeric value that represents the power of the bundle (e.g., 500). You - // can use the bundle's power value in conjunction with a blueprint's minimum - // power value to determine whether the blueprint will run on the bundle. 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 power value of 500. - Power *int64 `locationName:"power" type:"integer"` +type CreateDiskSnapshotInput struct { + _ struct{} `type:"structure"` - // The price in US dollars (e.g., 5.0) of the bundle. - Price *float64 `locationName:"price" type:"float"` + // 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. + DiskName *string `locationName:"diskName" type:"string"` - // The amount of RAM in GB (e.g., 2.0). - RamSizeInGb *float64 `locationName:"ramSizeInGb" type:"float"` + // The name of the destination disk snapshot (e.g., my-disk-snapshot) based + // on the source disk. + // + // DiskSnapshotName is a required field + DiskSnapshotName *string `locationName:"diskSnapshotName" type:"string" required:"true"` - // The operating system platform (Linux/Unix-based or Windows Server-based) - // that the bundle supports. You can only launch a WINDOWS bundle on a blueprint - // that supports the WINDOWS platform. LINUX_UNIX blueprints require a LINUX_UNIX - // bundle. - SupportedPlatforms []*string `locationName:"supportedPlatforms" type:"list"` + // 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. + InstanceName *string `locationName:"instanceName" type:"string"` - // The data transfer rate per month in GB (e.g., 2000). - TransferPerMonthInGb *int64 `locationName:"transferPerMonthInGb" type:"integer"` + // 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. + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s Bundle) String() string { +func (s CreateDiskSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Bundle) GoString() string { +func (s CreateDiskSnapshotInput) GoString() string { return s.String() } -// SetBundleId sets the BundleId field's value. -func (s *Bundle) SetBundleId(v string) *Bundle { - s.BundleId = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDiskSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDiskSnapshotInput"} + if s.DiskSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("DiskSnapshotName")) + } -// SetCpuCount sets the CpuCount field's value. -func (s *Bundle) SetCpuCount(v int64) *Bundle { - s.CpuCount = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetDiskSizeInGb sets the DiskSizeInGb field's value. -func (s *Bundle) SetDiskSizeInGb(v int64) *Bundle { - s.DiskSizeInGb = &v +// SetDiskName sets the DiskName field's value. +func (s *CreateDiskSnapshotInput) SetDiskName(v string) *CreateDiskSnapshotInput { + s.DiskName = &v return s } -// SetInstanceType sets the InstanceType field's value. -func (s *Bundle) SetInstanceType(v string) *Bundle { - s.InstanceType = &v +// SetDiskSnapshotName sets the DiskSnapshotName field's value. +func (s *CreateDiskSnapshotInput) SetDiskSnapshotName(v string) *CreateDiskSnapshotInput { + s.DiskSnapshotName = &v return s } -// SetIsActive sets the IsActive field's value. -func (s *Bundle) SetIsActive(v bool) *Bundle { - s.IsActive = &v +// SetInstanceName sets the InstanceName field's value. +func (s *CreateDiskSnapshotInput) SetInstanceName(v string) *CreateDiskSnapshotInput { + s.InstanceName = &v return s } -// SetName sets the Name field's value. -func (s *Bundle) SetName(v string) *Bundle { - s.Name = &v +// SetTags sets the Tags field's value. +func (s *CreateDiskSnapshotInput) SetTags(v []*Tag) *CreateDiskSnapshotInput { + s.Tags = v return s } -// SetPower sets the Power field's value. -func (s *Bundle) SetPower(v int64) *Bundle { - s.Power = &v - return s -} +type CreateDiskSnapshotOutput struct { + _ struct{} `type:"structure"` -// SetPrice sets the Price field's value. -func (s *Bundle) SetPrice(v float64) *Bundle { - s.Price = &v - return s + // 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 `locationName:"operations" type:"list"` } -// SetRamSizeInGb sets the RamSizeInGb field's value. -func (s *Bundle) SetRamSizeInGb(v float64) *Bundle { - s.RamSizeInGb = &v - return s +// String returns the string representation +func (s CreateDiskSnapshotOutput) String() string { + return awsutil.Prettify(s) } -// SetSupportedPlatforms sets the SupportedPlatforms field's value. -func (s *Bundle) SetSupportedPlatforms(v []*string) *Bundle { - s.SupportedPlatforms = v - return s +// GoString returns the string representation +func (s CreateDiskSnapshotOutput) GoString() string { + return s.String() } -// SetTransferPerMonthInGb sets the TransferPerMonthInGb field's value. -func (s *Bundle) SetTransferPerMonthInGb(v int64) *Bundle { - s.TransferPerMonthInGb = &v +// SetOperations sets the Operations field's value. +func (s *CreateDiskSnapshotOutput) SetOperations(v []*Operation) *CreateDiskSnapshotOutput { + s.Operations = v return s } -type CloseInstancePublicPortsInput struct { +type CreateDistributionInput struct { _ struct{} `type:"structure"` - // The name of the instance for which to close ports. + // The bundle ID to use for the distribution. // - // InstanceName is a required field - InstanceName *string `locationName:"instanceName" type:"string" required:"true"` + // 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. + // + // BundleId is a required field + BundleId *string `locationName:"bundleId" type:"string" required:"true"` - // An object to describe the ports to close for the specified instance. + // An object that describes the cache behavior settings for the distribution. + CacheBehaviorSettings *CacheSettings `locationName:"cacheBehaviorSettings" type:"structure"` + + // An array of objects that describe the per-path cache behavior for the distribution. + CacheBehaviors []*CacheBehaviorPerPath `locationName:"cacheBehaviors" type:"list"` + + // An object that describes the default cache behavior for the distribution. // - // PortInfo is a required field - PortInfo *PortInfo `locationName:"portInfo" type:"structure" required:"true"` + // DefaultCacheBehavior is a required field + DefaultCacheBehavior *CacheBehavior `locationName:"defaultCacheBehavior" type:"structure" required:"true"` + + // The name for the distribution. + // + // DistributionName is a required field + DistributionName *string `locationName:"distributionName" type:"string" required:"true"` + + // 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 is a required field + Origin *InputOrigin `locationName:"origin" type:"structure" required:"true"` + + // 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. + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s CloseInstancePublicPortsInput) String() string { +func (s CreateDistributionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CloseInstancePublicPortsInput) GoString() string { +func (s CreateDistributionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CloseInstancePublicPortsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CloseInstancePublicPortsInput"} - if s.InstanceName == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceName")) +func (s *CreateDistributionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDistributionInput"} + if s.BundleId == nil { + invalidParams.Add(request.NewErrParamRequired("BundleId")) } - if s.PortInfo == nil { - invalidParams.Add(request.NewErrParamRequired("PortInfo")) + if s.DefaultCacheBehavior == nil { + invalidParams.Add(request.NewErrParamRequired("DefaultCacheBehavior")) } - if s.PortInfo != nil { - if err := s.PortInfo.Validate(); err != nil { - invalidParams.AddNested("PortInfo", err.(request.ErrInvalidParams)) - } + if s.DistributionName == nil { + invalidParams.Add(request.NewErrParamRequired("DistributionName")) + } + if s.Origin == nil { + invalidParams.Add(request.NewErrParamRequired("Origin")) } if invalidParams.Len() > 0 { @@ -13545,298 +16926,374 @@ func (s *CloseInstancePublicPortsInput) Validate() error { return nil } -// SetInstanceName sets the InstanceName field's value. -func (s *CloseInstancePublicPortsInput) SetInstanceName(v string) *CloseInstancePublicPortsInput { - s.InstanceName = &v +// SetBundleId sets the BundleId field's value. +func (s *CreateDistributionInput) SetBundleId(v string) *CreateDistributionInput { + s.BundleId = &v return s } -// SetPortInfo sets the PortInfo field's value. -func (s *CloseInstancePublicPortsInput) SetPortInfo(v *PortInfo) *CloseInstancePublicPortsInput { - s.PortInfo = v +// SetCacheBehaviorSettings sets the CacheBehaviorSettings field's value. +func (s *CreateDistributionInput) SetCacheBehaviorSettings(v *CacheSettings) *CreateDistributionInput { + s.CacheBehaviorSettings = v return s } -type CloseInstancePublicPortsOutput struct { +// SetCacheBehaviors sets the CacheBehaviors field's value. +func (s *CreateDistributionInput) SetCacheBehaviors(v []*CacheBehaviorPerPath) *CreateDistributionInput { + s.CacheBehaviors = v + return s +} + +// SetDefaultCacheBehavior sets the DefaultCacheBehavior field's value. +func (s *CreateDistributionInput) SetDefaultCacheBehavior(v *CacheBehavior) *CreateDistributionInput { + s.DefaultCacheBehavior = v + return s +} + +// SetDistributionName sets the DistributionName field's value. +func (s *CreateDistributionInput) SetDistributionName(v string) *CreateDistributionInput { + s.DistributionName = &v + return s +} + +// SetOrigin sets the Origin field's value. +func (s *CreateDistributionInput) SetOrigin(v *InputOrigin) *CreateDistributionInput { + s.Origin = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDistributionInput) SetTags(v []*Tag) *CreateDistributionInput { + s.Tags = v + return s +} + +type CreateDistributionOutput struct { _ struct{} `type:"structure"` - // 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. + // An object that describes the distribution created. + Distribution *LightsailDistribution `locationName:"distribution" type:"structure"` + + // 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 `locationName:"operation" type:"structure"` } // String returns the string representation -func (s CloseInstancePublicPortsOutput) String() string { +func (s CreateDistributionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CloseInstancePublicPortsOutput) GoString() string { +func (s CreateDistributionOutput) GoString() string { return s.String() } +// SetDistribution sets the Distribution field's value. +func (s *CreateDistributionOutput) SetDistribution(v *LightsailDistribution) *CreateDistributionOutput { + s.Distribution = v + return s +} + // SetOperation sets the Operation field's value. -func (s *CloseInstancePublicPortsOutput) SetOperation(v *Operation) *CloseInstancePublicPortsOutput { +func (s *CreateDistributionOutput) SetOperation(v *Operation) *CreateDistributionOutput { s.Operation = v return s } -// Describes a CloudFormation stack record created as a result of the create -// cloud formation stack operation. -// -// A CloudFormation stack record provides information about the AWS CloudFormation -// stack used to create a new Amazon Elastic Compute Cloud instance from an -// exported Lightsail instance snapshot. -type CloudFormationStackRecord struct { +type CreateDomainEntryInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the CloudFormation stack record. - Arn *string `locationName:"arn" type:"string"` - - // The date when the CloudFormation stack record was created. - CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` - - // A list of objects describing the destination service, which is AWS CloudFormation, - // and the Amazon Resource Name (ARN) of the AWS CloudFormation stack. - DestinationInfo *DestinationInfo `locationName:"destinationInfo" type:"structure"` - - // A list of objects describing the Availability Zone and AWS Region of the - // CloudFormation stack record. - Location *ResourceLocation `locationName:"location" type:"structure"` - - // The name of the CloudFormation stack record. It starts with CloudFormationStackRecord - // followed by a GUID. - Name *string `locationName:"name" type:"string"` - - // The Lightsail resource type (e.g., CloudFormationStackRecord). - ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` - - // A list of objects describing the source of the CloudFormation stack record. - SourceInfo []*CloudFormationStackRecordSourceInfo `locationName:"sourceInfo" type:"list"` + // An array of key-value pairs containing information about the domain entry + // request. + // + // DomainEntry is a required field + DomainEntry *DomainEntry `locationName:"domainEntry" type:"structure" required:"true"` - // The current state of the CloudFormation stack record. - State *string `locationName:"state" type:"string" enum:"RecordState"` + // The domain name (e.g., example.com) for which you want to create the domain + // entry. + // + // DomainName is a required field + DomainName *string `locationName:"domainName" type:"string" required:"true"` } // String returns the string representation -func (s CloudFormationStackRecord) String() string { +func (s CreateDomainEntryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CloudFormationStackRecord) GoString() string { +func (s CreateDomainEntryInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *CloudFormationStackRecord) SetArn(v string) *CloudFormationStackRecord { - s.Arn = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDomainEntryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDomainEntryInput"} + if s.DomainEntry == nil { + invalidParams.Add(request.NewErrParamRequired("DomainEntry")) + } + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } -// SetCreatedAt sets the CreatedAt field's value. -func (s *CloudFormationStackRecord) SetCreatedAt(v time.Time) *CloudFormationStackRecord { - s.CreatedAt = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetDestinationInfo sets the DestinationInfo field's value. -func (s *CloudFormationStackRecord) SetDestinationInfo(v *DestinationInfo) *CloudFormationStackRecord { - s.DestinationInfo = v +// SetDomainEntry sets the DomainEntry field's value. +func (s *CreateDomainEntryInput) SetDomainEntry(v *DomainEntry) *CreateDomainEntryInput { + s.DomainEntry = v return s } -// SetLocation sets the Location field's value. -func (s *CloudFormationStackRecord) SetLocation(v *ResourceLocation) *CloudFormationStackRecord { - s.Location = v +// SetDomainName sets the DomainName field's value. +func (s *CreateDomainEntryInput) SetDomainName(v string) *CreateDomainEntryInput { + s.DomainName = &v return s } -// SetName sets the Name field's value. -func (s *CloudFormationStackRecord) SetName(v string) *CloudFormationStackRecord { - s.Name = &v - return s +type CreateDomainEntryOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operation" type:"structure"` } -// SetResourceType sets the ResourceType field's value. -func (s *CloudFormationStackRecord) SetResourceType(v string) *CloudFormationStackRecord { - s.ResourceType = &v - return s +// String returns the string representation +func (s CreateDomainEntryOutput) String() string { + return awsutil.Prettify(s) } -// SetSourceInfo sets the SourceInfo field's value. -func (s *CloudFormationStackRecord) SetSourceInfo(v []*CloudFormationStackRecordSourceInfo) *CloudFormationStackRecord { - s.SourceInfo = v - return s +// GoString returns the string representation +func (s CreateDomainEntryOutput) GoString() string { + return s.String() } -// SetState sets the State field's value. -func (s *CloudFormationStackRecord) SetState(v string) *CloudFormationStackRecord { - s.State = &v +// SetOperation sets the Operation field's value. +func (s *CreateDomainEntryOutput) SetOperation(v *Operation) *CreateDomainEntryOutput { + s.Operation = v return s } -// Describes the source of a CloudFormation stack record (i.e., the export snapshot -// record). -type CloudFormationStackRecordSourceInfo struct { +type CreateDomainInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the export snapshot record. - Arn *string `locationName:"arn" type:"string"` - - // The name of the record. - Name *string `locationName:"name" type:"string"` + // 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. + // + // DomainName is a required field + DomainName *string `locationName:"domainName" type:"string" required:"true"` - // The Lightsail resource type (e.g., ExportSnapshotRecord). - ResourceType *string `locationName:"resourceType" type:"string" enum:"CloudFormationStackRecordSourceType"` + // 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. + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s CloudFormationStackRecordSourceInfo) String() string { +func (s CreateDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CloudFormationStackRecordSourceInfo) GoString() string { +func (s CreateDomainInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *CloudFormationStackRecordSourceInfo) SetArn(v string) *CloudFormationStackRecordSourceInfo { - s.Arn = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDomainInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetName sets the Name field's value. -func (s *CloudFormationStackRecordSourceInfo) SetName(v string) *CloudFormationStackRecordSourceInfo { - s.Name = &v +// SetDomainName sets the DomainName field's value. +func (s *CreateDomainInput) SetDomainName(v string) *CreateDomainInput { + s.DomainName = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *CloudFormationStackRecordSourceInfo) SetResourceType(v string) *CloudFormationStackRecordSourceInfo { - s.ResourceType = &v +// SetTags sets the Tags field's value. +func (s *CreateDomainInput) SetTags(v []*Tag) *CreateDomainInput { + s.Tags = v return s } -// Describes a contact method. -// -// A contact method is a way to send you notifications. For more information, -// see Notifications in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-notifications). -type ContactMethod struct { +type CreateDomainOutput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the contact method. - Arn *string `locationName:"arn" type:"string"` - - // The destination of the contact method, such as an email address or a mobile - // phone number. - ContactEndpoint *string `locationName:"contactEndpoint" type:"string"` - - // The timestamp when the contact method was created. - CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + // 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 `locationName:"operation" type:"structure"` +} - // Describes the resource location. - Location *ResourceLocation `locationName:"location" type:"structure"` +// String returns the string representation +func (s CreateDomainOutput) String() string { + return awsutil.Prettify(s) +} - // The name of the contact method. - Name *string `locationName:"name" type:"string"` +// GoString returns the string representation +func (s CreateDomainOutput) GoString() string { + return s.String() +} - // The protocol of the contact method, such as email or SMS (text messaging). - Protocol *string `locationName:"protocol" type:"string" enum:"ContactProtocol"` +// SetOperation sets the Operation field's value. +func (s *CreateDomainOutput) SetOperation(v *Operation) *CreateDomainOutput { + s.Operation = v + return s +} - // The Lightsail resource type (e.g., ContactMethod). - ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` +type CreateInstanceSnapshotInput struct { + _ struct{} `type:"structure"` - // The current status of the contact method. - // - // A contact method has the following possible status: - // - // * PendingVerification - The contact method has not yet been verified, - // and the verification has not yet expired. + // The Lightsail instance on which to base your snapshot. // - // * Valid - The contact method has been verified. + // InstanceName is a required field + InstanceName *string `locationName:"instanceName" type:"string" required:"true"` + + // The name for your new snapshot. // - // * InValid - An attempt was made to verify the contact method, but the - // verification has expired. - Status *string `locationName:"status" type:"string" enum:"ContactMethodStatus"` + // InstanceSnapshotName is a required field + InstanceSnapshotName *string `locationName:"instanceSnapshotName" type:"string" required:"true"` - // 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 `locationName:"supportCode" type:"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. + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s ContactMethod) String() string { +func (s CreateInstanceSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ContactMethod) GoString() string { +func (s CreateInstanceSnapshotInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *ContactMethod) SetArn(v string) *ContactMethod { - s.Arn = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateInstanceSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateInstanceSnapshotInput"} + if s.InstanceName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceName")) + } + if s.InstanceSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceSnapshotName")) + } -// SetContactEndpoint sets the ContactEndpoint field's value. -func (s *ContactMethod) SetContactEndpoint(v string) *ContactMethod { - s.ContactEndpoint = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetCreatedAt sets the CreatedAt field's value. -func (s *ContactMethod) SetCreatedAt(v time.Time) *ContactMethod { - s.CreatedAt = &v +// SetInstanceName sets the InstanceName field's value. +func (s *CreateInstanceSnapshotInput) SetInstanceName(v string) *CreateInstanceSnapshotInput { + s.InstanceName = &v return s } -// SetLocation sets the Location field's value. -func (s *ContactMethod) SetLocation(v *ResourceLocation) *ContactMethod { - s.Location = v +// SetInstanceSnapshotName sets the InstanceSnapshotName field's value. +func (s *CreateInstanceSnapshotInput) SetInstanceSnapshotName(v string) *CreateInstanceSnapshotInput { + s.InstanceSnapshotName = &v return s } -// SetName sets the Name field's value. -func (s *ContactMethod) SetName(v string) *ContactMethod { - s.Name = &v +// SetTags sets the Tags field's value. +func (s *CreateInstanceSnapshotInput) SetTags(v []*Tag) *CreateInstanceSnapshotInput { + s.Tags = v return s } -// SetProtocol sets the Protocol field's value. -func (s *ContactMethod) SetProtocol(v string) *ContactMethod { - s.Protocol = &v - return s +type CreateInstanceSnapshotOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operations" type:"list"` } -// SetResourceType sets the ResourceType field's value. -func (s *ContactMethod) SetResourceType(v string) *ContactMethod { - s.ResourceType = &v - return s +// String returns the string representation +func (s CreateInstanceSnapshotOutput) String() string { + return awsutil.Prettify(s) } -// SetStatus sets the Status field's value. -func (s *ContactMethod) SetStatus(v string) *ContactMethod { - s.Status = &v - return s +// GoString returns the string representation +func (s CreateInstanceSnapshotOutput) GoString() string { + return s.String() } -// SetSupportCode sets the SupportCode field's value. -func (s *ContactMethod) SetSupportCode(v string) *ContactMethod { - s.SupportCode = &v +// SetOperations sets the Operations field's value. +func (s *CreateInstanceSnapshotOutput) SetOperations(v []*Operation) *CreateInstanceSnapshotOutput { + s.Operations = v return s } -type CopySnapshotInput struct { +type CreateInstancesFromSnapshotInput struct { _ struct{} `type:"structure"` - // The date of the source automatic snapshot to copy. Use the get auto snapshots - // operation to identify the dates of the available automatic snapshots. + // An array of objects representing the add-ons to enable for the new instance. + AddOns []*AddOnRequest `locationName:"addOns" type:"list"` + + // An object containing information about one or more disk mappings. + AttachedDiskMapping map[string][]*DiskMap `locationName:"attachedDiskMapping" type:"map"` + + // 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 (http://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_GetRegions.html) + // operation. Be sure to add the include Availability Zones parameter to your + // request. + // + // AvailabilityZone is a required field + AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` + + // The bundle of specification information for your virtual private server (or + // instance), including the pricing plan (e.g., micro_1_0). + // + // BundleId is a required field + BundleId *string `locationName:"bundleId" type:"string" required:"true"` + + // The names for your new instances. + // + // InstanceNames is a required field + InstanceNames []*string `locationName:"instanceNames" type:"list" required:"true"` + + // 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. + InstanceSnapshotName *string `locationName:"instanceSnapshotName" type:"string"` + + // The name for your key pair. + KeyPairName *string `locationName:"keyPairName" type:"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: // @@ -13846,39 +17303,30 @@ type CopySnapshotInput struct { // 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 (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-keeping-automatic-snapshots). + // * Define this parameter only when creating a new instance from an automatic + // snapshot. For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). RestoreDate *string `locationName:"restoreDate" type:"string"` - // The AWS Region where the source manual or automatic snapshot is located. - // - // SourceRegion is a required field - SourceRegion *string `locationName:"sourceRegion" type:"string" required:"true" enum:"RegionName"` - - // The name of the source instance or disk from which the source automatic snapshot + // The name of the source instance 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 (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-keeping-automatic-snapshots). - SourceResourceName *string `locationName:"sourceResourceName" type:"string"` - - // The name of the source manual snapshot to copy. + // Constraints: // - // Constraint: + // * 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 copying a manual snapshot as another - // manual snapshot. - SourceSnapshotName *string `locationName:"sourceSnapshotName" type:"string"` + // * Define this parameter only when creating a new instance from an automatic + // snapshot. For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). + SourceInstanceName *string `locationName:"sourceInstanceName" type:"string"` - // The name of the new manual snapshot to be created as a copy. + // The tag keys and optional values to add to the resource during create. // - // TargetSnapshotName is a required field - TargetSnapshotName *string `locationName:"targetSnapshotName" type:"string" required:"true"` + // Use the TagResource action to tag a resource after it's created. + Tags []*Tag `locationName:"tags" type:"list"` // A Boolean value to indicate whether to use the latest available automatic - // snapshot of the specified source instance or disk. + // snapshot. // // Constraints: // @@ -13886,29 +17334,51 @@ type CopySnapshotInput struct { // 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 (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-keeping-automatic-snapshots). + // * Define this parameter only when creating a new instance from an automatic + // snapshot. For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). UseLatestRestorableAutoSnapshot *bool `locationName:"useLatestRestorableAutoSnapshot" type:"boolean"` + + // 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 + // (https://lightsail.aws.amazon.com/ls/docs/getting-started/article/compare-options-choose-lightsail-instance-image). + UserData *string `locationName:"userData" type:"string"` } // String returns the string representation -func (s CopySnapshotInput) String() string { +func (s CreateInstancesFromSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CopySnapshotInput) GoString() string { +func (s CreateInstancesFromSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CopySnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CopySnapshotInput"} - if s.SourceRegion == nil { - invalidParams.Add(request.NewErrParamRequired("SourceRegion")) +func (s *CreateInstancesFromSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateInstancesFromSnapshotInput"} + if s.AvailabilityZone == nil { + invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) } - if s.TargetSnapshotName == nil { - invalidParams.Add(request.NewErrParamRequired("TargetSnapshotName")) + if s.BundleId == nil { + invalidParams.Add(request.NewErrParamRequired("BundleId")) + } + if s.InstanceNames == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceNames")) + } + if s.AddOns != nil { + for i, v := range s.AddOns { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddOns", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -13917,43 +17387,79 @@ func (s *CopySnapshotInput) Validate() error { return nil } -// SetRestoreDate sets the RestoreDate field's value. -func (s *CopySnapshotInput) SetRestoreDate(v string) *CopySnapshotInput { - s.RestoreDate = &v +// SetAddOns sets the AddOns field's value. +func (s *CreateInstancesFromSnapshotInput) SetAddOns(v []*AddOnRequest) *CreateInstancesFromSnapshotInput { + s.AddOns = v return s } -// SetSourceRegion sets the SourceRegion field's value. -func (s *CopySnapshotInput) SetSourceRegion(v string) *CopySnapshotInput { - s.SourceRegion = &v +// SetAttachedDiskMapping sets the AttachedDiskMapping field's value. +func (s *CreateInstancesFromSnapshotInput) SetAttachedDiskMapping(v map[string][]*DiskMap) *CreateInstancesFromSnapshotInput { + s.AttachedDiskMapping = v return s } -// SetSourceResourceName sets the SourceResourceName field's value. -func (s *CopySnapshotInput) SetSourceResourceName(v string) *CopySnapshotInput { - s.SourceResourceName = &v +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *CreateInstancesFromSnapshotInput) SetAvailabilityZone(v string) *CreateInstancesFromSnapshotInput { + s.AvailabilityZone = &v return s } -// SetSourceSnapshotName sets the SourceSnapshotName field's value. -func (s *CopySnapshotInput) SetSourceSnapshotName(v string) *CopySnapshotInput { - s.SourceSnapshotName = &v +// SetBundleId sets the BundleId field's value. +func (s *CreateInstancesFromSnapshotInput) SetBundleId(v string) *CreateInstancesFromSnapshotInput { + s.BundleId = &v return s } -// SetTargetSnapshotName sets the TargetSnapshotName field's value. -func (s *CopySnapshotInput) SetTargetSnapshotName(v string) *CopySnapshotInput { - s.TargetSnapshotName = &v +// SetInstanceNames sets the InstanceNames field's value. +func (s *CreateInstancesFromSnapshotInput) SetInstanceNames(v []*string) *CreateInstancesFromSnapshotInput { + s.InstanceNames = v + return s +} + +// SetInstanceSnapshotName sets the InstanceSnapshotName field's value. +func (s *CreateInstancesFromSnapshotInput) SetInstanceSnapshotName(v string) *CreateInstancesFromSnapshotInput { + s.InstanceSnapshotName = &v + return s +} + +// SetKeyPairName sets the KeyPairName field's value. +func (s *CreateInstancesFromSnapshotInput) SetKeyPairName(v string) *CreateInstancesFromSnapshotInput { + s.KeyPairName = &v + return s +} + +// SetRestoreDate sets the RestoreDate field's value. +func (s *CreateInstancesFromSnapshotInput) SetRestoreDate(v string) *CreateInstancesFromSnapshotInput { + s.RestoreDate = &v + return s +} + +// SetSourceInstanceName sets the SourceInstanceName field's value. +func (s *CreateInstancesFromSnapshotInput) SetSourceInstanceName(v string) *CreateInstancesFromSnapshotInput { + s.SourceInstanceName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateInstancesFromSnapshotInput) SetTags(v []*Tag) *CreateInstancesFromSnapshotInput { + s.Tags = v return s } // SetUseLatestRestorableAutoSnapshot sets the UseLatestRestorableAutoSnapshot field's value. -func (s *CopySnapshotInput) SetUseLatestRestorableAutoSnapshot(v bool) *CopySnapshotInput { +func (s *CreateInstancesFromSnapshotInput) SetUseLatestRestorableAutoSnapshot(v bool) *CreateInstancesFromSnapshotInput { s.UseLatestRestorableAutoSnapshot = &v return s } -type CopySnapshotOutput struct { +// SetUserData sets the UserData field's value. +func (s *CreateInstancesFromSnapshotInput) SetUserData(v string) *CreateInstancesFromSnapshotInput { + s.UserData = &v + return s +} + +type CreateInstancesFromSnapshotOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -13963,56 +17469,118 @@ type CopySnapshotOutput struct { } // String returns the string representation -func (s CopySnapshotOutput) String() string { +func (s CreateInstancesFromSnapshotOutput) String() string { return awsutil.Prettify(s) } -// GoString returns the string representation -func (s CopySnapshotOutput) GoString() string { - return s.String() -} +// GoString returns the string representation +func (s CreateInstancesFromSnapshotOutput) GoString() string { + return s.String() +} + +// SetOperations sets the Operations field's value. +func (s *CreateInstancesFromSnapshotOutput) SetOperations(v []*Operation) *CreateInstancesFromSnapshotOutput { + s.Operations = v + return s +} + +type CreateInstancesInput struct { + _ struct{} `type:"structure"` + + // An array of objects representing the add-ons to enable for the new instance. + AddOns []*AddOnRequest `locationName:"addOns" type:"list"` + + // 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 (http://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_GetRegions.html) + // operation. Be sure to add the include Availability Zones parameter to your + // request. + // + // AvailabilityZone is a required field + AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` + + // 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. + // + // BlueprintId is a required field + BlueprintId *string `locationName:"blueprintId" type:"string" required:"true"` + + // The bundle of specification information for your virtual private server (or + // instance), including the pricing plan (e.g., micro_1_0). + // + // BundleId is a required field + BundleId *string `locationName:"bundleId" type:"string" required:"true"` + + // (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. + // + // Deprecated: CustomImageName has been deprecated + CustomImageName *string `locationName:"customImageName" deprecated:"true" type:"string"` + + // The names to use for your new Lightsail instances. Separate multiple values + // using quotation marks and commas, for example: ["MyFirstInstance","MySecondInstance"] + // + // InstanceNames is a required field + InstanceNames []*string `locationName:"instanceNames" type:"list" required:"true"` -// SetOperations sets the Operations field's value. -func (s *CopySnapshotOutput) SetOperations(v []*Operation) *CopySnapshotOutput { - s.Operations = v - return s -} + // The name of your key pair. + KeyPairName *string `locationName:"keyPairName" type:"string"` -type CreateCloudFormationStackInput struct { - _ struct{} `type:"structure"` + // 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. + Tags []*Tag `locationName:"tags" type:"list"` - // 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. + // 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. // - // Instances is a required field - Instances []*InstanceEntry `locationName:"instances" type:"list" required:"true"` + // 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 + // (https://lightsail.aws.amazon.com/ls/docs/getting-started/article/compare-options-choose-lightsail-instance-image). + UserData *string `locationName:"userData" type:"string"` } // String returns the string representation -func (s CreateCloudFormationStackInput) String() string { +func (s CreateInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateCloudFormationStackInput) GoString() string { +func (s CreateInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateCloudFormationStackInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateCloudFormationStackInput"} - if s.Instances == nil { - invalidParams.Add(request.NewErrParamRequired("Instances")) +func (s *CreateInstancesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateInstancesInput"} + if s.AvailabilityZone == nil { + invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) } - if s.Instances != nil { - for i, v := range s.Instances { + if s.BlueprintId == nil { + invalidParams.Add(request.NewErrParamRequired("BlueprintId")) + } + if s.BundleId == nil { + invalidParams.Add(request.NewErrParamRequired("BundleId")) + } + if s.InstanceNames == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceNames")) + } + if s.AddOns != nil { + for i, v := range s.AddOns { if v == nil { continue } if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Instances", i), err.(request.ErrInvalidParams)) + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddOns", i), err.(request.ErrInvalidParams)) } } } @@ -14023,13 +17591,61 @@ func (s *CreateCloudFormationStackInput) Validate() error { return nil } -// SetInstances sets the Instances field's value. -func (s *CreateCloudFormationStackInput) SetInstances(v []*InstanceEntry) *CreateCloudFormationStackInput { - s.Instances = v +// SetAddOns sets the AddOns field's value. +func (s *CreateInstancesInput) SetAddOns(v []*AddOnRequest) *CreateInstancesInput { + s.AddOns = v return s } -type CreateCloudFormationStackOutput struct { +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *CreateInstancesInput) SetAvailabilityZone(v string) *CreateInstancesInput { + s.AvailabilityZone = &v + return s +} + +// SetBlueprintId sets the BlueprintId field's value. +func (s *CreateInstancesInput) SetBlueprintId(v string) *CreateInstancesInput { + s.BlueprintId = &v + return s +} + +// SetBundleId sets the BundleId field's value. +func (s *CreateInstancesInput) SetBundleId(v string) *CreateInstancesInput { + s.BundleId = &v + return s +} + +// SetCustomImageName sets the CustomImageName field's value. +func (s *CreateInstancesInput) SetCustomImageName(v string) *CreateInstancesInput { + s.CustomImageName = &v + return s +} + +// SetInstanceNames sets the InstanceNames field's value. +func (s *CreateInstancesInput) SetInstanceNames(v []*string) *CreateInstancesInput { + s.InstanceNames = v + return s +} + +// SetKeyPairName sets the KeyPairName field's value. +func (s *CreateInstancesInput) SetKeyPairName(v string) *CreateInstancesInput { + s.KeyPairName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateInstancesInput) SetTags(v []*Tag) *CreateInstancesInput { + s.Tags = v + return s +} + +// SetUserData sets the UserData field's value. +func (s *CreateInstancesInput) SetUserData(v string) *CreateInstancesInput { + s.UserData = &v + return s +} + +type CreateInstancesOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -14039,86 +17655,50 @@ type CreateCloudFormationStackOutput struct { } // String returns the string representation -func (s CreateCloudFormationStackOutput) String() string { +func (s CreateInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateCloudFormationStackOutput) GoString() string { +func (s CreateInstancesOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *CreateCloudFormationStackOutput) SetOperations(v []*Operation) *CreateCloudFormationStackOutput { +func (s *CreateInstancesOutput) SetOperations(v []*Operation) *CreateInstancesOutput { s.Operations = v return s } -type CreateContactMethodInput struct { +type CreateKeyPairInput struct { _ struct{} `type:"structure"` - // 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 (https://en.wikipedia.org/wiki/E.164) on Wikipedia. + // The name for your new key pair. // - // ContactEndpoint is a required field - ContactEndpoint *string `locationName:"contactEndpoint" min:"1" type:"string" required:"true"` + // KeyPairName is a required field + KeyPairName *string `locationName:"keyPairName" type:"string" required:"true"` - // 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 (https://docs.aws.amazon.com/sns/latest/dg/sns-supported-regions-countries.html) - // in the Amazon SNS Developer Guide. - // - // For more information about notifications in Amazon Lightsail, see Notifications - // in Amazon Lightsail (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-notifications). + // The tag keys and optional values to add to the resource during create. // - // Protocol is a required field - Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"ContactProtocol"` + // Use the TagResource action to tag a resource after it's created. + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s CreateContactMethodInput) String() string { +func (s CreateKeyPairInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateContactMethodInput) GoString() string { +func (s CreateKeyPairInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateContactMethodInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateContactMethodInput"} - if s.ContactEndpoint == nil { - invalidParams.Add(request.NewErrParamRequired("ContactEndpoint")) - } - if s.ContactEndpoint != nil && len(*s.ContactEndpoint) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ContactEndpoint", 1)) - } - if s.Protocol == nil { - invalidParams.Add(request.NewErrParamRequired("Protocol")) +func (s *CreateKeyPairInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateKeyPairInput"} + if s.KeyPairName == nil { + invalidParams.Add(request.NewErrParamRequired("KeyPairName")) } if invalidParams.Len() > 0 { @@ -14127,157 +17707,136 @@ func (s *CreateContactMethodInput) Validate() error { return nil } -// SetContactEndpoint sets the ContactEndpoint field's value. -func (s *CreateContactMethodInput) SetContactEndpoint(v string) *CreateContactMethodInput { - s.ContactEndpoint = &v +// SetKeyPairName sets the KeyPairName field's value. +func (s *CreateKeyPairInput) SetKeyPairName(v string) *CreateKeyPairInput { + s.KeyPairName = &v return s } -// SetProtocol sets the Protocol field's value. -func (s *CreateContactMethodInput) SetProtocol(v string) *CreateContactMethodInput { - s.Protocol = &v +// SetTags sets the Tags field's value. +func (s *CreateKeyPairInput) SetTags(v []*Tag) *CreateKeyPairInput { + s.Tags = v return s } -type CreateContactMethodOutput struct { +type CreateKeyPairOutput struct { _ struct{} `type:"structure"` + // An array of key-value pairs containing information about the new key pair + // you just created. + KeyPair *KeyPair `locationName:"keyPair" type:"structure"` + // 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 `locationName:"operations" type:"list"` + Operation *Operation `locationName:"operation" type:"structure"` + + // A base64-encoded RSA private key. + PrivateKeyBase64 *string `locationName:"privateKeyBase64" type:"string"` + + // A base64-encoded public key of the ssh-rsa type. + PublicKeyBase64 *string `locationName:"publicKeyBase64" type:"string"` } // String returns the string representation -func (s CreateContactMethodOutput) String() string { +func (s CreateKeyPairOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateContactMethodOutput) GoString() string { +func (s CreateKeyPairOutput) GoString() string { return s.String() } -// SetOperations sets the Operations field's value. -func (s *CreateContactMethodOutput) SetOperations(v []*Operation) *CreateContactMethodOutput { - s.Operations = v +// SetKeyPair sets the KeyPair field's value. +func (s *CreateKeyPairOutput) SetKeyPair(v *KeyPair) *CreateKeyPairOutput { + s.KeyPair = v return s } -type CreateDiskFromSnapshotInput struct { - _ struct{} `type:"structure"` +// SetOperation sets the Operation field's value. +func (s *CreateKeyPairOutput) SetOperation(v *Operation) *CreateKeyPairOutput { + s.Operation = v + return s +} - // An array of objects that represent the add-ons to enable for the new disk. - AddOns []*AddOnRequest `locationName:"addOns" type:"list"` +// SetPrivateKeyBase64 sets the PrivateKeyBase64 field's value. +func (s *CreateKeyPairOutput) SetPrivateKeyBase64(v string) *CreateKeyPairOutput { + s.PrivateKeyBase64 = &v + return s +} - // 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 is a required field - AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` +// SetPublicKeyBase64 sets the PublicKeyBase64 field's value. +func (s *CreateKeyPairOutput) SetPublicKeyBase64(v string) *CreateKeyPairOutput { + s.PublicKeyBase64 = &v + return s +} + +type CreateLoadBalancerInput struct { + _ struct{} `type:"structure"` - // The unique Lightsail disk name (e.g., my-disk). - // - // DiskName is a required field - DiskName *string `locationName:"diskName" type:"string" required:"true"` + // 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). + CertificateAlternativeNames []*string `locationName:"certificateAlternativeNames" type:"list"` - // The name of the disk snapshot (e.g., my-snapshot) from which to create the - // new storage disk. - // - // Constraint: + // The domain name with which your certificate is associated (e.g., example.com). // - // * This parameter cannot be defined together with the source disk name - // parameter. The disk snapshot name and source disk name parameters are - // mutually exclusive. - DiskSnapshotName *string `locationName:"diskSnapshotName" type:"string"` + // If you specify certificateDomainName, then certificateName is required (and + // vice-versa). + CertificateDomainName *string `locationName:"certificateDomainName" type:"string"` - // 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. + // The name of the SSL/TLS certificate. // - // * Define this parameter only when creating a new disk from an automatic - // snapshot. For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). - RestoreDate *string `locationName:"restoreDate" type:"string"` + // If you specify certificateName, then certificateDomainName is required (and + // vice-versa). + CertificateName *string `locationName:"certificateName" type:"string"` - // The size of the disk in GB (e.g., 32). + // 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., "/"). // - // SizeInGb is a required field - SizeInGb *int64 `locationName:"sizeInGb" type:"integer" required:"true"` + // 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. + HealthCheckPath *string `locationName:"healthCheckPath" type:"string"` - // The name of the source disk from which the source automatic snapshot was - // created. - // - // Constraints: + // The instance port where you're creating your load balancer. // - // * This parameter cannot be defined together with the disk snapshot name - // parameter. The source disk name and disk snapshot name parameters are - // mutually exclusive. + // InstancePort is a required field + InstancePort *int64 `locationName:"instancePort" type:"integer" required:"true"` + + // The name of your load balancer. // - // * Define this parameter only when creating a new disk from an automatic - // snapshot. For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). - SourceDiskName *string `locationName:"sourceDiskName" type:"string"` + // LoadBalancerName is a required field + LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` // The tag keys and optional values to add to the resource during create. // - // To tag a resource after it has been created, see the tag resource operation. + // Use the TagResource action to tag a resource after it's created. Tags []*Tag `locationName:"tags" type:"list"` - - // 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 (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). - UseLatestRestorableAutoSnapshot *bool `locationName:"useLatestRestorableAutoSnapshot" type:"boolean"` } // String returns the string representation -func (s CreateDiskFromSnapshotInput) String() string { +func (s CreateLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDiskFromSnapshotInput) GoString() string { +func (s CreateLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateDiskFromSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateDiskFromSnapshotInput"} - if s.AvailabilityZone == nil { - invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) - } - if s.DiskName == nil { - invalidParams.Add(request.NewErrParamRequired("DiskName")) +func (s *CreateLoadBalancerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLoadBalancerInput"} + if s.InstancePort == nil { + invalidParams.Add(request.NewErrParamRequired("InstancePort")) } - if s.SizeInGb == nil { - invalidParams.Add(request.NewErrParamRequired("SizeInGb")) + if s.InstancePort != nil && *s.InstancePort < -1 { + invalidParams.Add(request.NewErrParamMinValue("InstancePort", -1)) } - if s.AddOns != nil { - for i, v := range s.AddOns { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddOns", i), err.(request.ErrInvalidParams)) - } - } + if s.LoadBalancerName == nil { + invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { @@ -14286,61 +17845,49 @@ func (s *CreateDiskFromSnapshotInput) Validate() error { return nil } -// SetAddOns sets the AddOns field's value. -func (s *CreateDiskFromSnapshotInput) SetAddOns(v []*AddOnRequest) *CreateDiskFromSnapshotInput { - s.AddOns = v - return s -} - -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *CreateDiskFromSnapshotInput) SetAvailabilityZone(v string) *CreateDiskFromSnapshotInput { - s.AvailabilityZone = &v +// SetCertificateAlternativeNames sets the CertificateAlternativeNames field's value. +func (s *CreateLoadBalancerInput) SetCertificateAlternativeNames(v []*string) *CreateLoadBalancerInput { + s.CertificateAlternativeNames = v return s } -// SetDiskName sets the DiskName field's value. -func (s *CreateDiskFromSnapshotInput) SetDiskName(v string) *CreateDiskFromSnapshotInput { - s.DiskName = &v +// SetCertificateDomainName sets the CertificateDomainName field's value. +func (s *CreateLoadBalancerInput) SetCertificateDomainName(v string) *CreateLoadBalancerInput { + s.CertificateDomainName = &v return s } -// SetDiskSnapshotName sets the DiskSnapshotName field's value. -func (s *CreateDiskFromSnapshotInput) SetDiskSnapshotName(v string) *CreateDiskFromSnapshotInput { - s.DiskSnapshotName = &v +// SetCertificateName sets the CertificateName field's value. +func (s *CreateLoadBalancerInput) SetCertificateName(v string) *CreateLoadBalancerInput { + s.CertificateName = &v return s } -// SetRestoreDate sets the RestoreDate field's value. -func (s *CreateDiskFromSnapshotInput) SetRestoreDate(v string) *CreateDiskFromSnapshotInput { - s.RestoreDate = &v +// SetHealthCheckPath sets the HealthCheckPath field's value. +func (s *CreateLoadBalancerInput) SetHealthCheckPath(v string) *CreateLoadBalancerInput { + s.HealthCheckPath = &v return s } -// SetSizeInGb sets the SizeInGb field's value. -func (s *CreateDiskFromSnapshotInput) SetSizeInGb(v int64) *CreateDiskFromSnapshotInput { - s.SizeInGb = &v +// SetInstancePort sets the InstancePort field's value. +func (s *CreateLoadBalancerInput) SetInstancePort(v int64) *CreateLoadBalancerInput { + s.InstancePort = &v return s } -// SetSourceDiskName sets the SourceDiskName field's value. -func (s *CreateDiskFromSnapshotInput) SetSourceDiskName(v string) *CreateDiskFromSnapshotInput { - s.SourceDiskName = &v +// SetLoadBalancerName sets the LoadBalancerName field's value. +func (s *CreateLoadBalancerInput) SetLoadBalancerName(v string) *CreateLoadBalancerInput { + s.LoadBalancerName = &v return s } // SetTags sets the Tags field's value. -func (s *CreateDiskFromSnapshotInput) SetTags(v []*Tag) *CreateDiskFromSnapshotInput { +func (s *CreateLoadBalancerInput) SetTags(v []*Tag) *CreateLoadBalancerInput { s.Tags = v return s } -// SetUseLatestRestorableAutoSnapshot sets the UseLatestRestorableAutoSnapshot field's value. -func (s *CreateDiskFromSnapshotInput) SetUseLatestRestorableAutoSnapshot(v bool) *CreateDiskFromSnapshotInput { - s.UseLatestRestorableAutoSnapshot = &v - return s -} - -type CreateDiskFromSnapshotOutput struct { +type CreateLoadBalancerOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -14350,84 +17897,77 @@ type CreateDiskFromSnapshotOutput struct { } // String returns the string representation -func (s CreateDiskFromSnapshotOutput) String() string { +func (s CreateLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDiskFromSnapshotOutput) GoString() string { +func (s CreateLoadBalancerOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *CreateDiskFromSnapshotOutput) SetOperations(v []*Operation) *CreateDiskFromSnapshotOutput { +func (s *CreateLoadBalancerOutput) SetOperations(v []*Operation) *CreateLoadBalancerOutput { s.Operations = v return s } -type CreateDiskInput struct { +type CreateLoadBalancerTlsCertificateInput struct { _ struct{} `type:"structure"` - // An array of objects that represent the add-ons to enable for the new disk. - AddOns []*AddOnRequest `locationName:"addOns" type:"list"` + // 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). + CertificateAlternativeNames []*string `locationName:"certificateAlternativeNames" type:"list"` - // 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 domain name (e.g., example.com) for your SSL/TLS certificate. // - // AvailabilityZone is a required field - AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` + // CertificateDomainName is a required field + CertificateDomainName *string `locationName:"certificateDomainName" type:"string" required:"true"` - // The unique Lightsail disk name (e.g., my-disk). + // The SSL/TLS certificate name. // - // DiskName is a required field - DiskName *string `locationName:"diskName" type:"string" required:"true"` + // 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 (http://docs.aws.amazon.com/acm/latest/userguide/acm-limits.html). + // + // CertificateName is a required field + CertificateName *string `locationName:"certificateName" type:"string" required:"true"` - // The size of the disk in GB (e.g., 32). + // The load balancer name where you want to create the SSL/TLS certificate. // - // SizeInGb is a required field - SizeInGb *int64 `locationName:"sizeInGb" type:"integer" required:"true"` + // LoadBalancerName is a required field + LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` // The tag keys and optional values to add to the resource during create. // - // To tag a resource after it has been created, see the tag resource operation. + // Use the TagResource action to tag a resource after it's created. Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s CreateDiskInput) String() string { +func (s CreateLoadBalancerTlsCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDiskInput) GoString() string { +func (s CreateLoadBalancerTlsCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateDiskInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateDiskInput"} - if s.AvailabilityZone == nil { - invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) - } - if s.DiskName == nil { - invalidParams.Add(request.NewErrParamRequired("DiskName")) +func (s *CreateLoadBalancerTlsCertificateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLoadBalancerTlsCertificateInput"} + if s.CertificateDomainName == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateDomainName")) } - if s.SizeInGb == nil { - invalidParams.Add(request.NewErrParamRequired("SizeInGb")) + if s.CertificateName == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateName")) } - if s.AddOns != nil { - for i, v := range s.AddOns { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddOns", i), err.(request.ErrInvalidParams)) - } - } + if s.LoadBalancerName == nil { + invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { @@ -14436,37 +17976,37 @@ func (s *CreateDiskInput) Validate() error { return nil } -// SetAddOns sets the AddOns field's value. -func (s *CreateDiskInput) SetAddOns(v []*AddOnRequest) *CreateDiskInput { - s.AddOns = v +// SetCertificateAlternativeNames sets the CertificateAlternativeNames field's value. +func (s *CreateLoadBalancerTlsCertificateInput) SetCertificateAlternativeNames(v []*string) *CreateLoadBalancerTlsCertificateInput { + s.CertificateAlternativeNames = v return s } -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *CreateDiskInput) SetAvailabilityZone(v string) *CreateDiskInput { - s.AvailabilityZone = &v +// SetCertificateDomainName sets the CertificateDomainName field's value. +func (s *CreateLoadBalancerTlsCertificateInput) SetCertificateDomainName(v string) *CreateLoadBalancerTlsCertificateInput { + s.CertificateDomainName = &v return s } -// SetDiskName sets the DiskName field's value. -func (s *CreateDiskInput) SetDiskName(v string) *CreateDiskInput { - s.DiskName = &v +// SetCertificateName sets the CertificateName field's value. +func (s *CreateLoadBalancerTlsCertificateInput) SetCertificateName(v string) *CreateLoadBalancerTlsCertificateInput { + s.CertificateName = &v return s -} - -// SetSizeInGb sets the SizeInGb field's value. -func (s *CreateDiskInput) SetSizeInGb(v int64) *CreateDiskInput { - s.SizeInGb = &v +} + +// SetLoadBalancerName sets the LoadBalancerName field's value. +func (s *CreateLoadBalancerTlsCertificateInput) SetLoadBalancerName(v string) *CreateLoadBalancerTlsCertificateInput { + s.LoadBalancerName = &v return s } // SetTags sets the Tags field's value. -func (s *CreateDiskInput) SetTags(v []*Tag) *CreateDiskInput { +func (s *CreateLoadBalancerTlsCertificateInput) SetTags(v []*Tag) *CreateLoadBalancerTlsCertificateInput { s.Tags = v return s } -type CreateDiskOutput struct { +type CreateLoadBalancerTlsCertificateOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -14476,64 +18016,109 @@ type CreateDiskOutput struct { } // String returns the string representation -func (s CreateDiskOutput) String() string { +func (s CreateLoadBalancerTlsCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDiskOutput) GoString() string { +func (s CreateLoadBalancerTlsCertificateOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *CreateDiskOutput) SetOperations(v []*Operation) *CreateDiskOutput { +func (s *CreateLoadBalancerTlsCertificateOutput) SetOperations(v []*Operation) *CreateLoadBalancerTlsCertificateOutput { s.Operations = v return s } -type CreateDiskSnapshotInput struct { +type CreateRelationalDatabaseFromSnapshotInput struct { _ struct{} `type:"structure"` - // The unique name of the source disk (e.g., Disk-Virginia-1). + // The Availability Zone in which to create your new database. Use the us-east-2a + // case-sensitive format. // - // This parameter cannot be defined together with the instance name parameter. - // The disk name and instance name parameters are mutually exclusive. - DiskName *string `locationName:"diskName" type:"string"` + // 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. + AvailabilityZone *string `locationName:"availabilityZone" type:"string"` - // The name of the destination disk snapshot (e.g., my-disk-snapshot) based - // on the source disk. + // 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. + PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` + + // The bundle ID for your new database. A bundle describes the performance specifications + // for your database. // - // DiskSnapshotName is a required field - DiskSnapshotName *string `locationName:"diskSnapshotName" type:"string" required:"true"` + // 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 `locationName:"relationalDatabaseBundleId" type:"string"` - // 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. + // The name to use for your new database. // - // This parameter cannot be defined together with the disk name parameter. The - // instance name and disk name parameters are mutually exclusive. - InstanceName *string `locationName:"instanceName" type:"string"` + // Constraints: + // + // * Must contain from 2 to 255 alphanumeric characters, or hyphens. + // + // * The first and last character must be a letter or number. + // + // RelationalDatabaseName is a required field + RelationalDatabaseName *string `locationName:"relationalDatabaseName" type:"string" required:"true"` + + // The name of the database snapshot from which to create your new database. + RelationalDatabaseSnapshotName *string `locationName:"relationalDatabaseSnapshotName" type:"string"` + + // 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. + RestoreTime *time.Time `locationName:"restoreTime" type:"timestamp"` + + // The name of the source database. + SourceRelationalDatabaseName *string `locationName:"sourceRelationalDatabaseName" type:"string"` // The tag keys and optional values to add to the resource during create. // - // To tag a resource after it has been created, see the tag resource operation. + // Use the TagResource action to tag a resource after it's created. Tags []*Tag `locationName:"tags" type:"list"` + + // 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. + UseLatestRestorableTime *bool `locationName:"useLatestRestorableTime" type:"boolean"` } // String returns the string representation -func (s CreateDiskSnapshotInput) String() string { +func (s CreateRelationalDatabaseFromSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDiskSnapshotInput) GoString() string { +func (s CreateRelationalDatabaseFromSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateDiskSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateDiskSnapshotInput"} - if s.DiskSnapshotName == nil { - invalidParams.Add(request.NewErrParamRequired("DiskSnapshotName")) +func (s *CreateRelationalDatabaseFromSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRelationalDatabaseFromSnapshotInput"} + if s.RelationalDatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseName")) } if invalidParams.Len() > 0 { @@ -14542,31 +18127,61 @@ func (s *CreateDiskSnapshotInput) Validate() error { return nil } -// SetDiskName sets the DiskName field's value. -func (s *CreateDiskSnapshotInput) SetDiskName(v string) *CreateDiskSnapshotInput { - s.DiskName = &v +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *CreateRelationalDatabaseFromSnapshotInput) SetAvailabilityZone(v string) *CreateRelationalDatabaseFromSnapshotInput { + s.AvailabilityZone = &v return s } -// SetDiskSnapshotName sets the DiskSnapshotName field's value. -func (s *CreateDiskSnapshotInput) SetDiskSnapshotName(v string) *CreateDiskSnapshotInput { - s.DiskSnapshotName = &v +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *CreateRelationalDatabaseFromSnapshotInput) SetPubliclyAccessible(v bool) *CreateRelationalDatabaseFromSnapshotInput { + s.PubliclyAccessible = &v return s } -// SetInstanceName sets the InstanceName field's value. -func (s *CreateDiskSnapshotInput) SetInstanceName(v string) *CreateDiskSnapshotInput { - s.InstanceName = &v +// SetRelationalDatabaseBundleId sets the RelationalDatabaseBundleId field's value. +func (s *CreateRelationalDatabaseFromSnapshotInput) SetRelationalDatabaseBundleId(v string) *CreateRelationalDatabaseFromSnapshotInput { + s.RelationalDatabaseBundleId = &v + return s +} + +// SetRelationalDatabaseName sets the RelationalDatabaseName field's value. +func (s *CreateRelationalDatabaseFromSnapshotInput) SetRelationalDatabaseName(v string) *CreateRelationalDatabaseFromSnapshotInput { + s.RelationalDatabaseName = &v + return s +} + +// SetRelationalDatabaseSnapshotName sets the RelationalDatabaseSnapshotName field's value. +func (s *CreateRelationalDatabaseFromSnapshotInput) SetRelationalDatabaseSnapshotName(v string) *CreateRelationalDatabaseFromSnapshotInput { + s.RelationalDatabaseSnapshotName = &v + return s +} + +// SetRestoreTime sets the RestoreTime field's value. +func (s *CreateRelationalDatabaseFromSnapshotInput) SetRestoreTime(v time.Time) *CreateRelationalDatabaseFromSnapshotInput { + s.RestoreTime = &v + return s +} + +// SetSourceRelationalDatabaseName sets the SourceRelationalDatabaseName field's value. +func (s *CreateRelationalDatabaseFromSnapshotInput) SetSourceRelationalDatabaseName(v string) *CreateRelationalDatabaseFromSnapshotInput { + s.SourceRelationalDatabaseName = &v return s } // SetTags sets the Tags field's value. -func (s *CreateDiskSnapshotInput) SetTags(v []*Tag) *CreateDiskSnapshotInput { +func (s *CreateRelationalDatabaseFromSnapshotInput) SetTags(v []*Tag) *CreateRelationalDatabaseFromSnapshotInput { s.Tags = v return s } -type CreateDiskSnapshotOutput struct { +// SetUseLatestRestorableTime sets the UseLatestRestorableTime field's value. +func (s *CreateRelationalDatabaseFromSnapshotInput) SetUseLatestRestorableTime(v bool) *CreateRelationalDatabaseFromSnapshotInput { + s.UseLatestRestorableTime = &v + return s +} + +type CreateRelationalDatabaseFromSnapshotOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -14576,134 +18191,174 @@ type CreateDiskSnapshotOutput struct { } // String returns the string representation -func (s CreateDiskSnapshotOutput) String() string { +func (s CreateRelationalDatabaseFromSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDiskSnapshotOutput) GoString() string { +func (s CreateRelationalDatabaseFromSnapshotOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *CreateDiskSnapshotOutput) SetOperations(v []*Operation) *CreateDiskSnapshotOutput { +func (s *CreateRelationalDatabaseFromSnapshotOutput) SetOperations(v []*Operation) *CreateRelationalDatabaseFromSnapshotOutput { s.Operations = v return s } -type CreateDomainEntryInput struct { +type CreateRelationalDatabaseInput struct { _ struct{} `type:"structure"` - // An array of key-value pairs containing information about the domain entry - // request. + // The Availability Zone in which to create your new database. Use the us-east-2a + // case-sensitive format. // - // DomainEntry is a required field - DomainEntry *DomainEntry `locationName:"domainEntry" type:"structure" required:"true"` + // 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. + AvailabilityZone *string `locationName:"availabilityZone" type:"string"` - // The domain name (e.g., example.com) for which you want to create the domain - // entry. + // The name of the master database created when the Lightsail database resource + // is created. // - // DomainName is a required field - DomainName *string `locationName:"domainName" type:"string" required:"true"` -} - -// String returns the string representation -func (s CreateDomainEntryInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s CreateDomainEntryInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateDomainEntryInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateDomainEntryInput"} - if s.DomainEntry == nil { - invalidParams.Add(request.NewErrParamRequired("DomainEntry")) - } - if s.DomainName == nil { - invalidParams.Add(request.NewErrParamRequired("DomainName")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetDomainEntry sets the DomainEntry field's value. -func (s *CreateDomainEntryInput) SetDomainEntry(v *DomainEntry) *CreateDomainEntryInput { - s.DomainEntry = v - return s -} + // Constraints: + // + // * Must contain from 1 to 64 alphanumeric characters. + // + // * Cannot be a word reserved by the specified database engine + // + // MasterDatabaseName is a required field + MasterDatabaseName *string `locationName:"masterDatabaseName" type:"string" required:"true"` -// SetDomainName sets the DomainName field's value. -func (s *CreateDomainEntryInput) SetDomainName(v string) *CreateDomainEntryInput { - s.DomainName = &v - return s -} + // 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 `locationName:"masterUserPassword" type:"string" sensitive:"true"` -type CreateDomainEntryOutput struct { - _ struct{} `type:"structure"` + // 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 (https://dev.mysql.com/doc/refman/5.6/en/keywords.html) + // or MySQL 5.7 (https://dev.mysql.com/doc/refman/5.7/en/keywords.html) respectively. + // + // MasterUsername is a required field + MasterUsername *string `locationName:"masterUsername" type:"string" required:"true"` - // 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 `locationName:"operation" type:"structure"` -} + // 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 (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html#USER_WorkingWithAutomatedBackups.BackupWindow) + // 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. + PreferredBackupWindow *string `locationName:"preferredBackupWindow" type:"string"` -// String returns the string representation -func (s CreateDomainEntryOutput) String() string { - return awsutil.Prettify(s) -} + // 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 + PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"string"` -// GoString returns the string representation -func (s CreateDomainEntryOutput) GoString() string { - return s.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. + PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` -// SetOperation sets the Operation field's value. -func (s *CreateDomainEntryOutput) SetOperation(v *Operation) *CreateDomainEntryOutput { - s.Operation = v - return s -} + // 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. + // + // RelationalDatabaseBlueprintId is a required field + RelationalDatabaseBlueprintId *string `locationName:"relationalDatabaseBlueprintId" type:"string" required:"true"` -type CreateDomainInput struct { - _ struct{} `type:"structure"` + // 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. + // + // RelationalDatabaseBundleId is a required field + RelationalDatabaseBundleId *string `locationName:"relationalDatabaseBundleId" type:"string" required:"true"` - // The domain name to manage (e.g., example.com). + // The name to use for your new database. // - // 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. + // Constraints: // - // DomainName is a required field - DomainName *string `locationName:"domainName" type:"string" required:"true"` + // * Must contain from 2 to 255 alphanumeric characters, or hyphens. + // + // * The first and last character must be a letter or number. + // + // RelationalDatabaseName is a required field + RelationalDatabaseName *string `locationName:"relationalDatabaseName" type:"string" required:"true"` // The tag keys and optional values to add to the resource during create. // - // To tag a resource after it has been created, see the tag resource operation. + // Use the TagResource action to tag a resource after it's created. Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s CreateDomainInput) String() string { +func (s CreateRelationalDatabaseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateDomainInput) GoString() string { +func (s CreateRelationalDatabaseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateDomainInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateDomainInput"} - if s.DomainName == nil { - invalidParams.Add(request.NewErrParamRequired("DomainName")) +func (s *CreateRelationalDatabaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRelationalDatabaseInput"} + if s.MasterDatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("MasterDatabaseName")) + } + if s.MasterUsername == nil { + invalidParams.Add(request.NewErrParamRequired("MasterUsername")) + } + if s.RelationalDatabaseBlueprintId == nil { + invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseBlueprintId")) + } + if s.RelationalDatabaseBundleId == nil { + invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseBundleId")) + } + if s.RelationalDatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseName")) } if invalidParams.Len() > 0 { @@ -14712,107 +18367,73 @@ func (s *CreateDomainInput) Validate() error { return nil } -// SetDomainName sets the DomainName field's value. -func (s *CreateDomainInput) SetDomainName(v string) *CreateDomainInput { - s.DomainName = &v +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *CreateRelationalDatabaseInput) SetAvailabilityZone(v string) *CreateRelationalDatabaseInput { + s.AvailabilityZone = &v return s } -// SetTags sets the Tags field's value. -func (s *CreateDomainInput) SetTags(v []*Tag) *CreateDomainInput { - s.Tags = v +// SetMasterDatabaseName sets the MasterDatabaseName field's value. +func (s *CreateRelationalDatabaseInput) SetMasterDatabaseName(v string) *CreateRelationalDatabaseInput { + s.MasterDatabaseName = &v return s } -type CreateDomainOutput struct { - _ struct{} `type:"structure"` - - // 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 `locationName:"operation" type:"structure"` -} - -// String returns the string representation -func (s CreateDomainOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s CreateDomainOutput) GoString() string { - return s.String() +// SetMasterUserPassword sets the MasterUserPassword field's value. +func (s *CreateRelationalDatabaseInput) SetMasterUserPassword(v string) *CreateRelationalDatabaseInput { + s.MasterUserPassword = &v + return s } -// SetOperation sets the Operation field's value. -func (s *CreateDomainOutput) SetOperation(v *Operation) *CreateDomainOutput { - s.Operation = v +// SetMasterUsername sets the MasterUsername field's value. +func (s *CreateRelationalDatabaseInput) SetMasterUsername(v string) *CreateRelationalDatabaseInput { + s.MasterUsername = &v return s } -type CreateInstanceSnapshotInput struct { - _ struct{} `type:"structure"` - - // The Lightsail instance on which to base your snapshot. - // - // InstanceName is a required field - InstanceName *string `locationName:"instanceName" type:"string" required:"true"` - - // The name for your new snapshot. - // - // InstanceSnapshotName is a required field - InstanceSnapshotName *string `locationName:"instanceSnapshotName" type:"string" required:"true"` - - // The tag keys and optional values to add to the resource during create. - // - // To tag a resource after it has been created, see the tag resource operation. - Tags []*Tag `locationName:"tags" type:"list"` +// SetPreferredBackupWindow sets the PreferredBackupWindow field's value. +func (s *CreateRelationalDatabaseInput) SetPreferredBackupWindow(v string) *CreateRelationalDatabaseInput { + s.PreferredBackupWindow = &v + return s } -// String returns the string representation -func (s CreateInstanceSnapshotInput) String() string { - return awsutil.Prettify(s) +// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. +func (s *CreateRelationalDatabaseInput) SetPreferredMaintenanceWindow(v string) *CreateRelationalDatabaseInput { + s.PreferredMaintenanceWindow = &v + return s } -// GoString returns the string representation -func (s CreateInstanceSnapshotInput) GoString() string { - return s.String() +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *CreateRelationalDatabaseInput) SetPubliclyAccessible(v bool) *CreateRelationalDatabaseInput { + s.PubliclyAccessible = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateInstanceSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateInstanceSnapshotInput"} - if s.InstanceName == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceName")) - } - if s.InstanceSnapshotName == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceSnapshotName")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetRelationalDatabaseBlueprintId sets the RelationalDatabaseBlueprintId field's value. +func (s *CreateRelationalDatabaseInput) SetRelationalDatabaseBlueprintId(v string) *CreateRelationalDatabaseInput { + s.RelationalDatabaseBlueprintId = &v + return s } -// SetInstanceName sets the InstanceName field's value. -func (s *CreateInstanceSnapshotInput) SetInstanceName(v string) *CreateInstanceSnapshotInput { - s.InstanceName = &v +// SetRelationalDatabaseBundleId sets the RelationalDatabaseBundleId field's value. +func (s *CreateRelationalDatabaseInput) SetRelationalDatabaseBundleId(v string) *CreateRelationalDatabaseInput { + s.RelationalDatabaseBundleId = &v return s } -// SetInstanceSnapshotName sets the InstanceSnapshotName field's value. -func (s *CreateInstanceSnapshotInput) SetInstanceSnapshotName(v string) *CreateInstanceSnapshotInput { - s.InstanceSnapshotName = &v +// SetRelationalDatabaseName sets the RelationalDatabaseName field's value. +func (s *CreateRelationalDatabaseInput) SetRelationalDatabaseName(v string) *CreateRelationalDatabaseInput { + s.RelationalDatabaseName = &v return s } // SetTags sets the Tags field's value. -func (s *CreateInstanceSnapshotInput) SetTags(v []*Tag) *CreateInstanceSnapshotInput { +func (s *CreateRelationalDatabaseInput) SetTags(v []*Tag) *CreateRelationalDatabaseInput { s.Tags = v return s } -type CreateInstanceSnapshotOutput struct { +type CreateRelationalDatabaseOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -14822,152 +18443,64 @@ type CreateInstanceSnapshotOutput struct { } // String returns the string representation -func (s CreateInstanceSnapshotOutput) String() string { +func (s CreateRelationalDatabaseOutput) String() string { return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s CreateInstanceSnapshotOutput) GoString() string { - return s.String() -} - -// SetOperations sets the Operations field's value. -func (s *CreateInstanceSnapshotOutput) SetOperations(v []*Operation) *CreateInstanceSnapshotOutput { - s.Operations = v - return s -} - -type CreateInstancesFromSnapshotInput struct { - _ struct{} `type:"structure"` - - // An array of objects representing the add-ons to enable for the new instance. - AddOns []*AddOnRequest `locationName:"addOns" type:"list"` - - // An object containing information about one or more disk mappings. - AttachedDiskMapping map[string][]*DiskMap `locationName:"attachedDiskMapping" type:"map"` - - // 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 (http://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_GetRegions.html) - // operation. Be sure to add the include Availability Zones parameter to your - // request. - // - // AvailabilityZone is a required field - AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` - - // The bundle of specification information for your virtual private server (or - // instance), including the pricing plan (e.g., micro_1_0). - // - // BundleId is a required field - BundleId *string `locationName:"bundleId" type:"string" required:"true"` - - // The names for your new instances. - // - // InstanceNames is a required field - InstanceNames []*string `locationName:"instanceNames" type:"list" required:"true"` +} - // 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. - InstanceSnapshotName *string `locationName:"instanceSnapshotName" type:"string"` +// GoString returns the string representation +func (s CreateRelationalDatabaseOutput) GoString() string { + return s.String() +} - // The name for your key pair. - KeyPairName *string `locationName:"keyPairName" type:"string"` +// SetOperations sets the Operations field's value. +func (s *CreateRelationalDatabaseOutput) SetOperations(v []*Operation) *CreateRelationalDatabaseOutput { + s.Operations = v + return s +} - // 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. +type CreateRelationalDatabaseSnapshotInput struct { + _ struct{} `type:"structure"` + + // The name of the database on which to base your new snapshot. // - // * Define this parameter only when creating a new instance from an automatic - // snapshot. For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). - RestoreDate *string `locationName:"restoreDate" type:"string"` + // RelationalDatabaseName is a required field + RelationalDatabaseName *string `locationName:"relationalDatabaseName" type:"string" required:"true"` - // The name of the source instance from which the source automatic snapshot - // was created. + // The name for your new database snapshot. // // 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. + // * Must contain from 2 to 255 alphanumeric characters, or hyphens. // - // * Define this parameter only when creating a new instance from an automatic - // snapshot. For more information, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). - SourceInstanceName *string `locationName:"sourceInstanceName" type:"string"` + // * The first and last character must be a letter or number. + // + // RelationalDatabaseSnapshotName is a required field + RelationalDatabaseSnapshotName *string `locationName:"relationalDatabaseSnapshotName" type:"string" required:"true"` // The tag keys and optional values to add to the resource during create. // - // To tag a resource after it has been created, see the tag resource operation. + // Use the TagResource action to tag a resource after it's created. Tags []*Tag `locationName:"tags" type:"list"` - - // 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 (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-configuring-automatic-snapshots). - UseLatestRestorableAutoSnapshot *bool `locationName:"useLatestRestorableAutoSnapshot" type:"boolean"` - - // 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 - // (https://lightsail.aws.amazon.com/ls/docs/getting-started/article/compare-options-choose-lightsail-instance-image). - UserData *string `locationName:"userData" type:"string"` } // String returns the string representation -func (s CreateInstancesFromSnapshotInput) String() string { +func (s CreateRelationalDatabaseSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateInstancesFromSnapshotInput) GoString() string { +func (s CreateRelationalDatabaseSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateInstancesFromSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateInstancesFromSnapshotInput"} - if s.AvailabilityZone == nil { - invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) - } - if s.BundleId == nil { - invalidParams.Add(request.NewErrParamRequired("BundleId")) - } - if s.InstanceNames == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceNames")) +func (s *CreateRelationalDatabaseSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRelationalDatabaseSnapshotInput"} + if s.RelationalDatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseName")) } - if s.AddOns != nil { - for i, v := range s.AddOns { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddOns", i), err.(request.ErrInvalidParams)) - } - } + if s.RelationalDatabaseSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseSnapshotName")) } if invalidParams.Len() > 0 { @@ -14976,79 +18509,88 @@ func (s *CreateInstancesFromSnapshotInput) Validate() error { return nil } -// SetAddOns sets the AddOns field's value. -func (s *CreateInstancesFromSnapshotInput) SetAddOns(v []*AddOnRequest) *CreateInstancesFromSnapshotInput { - s.AddOns = v +// SetRelationalDatabaseName sets the RelationalDatabaseName field's value. +func (s *CreateRelationalDatabaseSnapshotInput) SetRelationalDatabaseName(v string) *CreateRelationalDatabaseSnapshotInput { + s.RelationalDatabaseName = &v return s } -// SetAttachedDiskMapping sets the AttachedDiskMapping field's value. -func (s *CreateInstancesFromSnapshotInput) SetAttachedDiskMapping(v map[string][]*DiskMap) *CreateInstancesFromSnapshotInput { - s.AttachedDiskMapping = v +// SetRelationalDatabaseSnapshotName sets the RelationalDatabaseSnapshotName field's value. +func (s *CreateRelationalDatabaseSnapshotInput) SetRelationalDatabaseSnapshotName(v string) *CreateRelationalDatabaseSnapshotInput { + s.RelationalDatabaseSnapshotName = &v return s } -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *CreateInstancesFromSnapshotInput) SetAvailabilityZone(v string) *CreateInstancesFromSnapshotInput { - s.AvailabilityZone = &v +// SetTags sets the Tags field's value. +func (s *CreateRelationalDatabaseSnapshotInput) SetTags(v []*Tag) *CreateRelationalDatabaseSnapshotInput { + s.Tags = v return s } -// SetBundleId sets the BundleId field's value. -func (s *CreateInstancesFromSnapshotInput) SetBundleId(v string) *CreateInstancesFromSnapshotInput { - s.BundleId = &v - return s +type CreateRelationalDatabaseSnapshotOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operations" type:"list"` } -// SetInstanceNames sets the InstanceNames field's value. -func (s *CreateInstancesFromSnapshotInput) SetInstanceNames(v []*string) *CreateInstancesFromSnapshotInput { - s.InstanceNames = v - return s +// String returns the string representation +func (s CreateRelationalDatabaseSnapshotOutput) String() string { + return awsutil.Prettify(s) } -// SetInstanceSnapshotName sets the InstanceSnapshotName field's value. -func (s *CreateInstancesFromSnapshotInput) SetInstanceSnapshotName(v string) *CreateInstancesFromSnapshotInput { - s.InstanceSnapshotName = &v - return s +// GoString returns the string representation +func (s CreateRelationalDatabaseSnapshotOutput) GoString() string { + return s.String() } -// SetKeyPairName sets the KeyPairName field's value. -func (s *CreateInstancesFromSnapshotInput) SetKeyPairName(v string) *CreateInstancesFromSnapshotInput { - s.KeyPairName = &v +// SetOperations sets the Operations field's value. +func (s *CreateRelationalDatabaseSnapshotOutput) SetOperations(v []*Operation) *CreateRelationalDatabaseSnapshotOutput { + s.Operations = v return s } -// SetRestoreDate sets the RestoreDate field's value. -func (s *CreateInstancesFromSnapshotInput) SetRestoreDate(v string) *CreateInstancesFromSnapshotInput { - s.RestoreDate = &v - return s +type DeleteAlarmInput struct { + _ struct{} `type:"structure"` + + // The name of the alarm to delete. + // + // AlarmName is a required field + AlarmName *string `locationName:"alarmName" type:"string" required:"true"` } -// SetSourceInstanceName sets the SourceInstanceName field's value. -func (s *CreateInstancesFromSnapshotInput) SetSourceInstanceName(v string) *CreateInstancesFromSnapshotInput { - s.SourceInstanceName = &v - return s +// String returns the string representation +func (s DeleteAlarmInput) String() string { + return awsutil.Prettify(s) } -// SetTags sets the Tags field's value. -func (s *CreateInstancesFromSnapshotInput) SetTags(v []*Tag) *CreateInstancesFromSnapshotInput { - s.Tags = v - return s +// GoString returns the string representation +func (s DeleteAlarmInput) GoString() string { + return s.String() } -// SetUseLatestRestorableAutoSnapshot sets the UseLatestRestorableAutoSnapshot field's value. -func (s *CreateInstancesFromSnapshotInput) SetUseLatestRestorableAutoSnapshot(v bool) *CreateInstancesFromSnapshotInput { - s.UseLatestRestorableAutoSnapshot = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAlarmInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAlarmInput"} + if s.AlarmName == nil { + invalidParams.Add(request.NewErrParamRequired("AlarmName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetUserData sets the UserData field's value. -func (s *CreateInstancesFromSnapshotInput) SetUserData(v string) *CreateInstancesFromSnapshotInput { - s.UserData = &v +// SetAlarmName sets the AlarmName field's value. +func (s *DeleteAlarmInput) SetAlarmName(v string) *DeleteAlarmInput { + s.AlarmName = &v return s } -type CreateInstancesFromSnapshotOutput struct { +type DeleteAlarmOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -15058,120 +18600,56 @@ type CreateInstancesFromSnapshotOutput struct { } // String returns the string representation -func (s CreateInstancesFromSnapshotOutput) String() string { +func (s DeleteAlarmOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateInstancesFromSnapshotOutput) GoString() string { +func (s DeleteAlarmOutput) GoString() string { return s.String() -} - -// SetOperations sets the Operations field's value. -func (s *CreateInstancesFromSnapshotOutput) SetOperations(v []*Operation) *CreateInstancesFromSnapshotOutput { - s.Operations = v - return s -} - -type CreateInstancesInput struct { - _ struct{} `type:"structure"` - - // An array of objects representing the add-ons to enable for the new instance. - AddOns []*AddOnRequest `locationName:"addOns" type:"list"` - - // 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 (http://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_GetRegions.html) - // operation. Be sure to add the include Availability Zones parameter to your - // request. - // - // AvailabilityZone is a required field - AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` - - // 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. - // - // BlueprintId is a required field - BlueprintId *string `locationName:"blueprintId" type:"string" required:"true"` - - // The bundle of specification information for your virtual private server (or - // instance), including the pricing plan (e.g., micro_1_0). - // - // BundleId is a required field - BundleId *string `locationName:"bundleId" type:"string" required:"true"` - - // (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. - // - // Deprecated: CustomImageName has been deprecated - CustomImageName *string `locationName:"customImageName" deprecated:"true" type:"string"` +} - // The names to use for your new Lightsail instances. Separate multiple values - // using quotation marks and commas, for example: ["MyFirstInstance","MySecondInstance"] - // - // InstanceNames is a required field - InstanceNames []*string `locationName:"instanceNames" type:"list" required:"true"` +// SetOperations sets the Operations field's value. +func (s *DeleteAlarmOutput) SetOperations(v []*Operation) *DeleteAlarmOutput { + s.Operations = v + return s +} - // The name of your key pair. - KeyPairName *string `locationName:"keyPairName" type:"string"` +type DeleteAutoSnapshotInput struct { + _ struct{} `type:"structure"` - // The tag keys and optional values to add to the resource during create. + // 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. // - // To tag a resource after it has been created, see the tag resource operation. - Tags []*Tag `locationName:"tags" type:"list"` + // Date is a required field + Date *string `locationName:"date" type:"string" required:"true"` - // 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. + // The name of the source instance or disk from which to delete the automatic + // snapshot. // - // 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 - // (https://lightsail.aws.amazon.com/ls/docs/getting-started/article/compare-options-choose-lightsail-instance-image). - UserData *string `locationName:"userData" type:"string"` + // ResourceName is a required field + ResourceName *string `locationName:"resourceName" type:"string" required:"true"` } // String returns the string representation -func (s CreateInstancesInput) String() string { +func (s DeleteAutoSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateInstancesInput) GoString() string { +func (s DeleteAutoSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateInstancesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateInstancesInput"} - if s.AvailabilityZone == nil { - invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) - } - if s.BlueprintId == nil { - invalidParams.Add(request.NewErrParamRequired("BlueprintId")) - } - if s.BundleId == nil { - invalidParams.Add(request.NewErrParamRequired("BundleId")) - } - if s.InstanceNames == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceNames")) +func (s *DeleteAutoSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAutoSnapshotInput"} + if s.Date == nil { + invalidParams.Add(request.NewErrParamRequired("Date")) } - if s.AddOns != nil { - for i, v := range s.AddOns { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddOns", i), err.(request.ErrInvalidParams)) - } - } + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if invalidParams.Len() > 0 { @@ -15180,61 +18658,19 @@ func (s *CreateInstancesInput) Validate() error { return nil } -// SetAddOns sets the AddOns field's value. -func (s *CreateInstancesInput) SetAddOns(v []*AddOnRequest) *CreateInstancesInput { - s.AddOns = v - return s -} - -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *CreateInstancesInput) SetAvailabilityZone(v string) *CreateInstancesInput { - s.AvailabilityZone = &v - return s -} - -// SetBlueprintId sets the BlueprintId field's value. -func (s *CreateInstancesInput) SetBlueprintId(v string) *CreateInstancesInput { - s.BlueprintId = &v - return s -} - -// SetBundleId sets the BundleId field's value. -func (s *CreateInstancesInput) SetBundleId(v string) *CreateInstancesInput { - s.BundleId = &v - return s -} - -// SetCustomImageName sets the CustomImageName field's value. -func (s *CreateInstancesInput) SetCustomImageName(v string) *CreateInstancesInput { - s.CustomImageName = &v - return s -} - -// SetInstanceNames sets the InstanceNames field's value. -func (s *CreateInstancesInput) SetInstanceNames(v []*string) *CreateInstancesInput { - s.InstanceNames = v - return s -} - -// SetKeyPairName sets the KeyPairName field's value. -func (s *CreateInstancesInput) SetKeyPairName(v string) *CreateInstancesInput { - s.KeyPairName = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *CreateInstancesInput) SetTags(v []*Tag) *CreateInstancesInput { - s.Tags = v +// SetDate sets the Date field's value. +func (s *DeleteAutoSnapshotInput) SetDate(v string) *DeleteAutoSnapshotInput { + s.Date = &v return s } -// SetUserData sets the UserData field's value. -func (s *CreateInstancesInput) SetUserData(v string) *CreateInstancesInput { - s.UserData = &v +// SetResourceName sets the ResourceName field's value. +func (s *DeleteAutoSnapshotInput) SetResourceName(v string) *DeleteAutoSnapshotInput { + s.ResourceName = &v return s } -type CreateInstancesOutput struct { +type DeleteAutoSnapshotOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -15244,50 +18680,48 @@ type CreateInstancesOutput struct { } // String returns the string representation -func (s CreateInstancesOutput) String() string { +func (s DeleteAutoSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateInstancesOutput) GoString() string { +func (s DeleteAutoSnapshotOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *CreateInstancesOutput) SetOperations(v []*Operation) *CreateInstancesOutput { +func (s *DeleteAutoSnapshotOutput) SetOperations(v []*Operation) *DeleteAutoSnapshotOutput { s.Operations = v return s } -type CreateKeyPairInput struct { +type DeleteCertificateInput struct { _ struct{} `type:"structure"` - // The name for your new key pair. + // The name of the certificate to delete. // - // KeyPairName is a required field - KeyPairName *string `locationName:"keyPairName" type:"string" required:"true"` - - // The tag keys and optional values to add to the resource during create. + // Use the GetCertificates action to get a list of certificate names that you + // can specify. // - // To tag a resource after it has been created, see the tag resource operation. - Tags []*Tag `locationName:"tags" type:"list"` + // CertificateName is a required field + CertificateName *string `locationName:"certificateName" type:"string" required:"true"` } // String returns the string representation -func (s CreateKeyPairInput) String() string { +func (s DeleteCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateKeyPairInput) GoString() string { +func (s DeleteCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateKeyPairInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateKeyPairInput"} - if s.KeyPairName == nil { - invalidParams.Add(request.NewErrParamRequired("KeyPairName")) +func (s *DeleteCertificateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteCertificateInput"} + if s.CertificateName == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateName")) } if invalidParams.Len() > 0 { @@ -15296,136 +18730,131 @@ func (s *CreateKeyPairInput) Validate() error { return nil } -// SetKeyPairName sets the KeyPairName field's value. -func (s *CreateKeyPairInput) SetKeyPairName(v string) *CreateKeyPairInput { - s.KeyPairName = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *CreateKeyPairInput) SetTags(v []*Tag) *CreateKeyPairInput { - s.Tags = v +// SetCertificateName sets the CertificateName field's value. +func (s *DeleteCertificateInput) SetCertificateName(v string) *DeleteCertificateInput { + s.CertificateName = &v return s } -type CreateKeyPairOutput struct { +type DeleteCertificateOutput struct { _ struct{} `type:"structure"` - // An array of key-value pairs containing information about the new key pair - // you just created. - KeyPair *KeyPair `locationName:"keyPair" type:"structure"` - // 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 `locationName:"operation" type:"structure"` - - // A base64-encoded RSA private key. - PrivateKeyBase64 *string `locationName:"privateKeyBase64" type:"string"` - - // A base64-encoded public key of the ssh-rsa type. - PublicKeyBase64 *string `locationName:"publicKeyBase64" type:"string"` + Operations []*Operation `locationName:"operations" type:"list"` } // String returns the string representation -func (s CreateKeyPairOutput) String() string { +func (s DeleteCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateKeyPairOutput) GoString() string { +func (s DeleteCertificateOutput) GoString() string { return s.String() } -// SetKeyPair sets the KeyPair field's value. -func (s *CreateKeyPairOutput) SetKeyPair(v *KeyPair) *CreateKeyPairOutput { - s.KeyPair = v +// SetOperations sets the Operations field's value. +func (s *DeleteCertificateOutput) SetOperations(v []*Operation) *DeleteCertificateOutput { + s.Operations = v return s } -// SetOperation sets the Operation field's value. -func (s *CreateKeyPairOutput) SetOperation(v *Operation) *CreateKeyPairOutput { - s.Operation = v - return s +type DeleteContactMethodInput struct { + _ struct{} `type:"structure"` + + // 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. + // + // Protocol is a required field + Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"ContactProtocol"` } -// SetPrivateKeyBase64 sets the PrivateKeyBase64 field's value. -func (s *CreateKeyPairOutput) SetPrivateKeyBase64(v string) *CreateKeyPairOutput { - s.PrivateKeyBase64 = &v - return s +// String returns the string representation +func (s DeleteContactMethodInput) String() string { + return awsutil.Prettify(s) } -// SetPublicKeyBase64 sets the PublicKeyBase64 field's value. -func (s *CreateKeyPairOutput) SetPublicKeyBase64(v string) *CreateKeyPairOutput { - s.PublicKeyBase64 = &v +// GoString returns the string representation +func (s DeleteContactMethodInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteContactMethodInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteContactMethodInput"} + if s.Protocol == nil { + invalidParams.Add(request.NewErrParamRequired("Protocol")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetProtocol sets the Protocol field's value. +func (s *DeleteContactMethodInput) SetProtocol(v string) *DeleteContactMethodInput { + s.Protocol = &v return s } -type CreateLoadBalancerInput struct { +type DeleteContactMethodOutput struct { _ struct{} `type:"structure"` - // 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). - CertificateAlternativeNames []*string `locationName:"certificateAlternativeNames" type:"list"` - - // The domain name with which your certificate is associated (e.g., example.com). - // - // If you specify certificateDomainName, then certificateName is required (and - // vice-versa). - CertificateDomainName *string `locationName:"certificateDomainName" type:"string"` + // 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 `locationName:"operations" type:"list"` +} - // The name of the SSL/TLS certificate. - // - // If you specify certificateName, then certificateDomainName is required (and - // vice-versa). - CertificateName *string `locationName:"certificateName" type:"string"` +// String returns the string representation +func (s DeleteContactMethodOutput) String() string { + return awsutil.Prettify(s) +} - // 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. - HealthCheckPath *string `locationName:"healthCheckPath" type:"string"` +// GoString returns the string representation +func (s DeleteContactMethodOutput) GoString() string { + return s.String() +} - // The instance port where you're creating your load balancer. - // - // InstancePort is a required field - InstancePort *int64 `locationName:"instancePort" type:"integer" required:"true"` +// SetOperations sets the Operations field's value. +func (s *DeleteContactMethodOutput) SetOperations(v []*Operation) *DeleteContactMethodOutput { + s.Operations = v + return s +} - // The name of your load balancer. - // - // LoadBalancerName is a required field - LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` +type DeleteDiskInput struct { + _ struct{} `type:"structure"` - // The tag keys and optional values to add to the resource during create. + // The unique name of the disk you want to delete (e.g., my-disk). // - // To tag a resource after it has been created, see the tag resource operation. - Tags []*Tag `locationName:"tags" type:"list"` + // DiskName is a required field + DiskName *string `locationName:"diskName" type:"string" required:"true"` + + // A Boolean value to indicate whether to delete the enabled add-ons for the + // disk. + ForceDeleteAddOns *bool `locationName:"forceDeleteAddOns" type:"boolean"` } // String returns the string representation -func (s CreateLoadBalancerInput) String() string { +func (s DeleteDiskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateLoadBalancerInput) GoString() string { +func (s DeleteDiskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateLoadBalancerInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateLoadBalancerInput"} - if s.InstancePort == nil { - invalidParams.Add(request.NewErrParamRequired("InstancePort")) - } - if s.InstancePort != nil && *s.InstancePort < -1 { - invalidParams.Add(request.NewErrParamMinValue("InstancePort", -1)) - } - if s.LoadBalancerName == nil { - invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) +func (s *DeleteDiskInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDiskInput"} + if s.DiskName == nil { + invalidParams.Add(request.NewErrParamRequired("DiskName")) } if invalidParams.Len() > 0 { @@ -15434,49 +18863,19 @@ func (s *CreateLoadBalancerInput) Validate() error { return nil } -// SetCertificateAlternativeNames sets the CertificateAlternativeNames field's value. -func (s *CreateLoadBalancerInput) SetCertificateAlternativeNames(v []*string) *CreateLoadBalancerInput { - s.CertificateAlternativeNames = v - return s -} - -// SetCertificateDomainName sets the CertificateDomainName field's value. -func (s *CreateLoadBalancerInput) SetCertificateDomainName(v string) *CreateLoadBalancerInput { - s.CertificateDomainName = &v - return s -} - -// SetCertificateName sets the CertificateName field's value. -func (s *CreateLoadBalancerInput) SetCertificateName(v string) *CreateLoadBalancerInput { - s.CertificateName = &v - return s -} - -// SetHealthCheckPath sets the HealthCheckPath field's value. -func (s *CreateLoadBalancerInput) SetHealthCheckPath(v string) *CreateLoadBalancerInput { - s.HealthCheckPath = &v - return s -} - -// SetInstancePort sets the InstancePort field's value. -func (s *CreateLoadBalancerInput) SetInstancePort(v int64) *CreateLoadBalancerInput { - s.InstancePort = &v - return s -} - -// SetLoadBalancerName sets the LoadBalancerName field's value. -func (s *CreateLoadBalancerInput) SetLoadBalancerName(v string) *CreateLoadBalancerInput { - s.LoadBalancerName = &v +// SetDiskName sets the DiskName field's value. +func (s *DeleteDiskInput) SetDiskName(v string) *DeleteDiskInput { + s.DiskName = &v return s } -// SetTags sets the Tags field's value. -func (s *CreateLoadBalancerInput) SetTags(v []*Tag) *CreateLoadBalancerInput { - s.Tags = v +// SetForceDeleteAddOns sets the ForceDeleteAddOns field's value. +func (s *DeleteDiskInput) SetForceDeleteAddOns(v bool) *DeleteDiskInput { + s.ForceDeleteAddOns = &v return s } -type CreateLoadBalancerOutput struct { +type DeleteDiskOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -15486,77 +18885,45 @@ type CreateLoadBalancerOutput struct { } // String returns the string representation -func (s CreateLoadBalancerOutput) String() string { +func (s DeleteDiskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateLoadBalancerOutput) GoString() string { +func (s DeleteDiskOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *CreateLoadBalancerOutput) SetOperations(v []*Operation) *CreateLoadBalancerOutput { +func (s *DeleteDiskOutput) SetOperations(v []*Operation) *DeleteDiskOutput { s.Operations = v return s } -type CreateLoadBalancerTlsCertificateInput struct { +type DeleteDiskSnapshotInput struct { _ struct{} `type:"structure"` - // 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). - CertificateAlternativeNames []*string `locationName:"certificateAlternativeNames" type:"list"` - - // The domain name (e.g., example.com) for your SSL/TLS certificate. - // - // CertificateDomainName is a required field - CertificateDomainName *string `locationName:"certificateDomainName" type:"string" required:"true"` - - // 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 (http://docs.aws.amazon.com/acm/latest/userguide/acm-limits.html). - // - // CertificateName is a required field - CertificateName *string `locationName:"certificateName" type:"string" required:"true"` - - // The load balancer name where you want to create the SSL/TLS certificate. - // - // LoadBalancerName is a required field - LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` - - // The tag keys and optional values to add to the resource during create. + // The name of the disk snapshot you want to delete (e.g., my-disk-snapshot). // - // To tag a resource after it has been created, see the tag resource operation. - Tags []*Tag `locationName:"tags" type:"list"` + // DiskSnapshotName is a required field + DiskSnapshotName *string `locationName:"diskSnapshotName" type:"string" required:"true"` } // String returns the string representation -func (s CreateLoadBalancerTlsCertificateInput) String() string { +func (s DeleteDiskSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateLoadBalancerTlsCertificateInput) GoString() string { +func (s DeleteDiskSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateLoadBalancerTlsCertificateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateLoadBalancerTlsCertificateInput"} - if s.CertificateDomainName == nil { - invalidParams.Add(request.NewErrParamRequired("CertificateDomainName")) - } - if s.CertificateName == nil { - invalidParams.Add(request.NewErrParamRequired("CertificateName")) - } - if s.LoadBalancerName == nil { - invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) +func (s *DeleteDiskSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDiskSnapshotInput"} + if s.DiskSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("DiskSnapshotName")) } if invalidParams.Len() > 0 { @@ -15565,37 +18932,13 @@ func (s *CreateLoadBalancerTlsCertificateInput) Validate() error { return nil } -// SetCertificateAlternativeNames sets the CertificateAlternativeNames field's value. -func (s *CreateLoadBalancerTlsCertificateInput) SetCertificateAlternativeNames(v []*string) *CreateLoadBalancerTlsCertificateInput { - s.CertificateAlternativeNames = v - return s -} - -// SetCertificateDomainName sets the CertificateDomainName field's value. -func (s *CreateLoadBalancerTlsCertificateInput) SetCertificateDomainName(v string) *CreateLoadBalancerTlsCertificateInput { - s.CertificateDomainName = &v - return s -} - -// SetCertificateName sets the CertificateName field's value. -func (s *CreateLoadBalancerTlsCertificateInput) SetCertificateName(v string) *CreateLoadBalancerTlsCertificateInput { - s.CertificateName = &v - return s -} - -// SetLoadBalancerName sets the LoadBalancerName field's value. -func (s *CreateLoadBalancerTlsCertificateInput) SetLoadBalancerName(v string) *CreateLoadBalancerTlsCertificateInput { - s.LoadBalancerName = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *CreateLoadBalancerTlsCertificateInput) SetTags(v []*Tag) *CreateLoadBalancerTlsCertificateInput { - s.Tags = v +// SetDiskSnapshotName sets the DiskSnapshotName field's value. +func (s *DeleteDiskSnapshotInput) SetDiskSnapshotName(v string) *DeleteDiskSnapshotInput { + s.DiskSnapshotName = &v return s } -type CreateLoadBalancerTlsCertificateOutput struct { +type DeleteDiskSnapshotOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -15605,109 +18948,104 @@ type CreateLoadBalancerTlsCertificateOutput struct { } // String returns the string representation -func (s CreateLoadBalancerTlsCertificateOutput) String() string { +func (s DeleteDiskSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateLoadBalancerTlsCertificateOutput) GoString() string { +func (s DeleteDiskSnapshotOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *CreateLoadBalancerTlsCertificateOutput) SetOperations(v []*Operation) *CreateLoadBalancerTlsCertificateOutput { +func (s *DeleteDiskSnapshotOutput) SetOperations(v []*Operation) *DeleteDiskSnapshotOutput { s.Operations = v return s } -type CreateRelationalDatabaseFromSnapshotInput struct { +type DeleteDistributionInput struct { _ struct{} `type:"structure"` - // The Availability Zone in which to create your new database. Use the us-east-2a - // case-sensitive format. + // The name of the distribution to delete. // - // 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. - AvailabilityZone *string `locationName:"availabilityZone" type:"string"` + // Use the GetDistributions action to get a list of distribution names that + // you can specify. + DistributionName *string `locationName:"distributionName" type:"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. - PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` +// String returns the string representation +func (s DeleteDistributionInput) String() string { + return awsutil.Prettify(s) +} - // 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 `locationName:"relationalDatabaseBundleId" type:"string"` +// GoString returns the string representation +func (s DeleteDistributionInput) GoString() string { + return s.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. - // - // RelationalDatabaseName is a required field - RelationalDatabaseName *string `locationName:"relationalDatabaseName" type:"string" required:"true"` +// SetDistributionName sets the DistributionName field's value. +func (s *DeleteDistributionInput) SetDistributionName(v string) *DeleteDistributionInput { + s.DistributionName = &v + return s +} - // The name of the database snapshot from which to create your new database. - RelationalDatabaseSnapshotName *string `locationName:"relationalDatabaseSnapshotName" type:"string"` +type DeleteDistributionOutput struct { + _ struct{} `type:"structure"` - // 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. - RestoreTime *time.Time `locationName:"restoreTime" type:"timestamp"` + // 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. + Operation *Operation `locationName:"operation" type:"structure"` +} + +// String returns the string representation +func (s DeleteDistributionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteDistributionOutput) GoString() string { + return s.String() +} + +// SetOperation sets the Operation field's value. +func (s *DeleteDistributionOutput) SetOperation(v *Operation) *DeleteDistributionOutput { + s.Operation = v + return s +} - // The name of the source database. - SourceRelationalDatabaseName *string `locationName:"sourceRelationalDatabaseName" type:"string"` +type DeleteDomainEntryInput struct { + _ struct{} `type:"structure"` - // The tag keys and optional values to add to the resource during create. + // An array of key-value pairs containing information about your domain entries. // - // To tag a resource after it has been created, see the tag resource operation. - Tags []*Tag `locationName:"tags" type:"list"` + // DomainEntry is a required field + DomainEntry *DomainEntry `locationName:"domainEntry" type:"structure" required:"true"` - // Specifies whether your database is restored from the latest backup time. - // A value of true restores from the latest backup time. - // - // Default: false + // The name of the domain entry to delete. // - // Constraints: Cannot be specified if the restore time parameter is provided. - UseLatestRestorableTime *bool `locationName:"useLatestRestorableTime" type:"boolean"` + // DomainName is a required field + DomainName *string `locationName:"domainName" type:"string" required:"true"` } // String returns the string representation -func (s CreateRelationalDatabaseFromSnapshotInput) String() string { +func (s DeleteDomainEntryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateRelationalDatabaseFromSnapshotInput) GoString() string { +func (s DeleteDomainEntryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateRelationalDatabaseFromSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateRelationalDatabaseFromSnapshotInput"} - if s.RelationalDatabaseName == nil { - invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseName")) +func (s *DeleteDomainEntryInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDomainEntryInput"} + if s.DomainEntry == nil { + invalidParams.Add(request.NewErrParamRequired("DomainEntry")) + } + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { @@ -15716,238 +19054,134 @@ func (s *CreateRelationalDatabaseFromSnapshotInput) Validate() error { return nil } -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *CreateRelationalDatabaseFromSnapshotInput) SetAvailabilityZone(v string) *CreateRelationalDatabaseFromSnapshotInput { - s.AvailabilityZone = &v +// SetDomainEntry sets the DomainEntry field's value. +func (s *DeleteDomainEntryInput) SetDomainEntry(v *DomainEntry) *DeleteDomainEntryInput { + s.DomainEntry = v return s } -// SetPubliclyAccessible sets the PubliclyAccessible field's value. -func (s *CreateRelationalDatabaseFromSnapshotInput) SetPubliclyAccessible(v bool) *CreateRelationalDatabaseFromSnapshotInput { - s.PubliclyAccessible = &v +// SetDomainName sets the DomainName field's value. +func (s *DeleteDomainEntryInput) SetDomainName(v string) *DeleteDomainEntryInput { + s.DomainName = &v return s } -// SetRelationalDatabaseBundleId sets the RelationalDatabaseBundleId field's value. -func (s *CreateRelationalDatabaseFromSnapshotInput) SetRelationalDatabaseBundleId(v string) *CreateRelationalDatabaseFromSnapshotInput { - s.RelationalDatabaseBundleId = &v - return s +type DeleteDomainEntryOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operation" type:"structure"` } -// SetRelationalDatabaseName sets the RelationalDatabaseName field's value. -func (s *CreateRelationalDatabaseFromSnapshotInput) SetRelationalDatabaseName(v string) *CreateRelationalDatabaseFromSnapshotInput { - s.RelationalDatabaseName = &v - return s +// String returns the string representation +func (s DeleteDomainEntryOutput) String() string { + return awsutil.Prettify(s) } -// SetRelationalDatabaseSnapshotName sets the RelationalDatabaseSnapshotName field's value. -func (s *CreateRelationalDatabaseFromSnapshotInput) SetRelationalDatabaseSnapshotName(v string) *CreateRelationalDatabaseFromSnapshotInput { - s.RelationalDatabaseSnapshotName = &v - return s +// GoString returns the string representation +func (s DeleteDomainEntryOutput) GoString() string { + return s.String() } -// SetRestoreTime sets the RestoreTime field's value. -func (s *CreateRelationalDatabaseFromSnapshotInput) SetRestoreTime(v time.Time) *CreateRelationalDatabaseFromSnapshotInput { - s.RestoreTime = &v +// SetOperation sets the Operation field's value. +func (s *DeleteDomainEntryOutput) SetOperation(v *Operation) *DeleteDomainEntryOutput { + s.Operation = v return s } -// SetSourceRelationalDatabaseName sets the SourceRelationalDatabaseName field's value. -func (s *CreateRelationalDatabaseFromSnapshotInput) SetSourceRelationalDatabaseName(v string) *CreateRelationalDatabaseFromSnapshotInput { - s.SourceRelationalDatabaseName = &v - return s +type DeleteDomainInput struct { + _ struct{} `type:"structure"` + + // The specific domain name to delete. + // + // DomainName is a required field + DomainName *string `locationName:"domainName" type:"string" required:"true"` } -// SetTags sets the Tags field's value. -func (s *CreateRelationalDatabaseFromSnapshotInput) SetTags(v []*Tag) *CreateRelationalDatabaseFromSnapshotInput { - s.Tags = v - return s +// String returns the string representation +func (s DeleteDomainInput) String() string { + return awsutil.Prettify(s) } -// SetUseLatestRestorableTime sets the UseLatestRestorableTime field's value. -func (s *CreateRelationalDatabaseFromSnapshotInput) SetUseLatestRestorableTime(v bool) *CreateRelationalDatabaseFromSnapshotInput { - s.UseLatestRestorableTime = &v +// GoString returns the string representation +func (s DeleteDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDomainInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *DeleteDomainInput) SetDomainName(v string) *DeleteDomainInput { + s.DomainName = &v return s } -type CreateRelationalDatabaseFromSnapshotOutput struct { +type DeleteDomainOutput struct { _ struct{} `type:"structure"` // 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 `locationName:"operations" type:"list"` + Operation *Operation `locationName:"operation" type:"structure"` } // String returns the string representation -func (s CreateRelationalDatabaseFromSnapshotOutput) String() string { +func (s DeleteDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateRelationalDatabaseFromSnapshotOutput) GoString() string { +func (s DeleteDomainOutput) GoString() string { return s.String() } -// SetOperations sets the Operations field's value. -func (s *CreateRelationalDatabaseFromSnapshotOutput) SetOperations(v []*Operation) *CreateRelationalDatabaseFromSnapshotOutput { - s.Operations = v +// SetOperation sets the Operation field's value. +func (s *DeleteDomainOutput) SetOperation(v *Operation) *DeleteDomainOutput { + s.Operation = v return s } -type CreateRelationalDatabaseInput struct { +type DeleteInstanceInput struct { _ struct{} `type:"structure"` - // 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. - AvailabilityZone *string `locationName:"availabilityZone" type:"string"` - - // 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 - // - // MasterDatabaseName is a required field - MasterDatabaseName *string `locationName:"masterDatabaseName" type:"string" required:"true"` - - // 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 `locationName:"masterUserPassword" type:"string" sensitive:"true"` - - // 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 (https://dev.mysql.com/doc/refman/5.6/en/keywords.html) - // or MySQL 5.7 (https://dev.mysql.com/doc/refman/5.7/en/keywords.html) respectively. - // - // MasterUsername is a required field - MasterUsername *string `locationName:"masterUsername" type:"string" required:"true"` - - // 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 (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html#USER_WorkingWithAutomatedBackups.BackupWindow) - // 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. - PreferredBackupWindow *string `locationName:"preferredBackupWindow" type:"string"` - - // 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 - PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"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. - PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` - - // 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. - // - // RelationalDatabaseBlueprintId is a required field - RelationalDatabaseBlueprintId *string `locationName:"relationalDatabaseBlueprintId" type:"string" required:"true"` - - // 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. - // - // RelationalDatabaseBundleId is a required field - RelationalDatabaseBundleId *string `locationName:"relationalDatabaseBundleId" type:"string" required:"true"` - - // 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. - // - // RelationalDatabaseName is a required field - RelationalDatabaseName *string `locationName:"relationalDatabaseName" type:"string" required:"true"` + // A Boolean value to indicate whether to delete the enabled add-ons for the + // disk. + ForceDeleteAddOns *bool `locationName:"forceDeleteAddOns" type:"boolean"` - // The tag keys and optional values to add to the resource during create. + // The name of the instance to delete. // - // To tag a resource after it has been created, see the tag resource operation. - Tags []*Tag `locationName:"tags" type:"list"` + // InstanceName is a required field + InstanceName *string `locationName:"instanceName" type:"string" required:"true"` } // String returns the string representation -func (s CreateRelationalDatabaseInput) String() string { +func (s DeleteInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateRelationalDatabaseInput) GoString() string { +func (s DeleteInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateRelationalDatabaseInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateRelationalDatabaseInput"} - if s.MasterDatabaseName == nil { - invalidParams.Add(request.NewErrParamRequired("MasterDatabaseName")) - } - if s.MasterUsername == nil { - invalidParams.Add(request.NewErrParamRequired("MasterUsername")) - } - if s.RelationalDatabaseBlueprintId == nil { - invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseBlueprintId")) - } - if s.RelationalDatabaseBundleId == nil { - invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseBundleId")) - } - if s.RelationalDatabaseName == nil { - invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseName")) +func (s *DeleteInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteInstanceInput"} + if s.InstanceName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceName")) } if invalidParams.Len() > 0 { @@ -15956,73 +19190,82 @@ func (s *CreateRelationalDatabaseInput) Validate() error { return nil } -// SetAvailabilityZone sets the AvailabilityZone field's value. -func (s *CreateRelationalDatabaseInput) SetAvailabilityZone(v string) *CreateRelationalDatabaseInput { - s.AvailabilityZone = &v +// SetForceDeleteAddOns sets the ForceDeleteAddOns field's value. +func (s *DeleteInstanceInput) SetForceDeleteAddOns(v bool) *DeleteInstanceInput { + s.ForceDeleteAddOns = &v return s } -// SetMasterDatabaseName sets the MasterDatabaseName field's value. -func (s *CreateRelationalDatabaseInput) SetMasterDatabaseName(v string) *CreateRelationalDatabaseInput { - s.MasterDatabaseName = &v +// SetInstanceName sets the InstanceName field's value. +func (s *DeleteInstanceInput) SetInstanceName(v string) *DeleteInstanceInput { + s.InstanceName = &v return s } -// SetMasterUserPassword sets the MasterUserPassword field's value. -func (s *CreateRelationalDatabaseInput) SetMasterUserPassword(v string) *CreateRelationalDatabaseInput { - s.MasterUserPassword = &v - return s +type DeleteInstanceOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operations" type:"list"` } -// SetMasterUsername sets the MasterUsername field's value. -func (s *CreateRelationalDatabaseInput) SetMasterUsername(v string) *CreateRelationalDatabaseInput { - s.MasterUsername = &v - return s +// String returns the string representation +func (s DeleteInstanceOutput) String() string { + return awsutil.Prettify(s) } -// SetPreferredBackupWindow sets the PreferredBackupWindow field's value. -func (s *CreateRelationalDatabaseInput) SetPreferredBackupWindow(v string) *CreateRelationalDatabaseInput { - s.PreferredBackupWindow = &v - return s +// GoString returns the string representation +func (s DeleteInstanceOutput) GoString() string { + return s.String() } -// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. -func (s *CreateRelationalDatabaseInput) SetPreferredMaintenanceWindow(v string) *CreateRelationalDatabaseInput { - s.PreferredMaintenanceWindow = &v +// SetOperations sets the Operations field's value. +func (s *DeleteInstanceOutput) SetOperations(v []*Operation) *DeleteInstanceOutput { + s.Operations = v return s } -// SetPubliclyAccessible sets the PubliclyAccessible field's value. -func (s *CreateRelationalDatabaseInput) SetPubliclyAccessible(v bool) *CreateRelationalDatabaseInput { - s.PubliclyAccessible = &v - return s +type DeleteInstanceSnapshotInput struct { + _ struct{} `type:"structure"` + + // The name of the snapshot to delete. + // + // InstanceSnapshotName is a required field + InstanceSnapshotName *string `locationName:"instanceSnapshotName" type:"string" required:"true"` } -// SetRelationalDatabaseBlueprintId sets the RelationalDatabaseBlueprintId field's value. -func (s *CreateRelationalDatabaseInput) SetRelationalDatabaseBlueprintId(v string) *CreateRelationalDatabaseInput { - s.RelationalDatabaseBlueprintId = &v - return s +// String returns the string representation +func (s DeleteInstanceSnapshotInput) String() string { + return awsutil.Prettify(s) } -// SetRelationalDatabaseBundleId sets the RelationalDatabaseBundleId field's value. -func (s *CreateRelationalDatabaseInput) SetRelationalDatabaseBundleId(v string) *CreateRelationalDatabaseInput { - s.RelationalDatabaseBundleId = &v - return s +// GoString returns the string representation +func (s DeleteInstanceSnapshotInput) GoString() string { + return s.String() } -// SetRelationalDatabaseName sets the RelationalDatabaseName field's value. -func (s *CreateRelationalDatabaseInput) SetRelationalDatabaseName(v string) *CreateRelationalDatabaseInput { - s.RelationalDatabaseName = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteInstanceSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteInstanceSnapshotInput"} + if s.InstanceSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceSnapshotName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetTags sets the Tags field's value. -func (s *CreateRelationalDatabaseInput) SetTags(v []*Tag) *CreateRelationalDatabaseInput { - s.Tags = v +// SetInstanceSnapshotName sets the InstanceSnapshotName field's value. +func (s *DeleteInstanceSnapshotInput) SetInstanceSnapshotName(v string) *DeleteInstanceSnapshotInput { + s.InstanceSnapshotName = &v return s } -type CreateRelationalDatabaseOutput struct { +type DeleteInstanceSnapshotOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -16032,64 +19275,45 @@ type CreateRelationalDatabaseOutput struct { } // String returns the string representation -func (s CreateRelationalDatabaseOutput) String() string { +func (s DeleteInstanceSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateRelationalDatabaseOutput) GoString() string { +func (s DeleteInstanceSnapshotOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *CreateRelationalDatabaseOutput) SetOperations(v []*Operation) *CreateRelationalDatabaseOutput { +func (s *DeleteInstanceSnapshotOutput) SetOperations(v []*Operation) *DeleteInstanceSnapshotOutput { s.Operations = v return s } -type CreateRelationalDatabaseSnapshotInput struct { +type DeleteKeyPairInput struct { _ struct{} `type:"structure"` - // The name of the database on which to base your new snapshot. - // - // RelationalDatabaseName is a required field - RelationalDatabaseName *string `locationName:"relationalDatabaseName" type:"string" required:"true"` - - // 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. - // - // RelationalDatabaseSnapshotName is a required field - RelationalDatabaseSnapshotName *string `locationName:"relationalDatabaseSnapshotName" type:"string" required:"true"` - - // The tag keys and optional values to add to the resource during create. + // The name of the key pair to delete. // - // To tag a resource after it has been created, see the tag resource operation. - Tags []*Tag `locationName:"tags" type:"list"` + // KeyPairName is a required field + KeyPairName *string `locationName:"keyPairName" type:"string" required:"true"` } // String returns the string representation -func (s CreateRelationalDatabaseSnapshotInput) String() string { +func (s DeleteKeyPairInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateRelationalDatabaseSnapshotInput) GoString() string { +func (s DeleteKeyPairInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateRelationalDatabaseSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateRelationalDatabaseSnapshotInput"} - if s.RelationalDatabaseName == nil { - invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseName")) - } - if s.RelationalDatabaseSnapshotName == nil { - invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseSnapshotName")) +func (s *DeleteKeyPairInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteKeyPairInput"} + if s.KeyPairName == nil { + invalidParams.Add(request.NewErrParamRequired("KeyPairName")) } if invalidParams.Len() > 0 { @@ -16098,73 +19322,61 @@ func (s *CreateRelationalDatabaseSnapshotInput) Validate() error { return nil } -// SetRelationalDatabaseName sets the RelationalDatabaseName field's value. -func (s *CreateRelationalDatabaseSnapshotInput) SetRelationalDatabaseName(v string) *CreateRelationalDatabaseSnapshotInput { - s.RelationalDatabaseName = &v - return s -} - -// SetRelationalDatabaseSnapshotName sets the RelationalDatabaseSnapshotName field's value. -func (s *CreateRelationalDatabaseSnapshotInput) SetRelationalDatabaseSnapshotName(v string) *CreateRelationalDatabaseSnapshotInput { - s.RelationalDatabaseSnapshotName = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *CreateRelationalDatabaseSnapshotInput) SetTags(v []*Tag) *CreateRelationalDatabaseSnapshotInput { - s.Tags = v +// SetKeyPairName sets the KeyPairName field's value. +func (s *DeleteKeyPairInput) SetKeyPairName(v string) *DeleteKeyPairInput { + s.KeyPairName = &v return s } -type CreateRelationalDatabaseSnapshotOutput struct { +type DeleteKeyPairOutput struct { _ struct{} `type:"structure"` // 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 `locationName:"operations" type:"list"` + Operation *Operation `locationName:"operation" type:"structure"` } // String returns the string representation -func (s CreateRelationalDatabaseSnapshotOutput) String() string { +func (s DeleteKeyPairOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateRelationalDatabaseSnapshotOutput) GoString() string { +func (s DeleteKeyPairOutput) GoString() string { return s.String() } -// SetOperations sets the Operations field's value. -func (s *CreateRelationalDatabaseSnapshotOutput) SetOperations(v []*Operation) *CreateRelationalDatabaseSnapshotOutput { - s.Operations = v +// SetOperation sets the Operation field's value. +func (s *DeleteKeyPairOutput) SetOperation(v *Operation) *DeleteKeyPairOutput { + s.Operation = v return s } -type DeleteAlarmInput struct { +type DeleteKnownHostKeysInput struct { _ struct{} `type:"structure"` - // The name of the alarm to delete. + // The name of the instance for which you want to reset the host key or certificate. // - // AlarmName is a required field - AlarmName *string `locationName:"alarmName" type:"string" required:"true"` + // InstanceName is a required field + InstanceName *string `locationName:"instanceName" type:"string" required:"true"` } // String returns the string representation -func (s DeleteAlarmInput) String() string { +func (s DeleteKnownHostKeysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteAlarmInput) GoString() string { +func (s DeleteKnownHostKeysInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteAlarmInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteAlarmInput"} - if s.AlarmName == nil { - invalidParams.Add(request.NewErrParamRequired("AlarmName")) +func (s *DeleteKnownHostKeysInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteKnownHostKeysInput"} + if s.InstanceName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceName")) } if invalidParams.Len() > 0 { @@ -16173,13 +19385,13 @@ func (s *DeleteAlarmInput) Validate() error { return nil } -// SetAlarmName sets the AlarmName field's value. -func (s *DeleteAlarmInput) SetAlarmName(v string) *DeleteAlarmInput { - s.AlarmName = &v +// SetInstanceName sets the InstanceName field's value. +func (s *DeleteKnownHostKeysInput) SetInstanceName(v string) *DeleteKnownHostKeysInput { + s.InstanceName = &v return s } -type DeleteAlarmOutput struct { +type DeleteKnownHostKeysOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -16189,56 +19401,45 @@ type DeleteAlarmOutput struct { } // String returns the string representation -func (s DeleteAlarmOutput) String() string { +func (s DeleteKnownHostKeysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteAlarmOutput) GoString() string { +func (s DeleteKnownHostKeysOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *DeleteAlarmOutput) SetOperations(v []*Operation) *DeleteAlarmOutput { +func (s *DeleteKnownHostKeysOutput) SetOperations(v []*Operation) *DeleteKnownHostKeysOutput { s.Operations = v return s } -type DeleteAutoSnapshotInput struct { +type DeleteLoadBalancerInput struct { _ struct{} `type:"structure"` - // 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. - // - // Date is a required field - Date *string `locationName:"date" type:"string" required:"true"` - - // The name of the source instance or disk from which to delete the automatic - // snapshot. + // The name of the load balancer you want to delete. // - // ResourceName is a required field - ResourceName *string `locationName:"resourceName" type:"string" required:"true"` + // LoadBalancerName is a required field + LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` } // String returns the string representation -func (s DeleteAutoSnapshotInput) String() string { +func (s DeleteLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteAutoSnapshotInput) GoString() string { +func (s DeleteLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteAutoSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteAutoSnapshotInput"} - if s.Date == nil { - invalidParams.Add(request.NewErrParamRequired("Date")) - } - if s.ResourceName == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceName")) +func (s *DeleteLoadBalancerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLoadBalancerInput"} + if s.LoadBalancerName == nil { + invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { @@ -16247,19 +19448,13 @@ func (s *DeleteAutoSnapshotInput) Validate() error { return nil } -// SetDate sets the Date field's value. -func (s *DeleteAutoSnapshotInput) SetDate(v string) *DeleteAutoSnapshotInput { - s.Date = &v - return s -} - -// SetResourceName sets the ResourceName field's value. -func (s *DeleteAutoSnapshotInput) SetResourceName(v string) *DeleteAutoSnapshotInput { - s.ResourceName = &v +// SetLoadBalancerName sets the LoadBalancerName field's value. +func (s *DeleteLoadBalancerInput) SetLoadBalancerName(v string) *DeleteLoadBalancerInput { + s.LoadBalancerName = &v return s } -type DeleteAutoSnapshotOutput struct { +type DeleteLoadBalancerOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -16269,48 +19464,60 @@ type DeleteAutoSnapshotOutput struct { } // String returns the string representation -func (s DeleteAutoSnapshotOutput) String() string { +func (s DeleteLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteAutoSnapshotOutput) GoString() string { +func (s DeleteLoadBalancerOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *DeleteAutoSnapshotOutput) SetOperations(v []*Operation) *DeleteAutoSnapshotOutput { +func (s *DeleteLoadBalancerOutput) SetOperations(v []*Operation) *DeleteLoadBalancerOutput { s.Operations = v return s } -type DeleteContactMethodInput struct { +type DeleteLoadBalancerTlsCertificateInput struct { _ struct{} `type:"structure"` - // The protocol that will be deleted, such as Email or SMS (text messaging). + // The SSL/TLS certificate name. // - // To delete an Email and an SMS contact method if you added both, you must - // run separate DeleteContactMethod actions to delete each protocol. + // CertificateName is a required field + CertificateName *string `locationName:"certificateName" type:"string" required:"true"` + + // When true, forces the deletion of an SSL/TLS certificate. // - // Protocol is a required field - Protocol *string `locationName:"protocol" type:"string" required:"true" enum:"ContactProtocol"` + // 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. + Force *bool `locationName:"force" type:"boolean"` + + // The load balancer name. + // + // LoadBalancerName is a required field + LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` } // String returns the string representation -func (s DeleteContactMethodInput) String() string { +func (s DeleteLoadBalancerTlsCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteContactMethodInput) GoString() string { +func (s DeleteLoadBalancerTlsCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteContactMethodInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteContactMethodInput"} - if s.Protocol == nil { - invalidParams.Add(request.NewErrParamRequired("Protocol")) +func (s *DeleteLoadBalancerTlsCertificateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLoadBalancerTlsCertificateInput"} + if s.CertificateName == nil { + invalidParams.Add(request.NewErrParamRequired("CertificateName")) + } + if s.LoadBalancerName == nil { + invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { @@ -16319,13 +19526,25 @@ func (s *DeleteContactMethodInput) Validate() error { return nil } -// SetProtocol sets the Protocol field's value. -func (s *DeleteContactMethodInput) SetProtocol(v string) *DeleteContactMethodInput { - s.Protocol = &v +// SetCertificateName sets the CertificateName field's value. +func (s *DeleteLoadBalancerTlsCertificateInput) SetCertificateName(v string) *DeleteLoadBalancerTlsCertificateInput { + s.CertificateName = &v return s } -type DeleteContactMethodOutput struct { +// SetForce sets the Force field's value. +func (s *DeleteLoadBalancerTlsCertificateInput) SetForce(v bool) *DeleteLoadBalancerTlsCertificateInput { + s.Force = &v + return s +} + +// SetLoadBalancerName sets the LoadBalancerName field's value. +func (s *DeleteLoadBalancerTlsCertificateInput) SetLoadBalancerName(v string) *DeleteLoadBalancerTlsCertificateInput { + s.LoadBalancerName = &v + return s +} + +type DeleteLoadBalancerTlsCertificateOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -16335,49 +19554,68 @@ type DeleteContactMethodOutput struct { } // String returns the string representation -func (s DeleteContactMethodOutput) String() string { +func (s DeleteLoadBalancerTlsCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteContactMethodOutput) GoString() string { +func (s DeleteLoadBalancerTlsCertificateOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *DeleteContactMethodOutput) SetOperations(v []*Operation) *DeleteContactMethodOutput { +func (s *DeleteLoadBalancerTlsCertificateOutput) SetOperations(v []*Operation) *DeleteLoadBalancerTlsCertificateOutput { s.Operations = v return s } -type DeleteDiskInput struct { +type DeleteRelationalDatabaseInput struct { _ struct{} `type:"structure"` - // The unique name of the disk you want to delete (e.g., my-disk). + // The name of the database snapshot created if skip final snapshot is false, + // which is the default value for that parameter. // - // DiskName is a required field - DiskName *string `locationName:"diskName" type:"string" required:"true"` + // 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. + FinalRelationalDatabaseSnapshotName *string `locationName:"finalRelationalDatabaseSnapshotName" type:"string"` - // A Boolean value to indicate whether to delete the enabled add-ons for the - // disk. - ForceDeleteAddOns *bool `locationName:"forceDeleteAddOns" type:"boolean"` + // The name of the database that you are deleting. + // + // RelationalDatabaseName is a required field + RelationalDatabaseName *string `locationName:"relationalDatabaseName" type:"string" required:"true"` + + // 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 + SkipFinalSnapshot *bool `locationName:"skipFinalSnapshot" type:"boolean"` } // String returns the string representation -func (s DeleteDiskInput) String() string { +func (s DeleteRelationalDatabaseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDiskInput) GoString() string { +func (s DeleteRelationalDatabaseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteDiskInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteDiskInput"} - if s.DiskName == nil { - invalidParams.Add(request.NewErrParamRequired("DiskName")) +func (s *DeleteRelationalDatabaseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRelationalDatabaseInput"} + if s.RelationalDatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseName")) } if invalidParams.Len() > 0 { @@ -16386,19 +19624,25 @@ func (s *DeleteDiskInput) Validate() error { return nil } -// SetDiskName sets the DiskName field's value. -func (s *DeleteDiskInput) SetDiskName(v string) *DeleteDiskInput { - s.DiskName = &v +// SetFinalRelationalDatabaseSnapshotName sets the FinalRelationalDatabaseSnapshotName field's value. +func (s *DeleteRelationalDatabaseInput) SetFinalRelationalDatabaseSnapshotName(v string) *DeleteRelationalDatabaseInput { + s.FinalRelationalDatabaseSnapshotName = &v return s } -// SetForceDeleteAddOns sets the ForceDeleteAddOns field's value. -func (s *DeleteDiskInput) SetForceDeleteAddOns(v bool) *DeleteDiskInput { - s.ForceDeleteAddOns = &v +// SetRelationalDatabaseName sets the RelationalDatabaseName field's value. +func (s *DeleteRelationalDatabaseInput) SetRelationalDatabaseName(v string) *DeleteRelationalDatabaseInput { + s.RelationalDatabaseName = &v return s } -type DeleteDiskOutput struct { +// SetSkipFinalSnapshot sets the SkipFinalSnapshot field's value. +func (s *DeleteRelationalDatabaseInput) SetSkipFinalSnapshot(v bool) *DeleteRelationalDatabaseInput { + s.SkipFinalSnapshot = &v + return s +} + +type DeleteRelationalDatabaseOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -16408,45 +19652,45 @@ type DeleteDiskOutput struct { } // String returns the string representation -func (s DeleteDiskOutput) String() string { +func (s DeleteRelationalDatabaseOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDiskOutput) GoString() string { +func (s DeleteRelationalDatabaseOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *DeleteDiskOutput) SetOperations(v []*Operation) *DeleteDiskOutput { +func (s *DeleteRelationalDatabaseOutput) SetOperations(v []*Operation) *DeleteRelationalDatabaseOutput { s.Operations = v return s } -type DeleteDiskSnapshotInput struct { +type DeleteRelationalDatabaseSnapshotInput struct { _ struct{} `type:"structure"` - // The name of the disk snapshot you want to delete (e.g., my-disk-snapshot). + // The name of the database snapshot that you are deleting. // - // DiskSnapshotName is a required field - DiskSnapshotName *string `locationName:"diskSnapshotName" type:"string" required:"true"` + // RelationalDatabaseSnapshotName is a required field + RelationalDatabaseSnapshotName *string `locationName:"relationalDatabaseSnapshotName" type:"string" required:"true"` } // String returns the string representation -func (s DeleteDiskSnapshotInput) String() string { +func (s DeleteRelationalDatabaseSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDiskSnapshotInput) GoString() string { +func (s DeleteRelationalDatabaseSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteDiskSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteDiskSnapshotInput"} - if s.DiskSnapshotName == nil { - invalidParams.Add(request.NewErrParamRequired("DiskSnapshotName")) +func (s *DeleteRelationalDatabaseSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRelationalDatabaseSnapshotInput"} + if s.RelationalDatabaseSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseSnapshotName")) } if invalidParams.Len() > 0 { @@ -16455,13 +19699,13 @@ func (s *DeleteDiskSnapshotInput) Validate() error { return nil } -// SetDiskSnapshotName sets the DiskSnapshotName field's value. -func (s *DeleteDiskSnapshotInput) SetDiskSnapshotName(v string) *DeleteDiskSnapshotInput { - s.DiskSnapshotName = &v +// SetRelationalDatabaseSnapshotName sets the RelationalDatabaseSnapshotName field's value. +func (s *DeleteRelationalDatabaseSnapshotInput) SetRelationalDatabaseSnapshotName(v string) *DeleteRelationalDatabaseSnapshotInput { + s.RelationalDatabaseSnapshotName = &v return s } -type DeleteDiskSnapshotOutput struct { +type DeleteRelationalDatabaseSnapshotOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -16471,53 +19715,81 @@ type DeleteDiskSnapshotOutput struct { } // String returns the string representation -func (s DeleteDiskSnapshotOutput) String() string { +func (s DeleteRelationalDatabaseSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDiskSnapshotOutput) GoString() string { +func (s DeleteRelationalDatabaseSnapshotOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *DeleteDiskSnapshotOutput) SetOperations(v []*Operation) *DeleteDiskSnapshotOutput { +func (s *DeleteRelationalDatabaseSnapshotOutput) SetOperations(v []*Operation) *DeleteRelationalDatabaseSnapshotOutput { s.Operations = v return s } -type DeleteDomainEntryInput struct { +// Describes the destination of a record. +type DestinationInfo struct { _ struct{} `type:"structure"` - // An array of key-value pairs containing information about your domain entries. - // - // DomainEntry is a required field - DomainEntry *DomainEntry `locationName:"domainEntry" type:"structure" required:"true"` + // The ID of the resource created at the destination. + Id *string `locationName:"id" type:"string"` - // The name of the domain entry to delete. + // The destination service of the record. + Service *string `locationName:"service" type:"string"` +} + +// String returns the string representation +func (s DestinationInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DestinationInfo) GoString() string { + return s.String() +} + +// SetId sets the Id field's value. +func (s *DestinationInfo) SetId(v string) *DestinationInfo { + s.Id = &v + return s +} + +// SetService sets the Service field's value. +func (s *DestinationInfo) SetService(v string) *DestinationInfo { + s.Service = &v + return s +} + +type DetachCertificateFromDistributionInput struct { + _ struct{} `type:"structure"` + + // The name of the distribution from which to detach the certificate. // - // DomainName is a required field - DomainName *string `locationName:"domainName" type:"string" required:"true"` + // Use the GetDistributions action to get a list of distribution names that + // you can specify. + // + // DistributionName is a required field + DistributionName *string `locationName:"distributionName" type:"string" required:"true"` } // String returns the string representation -func (s DeleteDomainEntryInput) String() string { +func (s DetachCertificateFromDistributionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDomainEntryInput) GoString() string { +func (s DetachCertificateFromDistributionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteDomainEntryInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteDomainEntryInput"} - if s.DomainEntry == nil { - invalidParams.Add(request.NewErrParamRequired("DomainEntry")) - } - if s.DomainName == nil { - invalidParams.Add(request.NewErrParamRequired("DomainName")) +func (s *DetachCertificateFromDistributionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DetachCertificateFromDistributionInput"} + if s.DistributionName == nil { + invalidParams.Add(request.NewErrParamRequired("DistributionName")) } if invalidParams.Len() > 0 { @@ -16526,67 +19798,62 @@ func (s *DeleteDomainEntryInput) Validate() error { return nil } -// SetDomainEntry sets the DomainEntry field's value. -func (s *DeleteDomainEntryInput) SetDomainEntry(v *DomainEntry) *DeleteDomainEntryInput { - s.DomainEntry = v - return s -} - -// SetDomainName sets the DomainName field's value. -func (s *DeleteDomainEntryInput) SetDomainName(v string) *DeleteDomainEntryInput { - s.DomainName = &v +// SetDistributionName sets the DistributionName field's value. +func (s *DetachCertificateFromDistributionInput) SetDistributionName(v string) *DetachCertificateFromDistributionInput { + s.DistributionName = &v return s } -type DeleteDomainEntryOutput struct { +type DetachCertificateFromDistributionOutput struct { _ struct{} `type:"structure"` - // 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 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. Operation *Operation `locationName:"operation" type:"structure"` } // String returns the string representation -func (s DeleteDomainEntryOutput) String() string { +func (s DetachCertificateFromDistributionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDomainEntryOutput) GoString() string { +func (s DetachCertificateFromDistributionOutput) GoString() string { return s.String() } // SetOperation sets the Operation field's value. -func (s *DeleteDomainEntryOutput) SetOperation(v *Operation) *DeleteDomainEntryOutput { +func (s *DetachCertificateFromDistributionOutput) SetOperation(v *Operation) *DetachCertificateFromDistributionOutput { s.Operation = v return s } -type DeleteDomainInput struct { +type DetachDiskInput struct { _ struct{} `type:"structure"` - // The specific domain name to delete. + // The unique name of the disk you want to detach from your instance (e.g., + // my-disk). // - // DomainName is a required field - DomainName *string `locationName:"domainName" type:"string" required:"true"` + // DiskName is a required field + DiskName *string `locationName:"diskName" type:"string" required:"true"` } // String returns the string representation -func (s DeleteDomainInput) String() string { +func (s DetachDiskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDomainInput) GoString() string { +func (s DetachDiskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteDomainInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteDomainInput"} - if s.DomainName == nil { - invalidParams.Add(request.NewErrParamRequired("DomainName")) +func (s *DetachDiskInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DetachDiskInput"} + if s.DiskName == nil { + invalidParams.Add(request.NewErrParamRequired("DiskName")) } if invalidParams.Len() > 0 { @@ -16595,65 +19862,70 @@ func (s *DeleteDomainInput) Validate() error { return nil } -// SetDomainName sets the DomainName field's value. -func (s *DeleteDomainInput) SetDomainName(v string) *DeleteDomainInput { - s.DomainName = &v +// SetDiskName sets the DiskName field's value. +func (s *DetachDiskInput) SetDiskName(v string) *DetachDiskInput { + s.DiskName = &v return s } -type DeleteDomainOutput struct { +type DetachDiskOutput struct { _ struct{} `type:"structure"` // 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 `locationName:"operation" type:"structure"` + Operations []*Operation `locationName:"operations" type:"list"` } // String returns the string representation -func (s DeleteDomainOutput) String() string { +func (s DetachDiskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteDomainOutput) GoString() string { +func (s DetachDiskOutput) GoString() string { return s.String() } -// SetOperation sets the Operation field's value. -func (s *DeleteDomainOutput) SetOperation(v *Operation) *DeleteDomainOutput { - s.Operation = v +// SetOperations sets the Operations field's value. +func (s *DetachDiskOutput) SetOperations(v []*Operation) *DetachDiskOutput { + s.Operations = v return s } -type DeleteInstanceInput struct { +type DetachInstancesFromLoadBalancerInput struct { _ struct{} `type:"structure"` - // A Boolean value to indicate whether to delete the enabled add-ons for the - // disk. - ForceDeleteAddOns *bool `locationName:"forceDeleteAddOns" type:"boolean"` + // An array of strings containing the names of the instances you want to detach + // from the load balancer. + // + // InstanceNames is a required field + InstanceNames []*string `locationName:"instanceNames" type:"list" required:"true"` - // The name of the instance to delete. + // The name of the Lightsail load balancer. // - // InstanceName is a required field - InstanceName *string `locationName:"instanceName" type:"string" required:"true"` + // LoadBalancerName is a required field + LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` } // String returns the string representation -func (s DeleteInstanceInput) String() string { +func (s DetachInstancesFromLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteInstanceInput) GoString() string { +func (s DetachInstancesFromLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteInstanceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteInstanceInput"} - if s.InstanceName == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceName")) +func (s *DetachInstancesFromLoadBalancerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DetachInstancesFromLoadBalancerInput"} + if s.InstanceNames == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceNames")) + } + if s.LoadBalancerName == nil { + invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { @@ -16662,19 +19934,19 @@ func (s *DeleteInstanceInput) Validate() error { return nil } -// SetForceDeleteAddOns sets the ForceDeleteAddOns field's value. -func (s *DeleteInstanceInput) SetForceDeleteAddOns(v bool) *DeleteInstanceInput { - s.ForceDeleteAddOns = &v +// SetInstanceNames sets the InstanceNames field's value. +func (s *DetachInstancesFromLoadBalancerInput) SetInstanceNames(v []*string) *DetachInstancesFromLoadBalancerInput { + s.InstanceNames = v return s } -// SetInstanceName sets the InstanceName field's value. -func (s *DeleteInstanceInput) SetInstanceName(v string) *DeleteInstanceInput { - s.InstanceName = &v +// SetLoadBalancerName sets the LoadBalancerName field's value. +func (s *DetachInstancesFromLoadBalancerInput) SetLoadBalancerName(v string) *DetachInstancesFromLoadBalancerInput { + s.LoadBalancerName = &v return s } -type DeleteInstanceOutput struct { +type DetachInstancesFromLoadBalancerOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -16684,45 +19956,45 @@ type DeleteInstanceOutput struct { } // String returns the string representation -func (s DeleteInstanceOutput) String() string { +func (s DetachInstancesFromLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteInstanceOutput) GoString() string { +func (s DetachInstancesFromLoadBalancerOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *DeleteInstanceOutput) SetOperations(v []*Operation) *DeleteInstanceOutput { +func (s *DetachInstancesFromLoadBalancerOutput) SetOperations(v []*Operation) *DetachInstancesFromLoadBalancerOutput { s.Operations = v return s } -type DeleteInstanceSnapshotInput struct { +type DetachStaticIpInput struct { _ struct{} `type:"structure"` - // The name of the snapshot to delete. + // The name of the static IP to detach from the instance. // - // InstanceSnapshotName is a required field - InstanceSnapshotName *string `locationName:"instanceSnapshotName" type:"string" required:"true"` + // StaticIpName is a required field + StaticIpName *string `locationName:"staticIpName" type:"string" required:"true"` } // String returns the string representation -func (s DeleteInstanceSnapshotInput) String() string { +func (s DetachStaticIpInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteInstanceSnapshotInput) GoString() string { +func (s DetachStaticIpInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteInstanceSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteInstanceSnapshotInput"} - if s.InstanceSnapshotName == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceSnapshotName")) +func (s *DetachStaticIpInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DetachStaticIpInput"} + if s.StaticIpName == nil { + invalidParams.Add(request.NewErrParamRequired("StaticIpName")) } if invalidParams.Len() > 0 { @@ -16731,13 +20003,13 @@ func (s *DeleteInstanceSnapshotInput) Validate() error { return nil } -// SetInstanceSnapshotName sets the InstanceSnapshotName field's value. -func (s *DeleteInstanceSnapshotInput) SetInstanceSnapshotName(v string) *DeleteInstanceSnapshotInput { - s.InstanceSnapshotName = &v +// SetStaticIpName sets the StaticIpName field's value. +func (s *DetachStaticIpInput) SetStaticIpName(v string) *DetachStaticIpInput { + s.StaticIpName = &v return s } -type DeleteInstanceSnapshotOutput struct { +type DetachStaticIpOutput struct { _ struct{} `type:"structure"` // An array of objects that describe the result of the action, such as the status @@ -16747,45 +20019,53 @@ type DeleteInstanceSnapshotOutput struct { } // String returns the string representation -func (s DeleteInstanceSnapshotOutput) String() string { +func (s DetachStaticIpOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteInstanceSnapshotOutput) GoString() string { +func (s DetachStaticIpOutput) GoString() string { return s.String() } // SetOperations sets the Operations field's value. -func (s *DeleteInstanceSnapshotOutput) SetOperations(v []*Operation) *DeleteInstanceSnapshotOutput { +func (s *DetachStaticIpOutput) SetOperations(v []*Operation) *DetachStaticIpOutput { s.Operations = v return s } -type DeleteKeyPairInput struct { +type DisableAddOnInput struct { _ struct{} `type:"structure"` - // The name of the key pair to delete. + // The add-on type to disable. // - // KeyPairName is a required field - KeyPairName *string `locationName:"keyPairName" type:"string" required:"true"` + // AddOnType is a required field + AddOnType *string `locationName:"addOnType" type:"string" required:"true" enum:"AddOnType"` + + // The name of the source resource for which to disable the add-on. + // + // ResourceName is a required field + ResourceName *string `locationName:"resourceName" type:"string" required:"true"` } // String returns the string representation -func (s DeleteKeyPairInput) String() string { +func (s DisableAddOnInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteKeyPairInput) GoString() string { +func (s DisableAddOnInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteKeyPairInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteKeyPairInput"} - if s.KeyPairName == nil { - invalidParams.Add(request.NewErrParamRequired("KeyPairName")) +func (s *DisableAddOnInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisableAddOnInput"} + if s.AddOnType == nil { + invalidParams.Add(request.NewErrParamRequired("AddOnType")) + } + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if invalidParams.Len() > 0 { @@ -16794,1450 +20074,1318 @@ func (s *DeleteKeyPairInput) Validate() error { return nil } -// SetKeyPairName sets the KeyPairName field's value. -func (s *DeleteKeyPairInput) SetKeyPairName(v string) *DeleteKeyPairInput { - s.KeyPairName = &v +// SetAddOnType sets the AddOnType field's value. +func (s *DisableAddOnInput) SetAddOnType(v string) *DisableAddOnInput { + s.AddOnType = &v return s } -type DeleteKeyPairOutput struct { +// SetResourceName sets the ResourceName field's value. +func (s *DisableAddOnInput) SetResourceName(v string) *DisableAddOnInput { + s.ResourceName = &v + return s +} + +type DisableAddOnOutput struct { _ struct{} `type:"structure"` // 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 `locationName:"operation" type:"structure"` + Operations []*Operation `locationName:"operations" type:"list"` } // String returns the string representation -func (s DeleteKeyPairOutput) String() string { +func (s DisableAddOnOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteKeyPairOutput) GoString() string { +func (s DisableAddOnOutput) GoString() string { return s.String() } -// SetOperation sets the Operation field's value. -func (s *DeleteKeyPairOutput) SetOperation(v *Operation) *DeleteKeyPairOutput { - s.Operation = v +// SetOperations sets the Operations field's value. +func (s *DisableAddOnOutput) SetOperations(v []*Operation) *DisableAddOnOutput { + s.Operations = v return s } -type DeleteKnownHostKeysInput struct { +// Describes a system disk or a block storage disk. +type Disk struct { _ struct{} `type:"structure"` - // The name of the instance for which you want to reset the host key or certificate. + // An array of objects representing the add-ons enabled on the disk. + AddOns []*AddOn `locationName:"addOns" type:"list"` + + // The Amazon Resource Name (ARN) of the disk. + Arn *string `locationName:"arn" type:"string"` + + // The resources to which the disk is attached. + AttachedTo *string `locationName:"attachedTo" type:"string"` + + // (Deprecated) The attachment state of the disk. // - // InstanceName is a required field - InstanceName *string `locationName:"instanceName" type:"string" required:"true"` -} + // 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. + // + // Deprecated: AttachmentState has been deprecated + AttachmentState *string `locationName:"attachmentState" deprecated:"true" type:"string"` -// String returns the string representation -func (s DeleteKnownHostKeysInput) String() string { - return awsutil.Prettify(s) -} + // The date when the disk was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` -// GoString returns the string representation -func (s DeleteKnownHostKeysInput) GoString() string { - return s.String() -} + // (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. + // + // Deprecated: GbInUse has been deprecated + GbInUse *int64 `locationName:"gbInUse" deprecated:"true" type:"integer"` -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteKnownHostKeysInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteKnownHostKeysInput"} - if s.InstanceName == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceName")) - } + // The input/output operations per second (IOPS) of the disk. + Iops *int64 `locationName:"iops" type:"integer"` - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} + // A Boolean value indicating whether the disk is attached. + IsAttached *bool `locationName:"isAttached" type:"boolean"` -// SetInstanceName sets the InstanceName field's value. -func (s *DeleteKnownHostKeysInput) SetInstanceName(v string) *DeleteKnownHostKeysInput { - s.InstanceName = &v - return s -} + // A Boolean value indicating whether this disk is a system disk (has an operating + // system loaded on it). + IsSystemDisk *bool `locationName:"isSystemDisk" type:"boolean"` -type DeleteKnownHostKeysOutput struct { - _ struct{} `type:"structure"` + // The AWS Region and Availability Zone where the disk is located. + Location *ResourceLocation `locationName:"location" type:"structure"` - // 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 `locationName:"operations" type:"list"` -} + // The unique name of the disk. + Name *string `locationName:"name" type:"string"` -// String returns the string representation -func (s DeleteKnownHostKeysOutput) String() string { - return awsutil.Prettify(s) -} + // The disk path. + Path *string `locationName:"path" type:"string"` -// GoString returns the string representation -func (s DeleteKnownHostKeysOutput) GoString() string { - return s.String() -} + // The Lightsail resource type (e.g., Disk). + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` -// SetOperations sets the Operations field's value. -func (s *DeleteKnownHostKeysOutput) SetOperations(v []*Operation) *DeleteKnownHostKeysOutput { - s.Operations = v - return s -} + // The size of the disk in GB. + SizeInGb *int64 `locationName:"sizeInGb" type:"integer"` -type DeleteLoadBalancerInput struct { - _ struct{} `type:"structure"` + // Describes the status of the disk. + State *string `locationName:"state" type:"string" enum:"DiskState"` - // The name of the load balancer you want to delete. - // - // LoadBalancerName is a required field - LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` + // 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 `locationName:"supportCode" type:"string"` + + // The tag keys and optional values for the resource. For more information about + // tags in Lightsail, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s DeleteLoadBalancerInput) String() string { +func (s Disk) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteLoadBalancerInput) GoString() string { +func (s Disk) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteLoadBalancerInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteLoadBalancerInput"} - if s.LoadBalancerName == nil { - invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetAddOns sets the AddOns field's value. +func (s *Disk) SetAddOns(v []*AddOn) *Disk { + s.AddOns = v + return s } -// SetLoadBalancerName sets the LoadBalancerName field's value. -func (s *DeleteLoadBalancerInput) SetLoadBalancerName(v string) *DeleteLoadBalancerInput { - s.LoadBalancerName = &v +// SetArn sets the Arn field's value. +func (s *Disk) SetArn(v string) *Disk { + s.Arn = &v return s } -type DeleteLoadBalancerOutput struct { - _ struct{} `type:"structure"` - - // 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 `locationName:"operations" type:"list"` +// SetAttachedTo sets the AttachedTo field's value. +func (s *Disk) SetAttachedTo(v string) *Disk { + s.AttachedTo = &v + return s } -// String returns the string representation -func (s DeleteLoadBalancerOutput) String() string { - return awsutil.Prettify(s) +// SetAttachmentState sets the AttachmentState field's value. +func (s *Disk) SetAttachmentState(v string) *Disk { + s.AttachmentState = &v + return s } -// GoString returns the string representation -func (s DeleteLoadBalancerOutput) GoString() string { - return s.String() +// SetCreatedAt sets the CreatedAt field's value. +func (s *Disk) SetCreatedAt(v time.Time) *Disk { + s.CreatedAt = &v + return s } -// SetOperations sets the Operations field's value. -func (s *DeleteLoadBalancerOutput) SetOperations(v []*Operation) *DeleteLoadBalancerOutput { - s.Operations = v +// SetGbInUse sets the GbInUse field's value. +func (s *Disk) SetGbInUse(v int64) *Disk { + s.GbInUse = &v return s } -type DeleteLoadBalancerTlsCertificateInput struct { - _ struct{} `type:"structure"` - - // The SSL/TLS certificate name. - // - // CertificateName is a required field - CertificateName *string `locationName:"certificateName" type:"string" required:"true"` - - // 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. - Force *bool `locationName:"force" type:"boolean"` - - // The load balancer name. - // - // LoadBalancerName is a required field - LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` +// SetIops sets the Iops field's value. +func (s *Disk) SetIops(v int64) *Disk { + s.Iops = &v + return s } -// String returns the string representation -func (s DeleteLoadBalancerTlsCertificateInput) String() string { - return awsutil.Prettify(s) +// SetIsAttached sets the IsAttached field's value. +func (s *Disk) SetIsAttached(v bool) *Disk { + s.IsAttached = &v + return s } -// GoString returns the string representation -func (s DeleteLoadBalancerTlsCertificateInput) GoString() string { - return s.String() +// SetIsSystemDisk sets the IsSystemDisk field's value. +func (s *Disk) SetIsSystemDisk(v bool) *Disk { + s.IsSystemDisk = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteLoadBalancerTlsCertificateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteLoadBalancerTlsCertificateInput"} - if s.CertificateName == nil { - invalidParams.Add(request.NewErrParamRequired("CertificateName")) - } - if s.LoadBalancerName == nil { - invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetLocation sets the Location field's value. +func (s *Disk) SetLocation(v *ResourceLocation) *Disk { + s.Location = v + return s } -// SetCertificateName sets the CertificateName field's value. -func (s *DeleteLoadBalancerTlsCertificateInput) SetCertificateName(v string) *DeleteLoadBalancerTlsCertificateInput { - s.CertificateName = &v +// SetName sets the Name field's value. +func (s *Disk) SetName(v string) *Disk { + s.Name = &v return s } -// SetForce sets the Force field's value. -func (s *DeleteLoadBalancerTlsCertificateInput) SetForce(v bool) *DeleteLoadBalancerTlsCertificateInput { - s.Force = &v +// SetPath sets the Path field's value. +func (s *Disk) SetPath(v string) *Disk { + s.Path = &v return s } -// SetLoadBalancerName sets the LoadBalancerName field's value. -func (s *DeleteLoadBalancerTlsCertificateInput) SetLoadBalancerName(v string) *DeleteLoadBalancerTlsCertificateInput { - s.LoadBalancerName = &v +// SetResourceType sets the ResourceType field's value. +func (s *Disk) SetResourceType(v string) *Disk { + s.ResourceType = &v return s } -type DeleteLoadBalancerTlsCertificateOutput struct { - _ struct{} `type:"structure"` - - // 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 `locationName:"operations" type:"list"` +// SetSizeInGb sets the SizeInGb field's value. +func (s *Disk) SetSizeInGb(v int64) *Disk { + s.SizeInGb = &v + return s } -// String returns the string representation -func (s DeleteLoadBalancerTlsCertificateOutput) String() string { - return awsutil.Prettify(s) +// SetState sets the State field's value. +func (s *Disk) SetState(v string) *Disk { + s.State = &v + return s } -// GoString returns the string representation -func (s DeleteLoadBalancerTlsCertificateOutput) GoString() string { - return s.String() +// SetSupportCode sets the SupportCode field's value. +func (s *Disk) SetSupportCode(v string) *Disk { + s.SupportCode = &v + return s } -// SetOperations sets the Operations field's value. -func (s *DeleteLoadBalancerTlsCertificateOutput) SetOperations(v []*Operation) *DeleteLoadBalancerTlsCertificateOutput { - s.Operations = v +// SetTags sets the Tags field's value. +func (s *Disk) SetTags(v []*Tag) *Disk { + s.Tags = v return s } -type DeleteRelationalDatabaseInput struct { +// Describes a disk. +type DiskInfo struct { _ struct{} `type:"structure"` - // 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. - FinalRelationalDatabaseSnapshotName *string `locationName:"finalRelationalDatabaseSnapshotName" type:"string"` + // A Boolean value indicating whether this disk is a system disk (has an operating + // system loaded on it). + IsSystemDisk *bool `locationName:"isSystemDisk" type:"boolean"` - // The name of the database that you are deleting. - // - // RelationalDatabaseName is a required field - RelationalDatabaseName *string `locationName:"relationalDatabaseName" type:"string" required:"true"` + // The disk name. + Name *string `locationName:"name" type:"string"` - // 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 - SkipFinalSnapshot *bool `locationName:"skipFinalSnapshot" type:"boolean"` + // The disk path. + Path *string `locationName:"path" type:"string"` + + // The size of the disk in GB (e.g., 32). + SizeInGb *int64 `locationName:"sizeInGb" type:"integer"` } // String returns the string representation -func (s DeleteRelationalDatabaseInput) String() string { +func (s DiskInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteRelationalDatabaseInput) GoString() string { +func (s DiskInfo) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteRelationalDatabaseInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteRelationalDatabaseInput"} - if s.RelationalDatabaseName == nil { - invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseName")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetIsSystemDisk sets the IsSystemDisk field's value. +func (s *DiskInfo) SetIsSystemDisk(v bool) *DiskInfo { + s.IsSystemDisk = &v + return s } -// SetFinalRelationalDatabaseSnapshotName sets the FinalRelationalDatabaseSnapshotName field's value. -func (s *DeleteRelationalDatabaseInput) SetFinalRelationalDatabaseSnapshotName(v string) *DeleteRelationalDatabaseInput { - s.FinalRelationalDatabaseSnapshotName = &v +// SetName sets the Name field's value. +func (s *DiskInfo) SetName(v string) *DiskInfo { + s.Name = &v return s } -// SetRelationalDatabaseName sets the RelationalDatabaseName field's value. -func (s *DeleteRelationalDatabaseInput) SetRelationalDatabaseName(v string) *DeleteRelationalDatabaseInput { - s.RelationalDatabaseName = &v +// SetPath sets the Path field's value. +func (s *DiskInfo) SetPath(v string) *DiskInfo { + s.Path = &v return s } -// SetSkipFinalSnapshot sets the SkipFinalSnapshot field's value. -func (s *DeleteRelationalDatabaseInput) SetSkipFinalSnapshot(v bool) *DeleteRelationalDatabaseInput { - s.SkipFinalSnapshot = &v +// SetSizeInGb sets the SizeInGb field's value. +func (s *DiskInfo) SetSizeInGb(v int64) *DiskInfo { + s.SizeInGb = &v return s } -type DeleteRelationalDatabaseOutput struct { +// Describes a block storage disk mapping. +type DiskMap struct { _ struct{} `type:"structure"` - // 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 `locationName:"operations" type:"list"` + // The new disk name (e.g., my-new-disk). + NewDiskName *string `locationName:"newDiskName" type:"string"` + + // The original disk path exposed to the instance (for example, /dev/sdh). + OriginalDiskPath *string `locationName:"originalDiskPath" type:"string"` } // String returns the string representation -func (s DeleteRelationalDatabaseOutput) String() string { +func (s DiskMap) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteRelationalDatabaseOutput) GoString() string { +func (s DiskMap) GoString() string { return s.String() } -// SetOperations sets the Operations field's value. -func (s *DeleteRelationalDatabaseOutput) SetOperations(v []*Operation) *DeleteRelationalDatabaseOutput { - s.Operations = v +// SetNewDiskName sets the NewDiskName field's value. +func (s *DiskMap) SetNewDiskName(v string) *DiskMap { + s.NewDiskName = &v return s } -type DeleteRelationalDatabaseSnapshotInput struct { +// SetOriginalDiskPath sets the OriginalDiskPath field's value. +func (s *DiskMap) SetOriginalDiskPath(v string) *DiskMap { + s.OriginalDiskPath = &v + return s +} + +// Describes a block storage disk snapshot. +type DiskSnapshot struct { _ struct{} `type:"structure"` - // The name of the database snapshot that you are deleting. - // - // RelationalDatabaseSnapshotName is a required field - RelationalDatabaseSnapshotName *string `locationName:"relationalDatabaseSnapshotName" type:"string" required:"true"` -} + // The Amazon Resource Name (ARN) of the disk snapshot. + Arn *string `locationName:"arn" type:"string"` -// String returns the string representation -func (s DeleteRelationalDatabaseSnapshotInput) String() string { - return awsutil.Prettify(s) -} + // The date when the disk snapshot was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` -// GoString returns the string representation -func (s DeleteRelationalDatabaseSnapshotInput) GoString() string { - return s.String() -} + // The Amazon Resource Name (ARN) of the source disk from which the disk snapshot + // was created. + FromDiskArn *string `locationName:"fromDiskArn" type:"string"` -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteRelationalDatabaseSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteRelationalDatabaseSnapshotInput"} - if s.RelationalDatabaseSnapshotName == nil { - invalidParams.Add(request.NewErrParamRequired("RelationalDatabaseSnapshotName")) - } + // The unique name of the source disk from which the disk snapshot was created. + FromDiskName *string `locationName:"fromDiskName" type:"string"` - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} + // The Amazon Resource Name (ARN) of the source instance from which the disk + // (system volume) snapshot was created. + FromInstanceArn *string `locationName:"fromInstanceArn" type:"string"` -// SetRelationalDatabaseSnapshotName sets the RelationalDatabaseSnapshotName field's value. -func (s *DeleteRelationalDatabaseSnapshotInput) SetRelationalDatabaseSnapshotName(v string) *DeleteRelationalDatabaseSnapshotInput { - s.RelationalDatabaseSnapshotName = &v - return s -} + // The unique name of the source instance from which the disk (system volume) + // snapshot was created. + FromInstanceName *string `locationName:"fromInstanceName" type:"string"` -type DeleteRelationalDatabaseSnapshotOutput struct { - _ struct{} `type:"structure"` + // A Boolean value indicating whether the snapshot was created from an automatic + // snapshot. + IsFromAutoSnapshot *bool `locationName:"isFromAutoSnapshot" type:"boolean"` - // 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 `locationName:"operations" type:"list"` + // The AWS Region and Availability Zone where the disk snapshot was created. + Location *ResourceLocation `locationName:"location" type:"structure"` + + // The name of the disk snapshot (e.g., my-disk-snapshot). + Name *string `locationName:"name" type:"string"` + + // The progress of the disk snapshot operation. + Progress *string `locationName:"progress" type:"string"` + + // The Lightsail resource type (e.g., DiskSnapshot). + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + + // The size of the disk in GB. + SizeInGb *int64 `locationName:"sizeInGb" type:"integer"` + + // The status of the disk snapshot operation. + State *string `locationName:"state" type:"string" enum:"DiskSnapshotState"` + + // 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 `locationName:"supportCode" type:"string"` + + // The tag keys and optional values for the resource. For more information about + // tags in Lightsail, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s DeleteRelationalDatabaseSnapshotOutput) String() string { +func (s DiskSnapshot) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteRelationalDatabaseSnapshotOutput) GoString() string { +func (s DiskSnapshot) GoString() string { return s.String() } -// SetOperations sets the Operations field's value. -func (s *DeleteRelationalDatabaseSnapshotOutput) SetOperations(v []*Operation) *DeleteRelationalDatabaseSnapshotOutput { - s.Operations = v +// SetArn sets the Arn field's value. +func (s *DiskSnapshot) SetArn(v string) *DiskSnapshot { + s.Arn = &v return s } -// Describes the destination of a record. -type DestinationInfo struct { - _ struct{} `type:"structure"` +// SetCreatedAt sets the CreatedAt field's value. +func (s *DiskSnapshot) SetCreatedAt(v time.Time) *DiskSnapshot { + s.CreatedAt = &v + return s +} - // The ID of the resource created at the destination. - Id *string `locationName:"id" type:"string"` +// SetFromDiskArn sets the FromDiskArn field's value. +func (s *DiskSnapshot) SetFromDiskArn(v string) *DiskSnapshot { + s.FromDiskArn = &v + return s +} - // The destination service of the record. - Service *string `locationName:"service" type:"string"` +// SetFromDiskName sets the FromDiskName field's value. +func (s *DiskSnapshot) SetFromDiskName(v string) *DiskSnapshot { + s.FromDiskName = &v + return s } -// String returns the string representation -func (s DestinationInfo) String() string { - return awsutil.Prettify(s) +// SetFromInstanceArn sets the FromInstanceArn field's value. +func (s *DiskSnapshot) SetFromInstanceArn(v string) *DiskSnapshot { + s.FromInstanceArn = &v + return s } -// GoString returns the string representation -func (s DestinationInfo) GoString() string { - return s.String() +// SetFromInstanceName sets the FromInstanceName field's value. +func (s *DiskSnapshot) SetFromInstanceName(v string) *DiskSnapshot { + s.FromInstanceName = &v + return s } -// SetId sets the Id field's value. -func (s *DestinationInfo) SetId(v string) *DestinationInfo { - s.Id = &v +// SetIsFromAutoSnapshot sets the IsFromAutoSnapshot field's value. +func (s *DiskSnapshot) SetIsFromAutoSnapshot(v bool) *DiskSnapshot { + s.IsFromAutoSnapshot = &v return s } -// SetService sets the Service field's value. -func (s *DestinationInfo) SetService(v string) *DestinationInfo { - s.Service = &v +// SetLocation sets the Location field's value. +func (s *DiskSnapshot) SetLocation(v *ResourceLocation) *DiskSnapshot { + s.Location = v return s } -type DetachDiskInput struct { - _ struct{} `type:"structure"` +// SetName sets the Name field's value. +func (s *DiskSnapshot) SetName(v string) *DiskSnapshot { + s.Name = &v + return s +} - // The unique name of the disk you want to detach from your instance (e.g., - // my-disk). - // - // DiskName is a required field - DiskName *string `locationName:"diskName" type:"string" required:"true"` +// SetProgress sets the Progress field's value. +func (s *DiskSnapshot) SetProgress(v string) *DiskSnapshot { + s.Progress = &v + return s } -// String returns the string representation -func (s DetachDiskInput) String() string { - return awsutil.Prettify(s) +// SetResourceType sets the ResourceType field's value. +func (s *DiskSnapshot) SetResourceType(v string) *DiskSnapshot { + s.ResourceType = &v + return s } -// GoString returns the string representation -func (s DetachDiskInput) GoString() string { - return s.String() +// SetSizeInGb sets the SizeInGb field's value. +func (s *DiskSnapshot) SetSizeInGb(v int64) *DiskSnapshot { + s.SizeInGb = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DetachDiskInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DetachDiskInput"} - if s.DiskName == nil { - invalidParams.Add(request.NewErrParamRequired("DiskName")) - } +// SetState sets the State field's value. +func (s *DiskSnapshot) SetState(v string) *DiskSnapshot { + s.State = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetSupportCode sets the SupportCode field's value. +func (s *DiskSnapshot) SetSupportCode(v string) *DiskSnapshot { + s.SupportCode = &v + return s } -// SetDiskName sets the DiskName field's value. -func (s *DetachDiskInput) SetDiskName(v string) *DetachDiskInput { - s.DiskName = &v +// SetTags sets the Tags field's value. +func (s *DiskSnapshot) SetTags(v []*Tag) *DiskSnapshot { + s.Tags = v return s } -type DetachDiskOutput struct { +// Describes a disk snapshot. +type DiskSnapshotInfo struct { _ struct{} `type:"structure"` - // 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 `locationName:"operations" type:"list"` + // The size of the disk in GB (e.g., 32). + SizeInGb *int64 `locationName:"sizeInGb" type:"integer"` } // String returns the string representation -func (s DetachDiskOutput) String() string { +func (s DiskSnapshotInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DetachDiskOutput) GoString() string { +func (s DiskSnapshotInfo) GoString() string { return s.String() } -// SetOperations sets the Operations field's value. -func (s *DetachDiskOutput) SetOperations(v []*Operation) *DetachDiskOutput { - s.Operations = v +// SetSizeInGb sets the SizeInGb field's value. +func (s *DiskSnapshotInfo) SetSizeInGb(v int64) *DiskSnapshotInfo { + s.SizeInGb = &v return s } -type DetachInstancesFromLoadBalancerInput struct { +// Describes the specifications of a distribution bundle. +type DistributionBundle struct { _ struct{} `type:"structure"` - // An array of strings containing the names of the instances you want to detach - // from the load balancer. - // - // InstanceNames is a required field - InstanceNames []*string `locationName:"instanceNames" type:"list" required:"true"` + // The ID of the bundle. + BundleId *string `locationName:"bundleId" type:"string"` - // The name of the Lightsail load balancer. - // - // LoadBalancerName is a required field - LoadBalancerName *string `locationName:"loadBalancerName" type:"string" required:"true"` + // Indicates whether the bundle is active, and can be specified for a new distribution. + IsActive *bool `locationName:"isActive" type:"boolean"` + + // The name of the distribution bundle. + Name *string `locationName:"name" type:"string"` + + // The monthly price, in US dollars, of the bundle. + Price *float64 `locationName:"price" type:"float"` + + // The monthly network transfer quota of the bundle. + TransferPerMonthInGb *int64 `locationName:"transferPerMonthInGb" type:"integer"` } // String returns the string representation -func (s DetachInstancesFromLoadBalancerInput) String() string { +func (s DistributionBundle) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DetachInstancesFromLoadBalancerInput) GoString() string { +func (s DistributionBundle) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DetachInstancesFromLoadBalancerInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DetachInstancesFromLoadBalancerInput"} - if s.InstanceNames == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceNames")) - } - if s.LoadBalancerName == nil { - invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) - } +// SetBundleId sets the BundleId field's value. +func (s *DistributionBundle) SetBundleId(v string) *DistributionBundle { + s.BundleId = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetIsActive sets the IsActive field's value. +func (s *DistributionBundle) SetIsActive(v bool) *DistributionBundle { + s.IsActive = &v + return s } -// SetInstanceNames sets the InstanceNames field's value. -func (s *DetachInstancesFromLoadBalancerInput) SetInstanceNames(v []*string) *DetachInstancesFromLoadBalancerInput { - s.InstanceNames = v +// SetName sets the Name field's value. +func (s *DistributionBundle) SetName(v string) *DistributionBundle { + s.Name = &v return s } -// SetLoadBalancerName sets the LoadBalancerName field's value. -func (s *DetachInstancesFromLoadBalancerInput) SetLoadBalancerName(v string) *DetachInstancesFromLoadBalancerInput { - s.LoadBalancerName = &v +// SetPrice sets the Price field's value. +func (s *DistributionBundle) SetPrice(v float64) *DistributionBundle { + s.Price = &v return s } -type DetachInstancesFromLoadBalancerOutput struct { +// SetTransferPerMonthInGb sets the TransferPerMonthInGb field's value. +func (s *DistributionBundle) SetTransferPerMonthInGb(v int64) *DistributionBundle { + s.TransferPerMonthInGb = &v + return s +} + +// Describes a domain where you are storing recordsets in Lightsail. +type Domain struct { _ struct{} `type:"structure"` - // 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 `locationName:"operations" type:"list"` -} + // The Amazon Resource Name (ARN) of the domain recordset (e.g., arn:aws:lightsail:global:123456789101:Domain/824cede0-abc7-4f84-8dbc-12345EXAMPLE). + Arn *string `locationName:"arn" type:"string"` -// String returns the string representation -func (s DetachInstancesFromLoadBalancerOutput) String() string { - return awsutil.Prettify(s) -} + // The date when the domain recordset was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` -// GoString returns the string representation -func (s DetachInstancesFromLoadBalancerOutput) GoString() string { - return s.String() -} + // An array of key-value pairs containing information about the domain entries. + DomainEntries []*DomainEntry `locationName:"domainEntries" type:"list"` -// SetOperations sets the Operations field's value. -func (s *DetachInstancesFromLoadBalancerOutput) SetOperations(v []*Operation) *DetachInstancesFromLoadBalancerOutput { - s.Operations = v - return s -} + // The AWS Region and Availability Zones where the domain recordset was created. + Location *ResourceLocation `locationName:"location" type:"structure"` -type DetachStaticIpInput struct { - _ struct{} `type:"structure"` + // The name of the domain. + Name *string `locationName:"name" type:"string"` - // The name of the static IP to detach from the instance. - // - // StaticIpName is a required field - StaticIpName *string `locationName:"staticIpName" type:"string" required:"true"` + // The resource type. + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + + // 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 `locationName:"supportCode" type:"string"` + + // The tag keys and optional values for the resource. For more information about + // tags in Lightsail, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation -func (s DetachStaticIpInput) String() string { +func (s Domain) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DetachStaticIpInput) GoString() string { +func (s Domain) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DetachStaticIpInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DetachStaticIpInput"} - if s.StaticIpName == nil { - invalidParams.Add(request.NewErrParamRequired("StaticIpName")) - } +// SetArn sets the Arn field's value. +func (s *Domain) SetArn(v string) *Domain { + s.Arn = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetCreatedAt sets the CreatedAt field's value. +func (s *Domain) SetCreatedAt(v time.Time) *Domain { + s.CreatedAt = &v + return s } -// SetStaticIpName sets the StaticIpName field's value. -func (s *DetachStaticIpInput) SetStaticIpName(v string) *DetachStaticIpInput { - s.StaticIpName = &v +// SetDomainEntries sets the DomainEntries field's value. +func (s *Domain) SetDomainEntries(v []*DomainEntry) *Domain { + s.DomainEntries = v return s } -type DetachStaticIpOutput struct { - _ struct{} `type:"structure"` +// SetLocation sets the Location field's value. +func (s *Domain) SetLocation(v *ResourceLocation) *Domain { + s.Location = v + return s +} - // 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 `locationName:"operations" type:"list"` +// SetName sets the Name field's value. +func (s *Domain) SetName(v string) *Domain { + s.Name = &v + return s } -// String returns the string representation -func (s DetachStaticIpOutput) String() string { - return awsutil.Prettify(s) +// SetResourceType sets the ResourceType field's value. +func (s *Domain) SetResourceType(v string) *Domain { + s.ResourceType = &v + return s } -// GoString returns the string representation -func (s DetachStaticIpOutput) GoString() string { - return s.String() +// SetSupportCode sets the SupportCode field's value. +func (s *Domain) SetSupportCode(v string) *Domain { + s.SupportCode = &v + return s } -// SetOperations sets the Operations field's value. -func (s *DetachStaticIpOutput) SetOperations(v []*Operation) *DetachStaticIpOutput { - s.Operations = v +// SetTags sets the Tags field's value. +func (s *Domain) SetTags(v []*Tag) *Domain { + s.Tags = v return s } -type DisableAddOnInput struct { +// Describes a domain recordset entry. +type DomainEntry struct { _ struct{} `type:"structure"` - // The add-on type to disable. + // The ID of the domain recordset entry. + Id *string `locationName:"id" type:"string"` + + // 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 + IsAlias *bool `locationName:"isAlias" type:"boolean"` + + // The name of the domain. + Name *string `locationName:"name" type:"string"` + + // (Deprecated) The options for the domain entry. // - // AddOnType is a required field - AddOnType *string `locationName:"addOnType" type:"string" required:"true" enum:"AddOnType"` + // In releases prior to November 29, 2017, this parameter was not included in + // the API response. It is now deprecated. + // + // Deprecated: Options has been deprecated + Options map[string]*string `locationName:"options" deprecated:"true" type:"map"` - // The name of the source resource for which to disable the add-on. + // The target AWS name server (e.g., ns-111.awsdns-22.com.). // - // ResourceName is a required field - ResourceName *string `locationName:"resourceName" type:"string" required:"true"` + // 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. + Target *string `locationName:"target" type:"string"` + + // 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 + Type *string `locationName:"type" type:"string"` } // String returns the string representation -func (s DisableAddOnInput) String() string { +func (s DomainEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DisableAddOnInput) GoString() string { +func (s DomainEntry) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DisableAddOnInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DisableAddOnInput"} - if s.AddOnType == nil { - invalidParams.Add(request.NewErrParamRequired("AddOnType")) - } - if s.ResourceName == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceName")) - } +// SetId sets the Id field's value. +func (s *DomainEntry) SetId(v string) *DomainEntry { + s.Id = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetIsAlias sets the IsAlias field's value. +func (s *DomainEntry) SetIsAlias(v bool) *DomainEntry { + s.IsAlias = &v + return s +} + +// SetName sets the Name field's value. +func (s *DomainEntry) SetName(v string) *DomainEntry { + s.Name = &v + return s +} + +// SetOptions sets the Options field's value. +func (s *DomainEntry) SetOptions(v map[string]*string) *DomainEntry { + s.Options = v + return s } -// SetAddOnType sets the AddOnType field's value. -func (s *DisableAddOnInput) SetAddOnType(v string) *DisableAddOnInput { - s.AddOnType = &v +// SetTarget sets the Target field's value. +func (s *DomainEntry) SetTarget(v string) *DomainEntry { + s.Target = &v return s } -// SetResourceName sets the ResourceName field's value. -func (s *DisableAddOnInput) SetResourceName(v string) *DisableAddOnInput { - s.ResourceName = &v +// SetType sets the Type field's value. +func (s *DomainEntry) SetType(v string) *DomainEntry { + s.Type = &v return s } -type DisableAddOnOutput struct { +// Describes the domain validation records of an Amazon Lightsail SSL/TLS certificate. +type DomainValidationRecord struct { _ struct{} `type:"structure"` - // 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 `locationName:"operations" type:"list"` + // The domain name of the certificate validation record. For example, example.com + // or www.example.com. + DomainName *string `locationName:"domainName" type:"string"` + + // An object that describes the DNS records to add to your domain's DNS to validate + // it for the certificate. + ResourceRecord *ResourceRecord `locationName:"resourceRecord" type:"structure"` } // String returns the string representation -func (s DisableAddOnOutput) String() string { +func (s DomainValidationRecord) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DisableAddOnOutput) GoString() string { +func (s DomainValidationRecord) GoString() string { return s.String() } -// SetOperations sets the Operations field's value. -func (s *DisableAddOnOutput) SetOperations(v []*Operation) *DisableAddOnOutput { - s.Operations = v +// SetDomainName sets the DomainName field's value. +func (s *DomainValidationRecord) SetDomainName(v string) *DomainValidationRecord { + s.DomainName = &v return s } -// Describes a system disk or a block storage disk. -type Disk struct { - _ struct{} `type:"structure"` - - // An array of objects representing the add-ons enabled on the disk. - AddOns []*AddOn `locationName:"addOns" type:"list"` - - // The Amazon Resource Name (ARN) of the disk. - Arn *string `locationName:"arn" type:"string"` - - // The resources to which the disk is attached. - AttachedTo *string `locationName:"attachedTo" type:"string"` - - // (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. - // - // Deprecated: AttachmentState has been deprecated - AttachmentState *string `locationName:"attachmentState" deprecated:"true" type:"string"` - - // The date when the disk was created. - CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` - - // (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. - // - // Deprecated: GbInUse has been deprecated - GbInUse *int64 `locationName:"gbInUse" deprecated:"true" type:"integer"` - - // The input/output operations per second (IOPS) of the disk. - Iops *int64 `locationName:"iops" type:"integer"` - - // A Boolean value indicating whether the disk is attached. - IsAttached *bool `locationName:"isAttached" type:"boolean"` - - // A Boolean value indicating whether this disk is a system disk (has an operating - // system loaded on it). - IsSystemDisk *bool `locationName:"isSystemDisk" type:"boolean"` - - // The AWS Region and Availability Zone where the disk is located. - Location *ResourceLocation `locationName:"location" type:"structure"` - - // The unique name of the disk. - Name *string `locationName:"name" type:"string"` +// SetResourceRecord sets the ResourceRecord field's value. +func (s *DomainValidationRecord) SetResourceRecord(v *ResourceRecord) *DomainValidationRecord { + s.ResourceRecord = v + return s +} - // The disk path. - Path *string `locationName:"path" type:"string"` +type DownloadDefaultKeyPairInput struct { + _ struct{} `type:"structure"` +} - // The Lightsail resource type (e.g., Disk). - ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` +// String returns the string representation +func (s DownloadDefaultKeyPairInput) String() string { + return awsutil.Prettify(s) +} - // The size of the disk in GB. - SizeInGb *int64 `locationName:"sizeInGb" type:"integer"` +// GoString returns the string representation +func (s DownloadDefaultKeyPairInput) GoString() string { + return s.String() +} - // Describes the status of the disk. - State *string `locationName:"state" type:"string" enum:"DiskState"` +type DownloadDefaultKeyPairOutput struct { + _ struct{} `type:"structure"` - // 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 `locationName:"supportCode" type:"string"` + // A base64-encoded RSA private key. + PrivateKeyBase64 *string `locationName:"privateKeyBase64" type:"string"` - // The tag keys and optional values for the resource. For more information about - // tags in Lightsail, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). - Tags []*Tag `locationName:"tags" type:"list"` + // A base64-encoded public key of the ssh-rsa type. + PublicKeyBase64 *string `locationName:"publicKeyBase64" type:"string"` } // String returns the string representation -func (s Disk) String() string { +func (s DownloadDefaultKeyPairOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Disk) GoString() string { +func (s DownloadDefaultKeyPairOutput) GoString() string { return s.String() } -// SetAddOns sets the AddOns field's value. -func (s *Disk) SetAddOns(v []*AddOn) *Disk { - s.AddOns = v - return s -} - -// SetArn sets the Arn field's value. -func (s *Disk) SetArn(v string) *Disk { - s.Arn = &v +// SetPrivateKeyBase64 sets the PrivateKeyBase64 field's value. +func (s *DownloadDefaultKeyPairOutput) SetPrivateKeyBase64(v string) *DownloadDefaultKeyPairOutput { + s.PrivateKeyBase64 = &v return s } -// SetAttachedTo sets the AttachedTo field's value. -func (s *Disk) SetAttachedTo(v string) *Disk { - s.AttachedTo = &v +// SetPublicKeyBase64 sets the PublicKeyBase64 field's value. +func (s *DownloadDefaultKeyPairOutput) SetPublicKeyBase64(v string) *DownloadDefaultKeyPairOutput { + s.PublicKeyBase64 = &v return s } -// SetAttachmentState sets the AttachmentState field's value. -func (s *Disk) SetAttachmentState(v string) *Disk { - s.AttachmentState = &v - return s -} +type EnableAddOnInput struct { + _ struct{} `type:"structure"` -// SetCreatedAt sets the CreatedAt field's value. -func (s *Disk) SetCreatedAt(v time.Time) *Disk { - s.CreatedAt = &v - return s -} + // An array of strings representing the add-on to enable or modify. + // + // AddOnRequest is a required field + AddOnRequest *AddOnRequest `locationName:"addOnRequest" type:"structure" required:"true"` -// SetGbInUse sets the GbInUse field's value. -func (s *Disk) SetGbInUse(v int64) *Disk { - s.GbInUse = &v - return s + // The name of the source resource for which to enable or modify the add-on. + // + // ResourceName is a required field + ResourceName *string `locationName:"resourceName" type:"string" required:"true"` } -// SetIops sets the Iops field's value. -func (s *Disk) SetIops(v int64) *Disk { - s.Iops = &v - return s +// String returns the string representation +func (s EnableAddOnInput) String() string { + return awsutil.Prettify(s) } -// SetIsAttached sets the IsAttached field's value. -func (s *Disk) SetIsAttached(v bool) *Disk { - s.IsAttached = &v - return s +// GoString returns the string representation +func (s EnableAddOnInput) GoString() string { + return s.String() } -// SetIsSystemDisk sets the IsSystemDisk field's value. -func (s *Disk) SetIsSystemDisk(v bool) *Disk { - s.IsSystemDisk = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *EnableAddOnInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EnableAddOnInput"} + if s.AddOnRequest == nil { + invalidParams.Add(request.NewErrParamRequired("AddOnRequest")) + } + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) + } + if s.AddOnRequest != nil { + if err := s.AddOnRequest.Validate(); err != nil { + invalidParams.AddNested("AddOnRequest", err.(request.ErrInvalidParams)) + } + } -// SetLocation sets the Location field's value. -func (s *Disk) SetLocation(v *ResourceLocation) *Disk { - s.Location = v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetName sets the Name field's value. -func (s *Disk) SetName(v string) *Disk { - s.Name = &v +// SetAddOnRequest sets the AddOnRequest field's value. +func (s *EnableAddOnInput) SetAddOnRequest(v *AddOnRequest) *EnableAddOnInput { + s.AddOnRequest = v return s } -// SetPath sets the Path field's value. -func (s *Disk) SetPath(v string) *Disk { - s.Path = &v +// SetResourceName sets the ResourceName field's value. +func (s *EnableAddOnInput) SetResourceName(v string) *EnableAddOnInput { + s.ResourceName = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *Disk) SetResourceType(v string) *Disk { - s.ResourceType = &v - return s -} +type EnableAddOnOutput struct { + _ struct{} `type:"structure"` -// SetSizeInGb sets the SizeInGb field's value. -func (s *Disk) SetSizeInGb(v int64) *Disk { - s.SizeInGb = &v - return s + // 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 `locationName:"operations" type:"list"` } -// SetState sets the State field's value. -func (s *Disk) SetState(v string) *Disk { - s.State = &v - return s +// String returns the string representation +func (s EnableAddOnOutput) String() string { + return awsutil.Prettify(s) } -// SetSupportCode sets the SupportCode field's value. -func (s *Disk) SetSupportCode(v string) *Disk { - s.SupportCode = &v - return s +// GoString returns the string representation +func (s EnableAddOnOutput) GoString() string { + return s.String() } -// SetTags sets the Tags field's value. -func (s *Disk) SetTags(v []*Tag) *Disk { - s.Tags = v +// SetOperations sets the Operations field's value. +func (s *EnableAddOnOutput) SetOperations(v []*Operation) *EnableAddOnOutput { + s.Operations = v return s -} - -// Describes a disk. -type DiskInfo struct { - _ struct{} `type:"structure"` - - // A Boolean value indicating whether this disk is a system disk (has an operating - // system loaded on it). - IsSystemDisk *bool `locationName:"isSystemDisk" type:"boolean"` - - // The disk name. - Name *string `locationName:"name" type:"string"` +} - // The disk path. - Path *string `locationName:"path" type:"string"` +type ExportSnapshotInput struct { + _ struct{} `type:"structure"` - // The size of the disk in GB (e.g., 32). - SizeInGb *int64 `locationName:"sizeInGb" type:"integer"` + // The name of the instance or disk snapshot to be exported to Amazon EC2. + // + // SourceSnapshotName is a required field + SourceSnapshotName *string `locationName:"sourceSnapshotName" type:"string" required:"true"` } // String returns the string representation -func (s DiskInfo) String() string { +func (s ExportSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DiskInfo) GoString() string { +func (s ExportSnapshotInput) GoString() string { return s.String() } -// SetIsSystemDisk sets the IsSystemDisk field's value. -func (s *DiskInfo) SetIsSystemDisk(v bool) *DiskInfo { - s.IsSystemDisk = &v - return s -} - -// SetName sets the Name field's value. -func (s *DiskInfo) SetName(v string) *DiskInfo { - s.Name = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExportSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExportSnapshotInput"} + if s.SourceSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("SourceSnapshotName")) + } -// SetPath sets the Path field's value. -func (s *DiskInfo) SetPath(v string) *DiskInfo { - s.Path = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetSizeInGb sets the SizeInGb field's value. -func (s *DiskInfo) SetSizeInGb(v int64) *DiskInfo { - s.SizeInGb = &v +// SetSourceSnapshotName sets the SourceSnapshotName field's value. +func (s *ExportSnapshotInput) SetSourceSnapshotName(v string) *ExportSnapshotInput { + s.SourceSnapshotName = &v return s } -// Describes a block storage disk mapping. -type DiskMap struct { +type ExportSnapshotOutput struct { _ struct{} `type:"structure"` - // The new disk name (e.g., my-new-disk). - NewDiskName *string `locationName:"newDiskName" type:"string"` - - // The original disk path exposed to the instance (for example, /dev/sdh). - OriginalDiskPath *string `locationName:"originalDiskPath" type:"string"` + // 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 `locationName:"operations" type:"list"` } // String returns the string representation -func (s DiskMap) String() string { +func (s ExportSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DiskMap) GoString() string { +func (s ExportSnapshotOutput) GoString() string { return s.String() } -// SetNewDiskName sets the NewDiskName field's value. -func (s *DiskMap) SetNewDiskName(v string) *DiskMap { - s.NewDiskName = &v - return s -} - -// SetOriginalDiskPath sets the OriginalDiskPath field's value. -func (s *DiskMap) SetOriginalDiskPath(v string) *DiskMap { - s.OriginalDiskPath = &v +// SetOperations sets the Operations field's value. +func (s *ExportSnapshotOutput) SetOperations(v []*Operation) *ExportSnapshotOutput { + s.Operations = v return s } -// Describes a block storage disk snapshot. -type DiskSnapshot struct { +// Describes an export snapshot record. +type ExportSnapshotRecord struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the disk snapshot. + // The Amazon Resource Name (ARN) of the export snapshot record. Arn *string `locationName:"arn" type:"string"` - // The date when the disk snapshot was created. + // The date when the export snapshot record was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` - // The Amazon Resource Name (ARN) of the source disk from which the disk snapshot - // was created. - FromDiskArn *string `locationName:"fromDiskArn" type:"string"` - - // The unique name of the source disk from which the disk snapshot was created. - FromDiskName *string `locationName:"fromDiskName" type:"string"` - - // The Amazon Resource Name (ARN) of the source instance from which the disk - // (system volume) snapshot was created. - FromInstanceArn *string `locationName:"fromInstanceArn" type:"string"` - - // The unique name of the source instance from which the disk (system volume) - // snapshot was created. - FromInstanceName *string `locationName:"fromInstanceName" type:"string"` - - // A Boolean value indicating whether the snapshot was created from an automatic - // snapshot. - IsFromAutoSnapshot *bool `locationName:"isFromAutoSnapshot" type:"boolean"` + // A list of objects describing the destination of the export snapshot record. + DestinationInfo *DestinationInfo `locationName:"destinationInfo" type:"structure"` - // The AWS Region and Availability Zone where the disk snapshot was created. + // The AWS Region and Availability Zone where the export snapshot record is + // located. Location *ResourceLocation `locationName:"location" type:"structure"` - // The name of the disk snapshot (e.g., my-disk-snapshot). + // The export snapshot record name. Name *string `locationName:"name" type:"string"` - // The progress of the disk snapshot operation. - Progress *string `locationName:"progress" type:"string"` - - // The Lightsail resource type (e.g., DiskSnapshot). + // The Lightsail resource type (e.g., ExportSnapshotRecord). ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` - // The size of the disk in GB. - SizeInGb *int64 `locationName:"sizeInGb" type:"integer"` - - // The status of the disk snapshot operation. - State *string `locationName:"state" type:"string" enum:"DiskSnapshotState"` - - // 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 `locationName:"supportCode" type:"string"` + // A list of objects describing the source of the export snapshot record. + SourceInfo *ExportSnapshotRecordSourceInfo `locationName:"sourceInfo" type:"structure"` - // The tag keys and optional values for the resource. For more information about - // tags in Lightsail, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). - Tags []*Tag `locationName:"tags" type:"list"` + // The state of the export snapshot record. + State *string `locationName:"state" type:"string" enum:"RecordState"` } // String returns the string representation -func (s DiskSnapshot) String() string { +func (s ExportSnapshotRecord) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DiskSnapshot) GoString() string { +func (s ExportSnapshotRecord) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *DiskSnapshot) SetArn(v string) *DiskSnapshot { +func (s *ExportSnapshotRecord) SetArn(v string) *ExportSnapshotRecord { s.Arn = &v return s } // SetCreatedAt sets the CreatedAt field's value. -func (s *DiskSnapshot) SetCreatedAt(v time.Time) *DiskSnapshot { +func (s *ExportSnapshotRecord) SetCreatedAt(v time.Time) *ExportSnapshotRecord { s.CreatedAt = &v return s } -// SetFromDiskArn sets the FromDiskArn field's value. -func (s *DiskSnapshot) SetFromDiskArn(v string) *DiskSnapshot { - s.FromDiskArn = &v - return s -} - -// SetFromDiskName sets the FromDiskName field's value. -func (s *DiskSnapshot) SetFromDiskName(v string) *DiskSnapshot { - s.FromDiskName = &v - return s -} - -// SetFromInstanceArn sets the FromInstanceArn field's value. -func (s *DiskSnapshot) SetFromInstanceArn(v string) *DiskSnapshot { - s.FromInstanceArn = &v - return s -} - -// SetFromInstanceName sets the FromInstanceName field's value. -func (s *DiskSnapshot) SetFromInstanceName(v string) *DiskSnapshot { - s.FromInstanceName = &v - return s -} - -// SetIsFromAutoSnapshot sets the IsFromAutoSnapshot field's value. -func (s *DiskSnapshot) SetIsFromAutoSnapshot(v bool) *DiskSnapshot { - s.IsFromAutoSnapshot = &v +// SetDestinationInfo sets the DestinationInfo field's value. +func (s *ExportSnapshotRecord) SetDestinationInfo(v *DestinationInfo) *ExportSnapshotRecord { + s.DestinationInfo = v return s } // SetLocation sets the Location field's value. -func (s *DiskSnapshot) SetLocation(v *ResourceLocation) *DiskSnapshot { +func (s *ExportSnapshotRecord) SetLocation(v *ResourceLocation) *ExportSnapshotRecord { s.Location = v return s } // SetName sets the Name field's value. -func (s *DiskSnapshot) SetName(v string) *DiskSnapshot { +func (s *ExportSnapshotRecord) SetName(v string) *ExportSnapshotRecord { s.Name = &v return s } -// SetProgress sets the Progress field's value. -func (s *DiskSnapshot) SetProgress(v string) *DiskSnapshot { - s.Progress = &v - return s -} - // SetResourceType sets the ResourceType field's value. -func (s *DiskSnapshot) SetResourceType(v string) *DiskSnapshot { +func (s *ExportSnapshotRecord) SetResourceType(v string) *ExportSnapshotRecord { s.ResourceType = &v return s } -// SetSizeInGb sets the SizeInGb field's value. -func (s *DiskSnapshot) SetSizeInGb(v int64) *DiskSnapshot { - s.SizeInGb = &v +// SetSourceInfo sets the SourceInfo field's value. +func (s *ExportSnapshotRecord) SetSourceInfo(v *ExportSnapshotRecordSourceInfo) *ExportSnapshotRecord { + s.SourceInfo = v return s } // SetState sets the State field's value. -func (s *DiskSnapshot) SetState(v string) *DiskSnapshot { +func (s *ExportSnapshotRecord) SetState(v string) *ExportSnapshotRecord { s.State = &v return s } -// SetSupportCode sets the SupportCode field's value. -func (s *DiskSnapshot) SetSupportCode(v string) *DiskSnapshot { - s.SupportCode = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *DiskSnapshot) SetTags(v []*Tag) *DiskSnapshot { - s.Tags = v - return s -} - -// Describes a disk snapshot. -type DiskSnapshotInfo struct { - _ struct{} `type:"structure"` - - // The size of the disk in GB (e.g., 32). - SizeInGb *int64 `locationName:"sizeInGb" type:"integer"` -} - -// String returns the string representation -func (s DiskSnapshotInfo) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s DiskSnapshotInfo) GoString() string { - return s.String() -} - -// SetSizeInGb sets the SizeInGb field's value. -func (s *DiskSnapshotInfo) SetSizeInGb(v int64) *DiskSnapshotInfo { - s.SizeInGb = &v - return s -} - -// Describes a domain where you are storing recordsets in Lightsail. -type Domain struct { +// Describes the source of an export snapshot record. +type ExportSnapshotRecordSourceInfo struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the domain recordset (e.g., arn:aws:lightsail:global:123456789101:Domain/824cede0-abc7-4f84-8dbc-12345EXAMPLE). + // The Amazon Resource Name (ARN) of the source instance or disk snapshot. Arn *string `locationName:"arn" type:"string"` - // The date when the domain recordset was created. + // The date when the source instance or disk snapshot was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` - // An array of key-value pairs containing information about the domain entries. - DomainEntries []*DomainEntry `locationName:"domainEntries" type:"list"` - - // The AWS Region and Availability Zones where the domain recordset was created. - Location *ResourceLocation `locationName:"location" type:"structure"` + // A list of objects describing a disk snapshot. + DiskSnapshotInfo *DiskSnapshotInfo `locationName:"diskSnapshotInfo" type:"structure"` - // The name of the domain. - Name *string `locationName:"name" type:"string"` + // The Amazon Resource Name (ARN) of the snapshot's source instance or disk. + FromResourceArn *string `locationName:"fromResourceArn" type:"string"` - // The resource type. - ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + // The name of the snapshot's source instance or disk. + FromResourceName *string `locationName:"fromResourceName" type:"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. - SupportCode *string `locationName:"supportCode" type:"string"` + // A list of objects describing an instance snapshot. + InstanceSnapshotInfo *InstanceSnapshotInfo `locationName:"instanceSnapshotInfo" type:"structure"` - // The tag keys and optional values for the resource. For more information about - // tags in Lightsail, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). - Tags []*Tag `locationName:"tags" type:"list"` + // The name of the source instance or disk snapshot. + Name *string `locationName:"name" type:"string"` + + // The Lightsail resource type (e.g., InstanceSnapshot or DiskSnapshot). + ResourceType *string `locationName:"resourceType" type:"string" enum:"ExportSnapshotRecordSourceType"` } // String returns the string representation -func (s Domain) String() string { +func (s ExportSnapshotRecordSourceInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Domain) GoString() string { +func (s ExportSnapshotRecordSourceInfo) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *Domain) SetArn(v string) *Domain { +func (s *ExportSnapshotRecordSourceInfo) SetArn(v string) *ExportSnapshotRecordSourceInfo { s.Arn = &v return s } // SetCreatedAt sets the CreatedAt field's value. -func (s *Domain) SetCreatedAt(v time.Time) *Domain { +func (s *ExportSnapshotRecordSourceInfo) SetCreatedAt(v time.Time) *ExportSnapshotRecordSourceInfo { s.CreatedAt = &v return s } -// SetDomainEntries sets the DomainEntries field's value. -func (s *Domain) SetDomainEntries(v []*DomainEntry) *Domain { - s.DomainEntries = v +// SetDiskSnapshotInfo sets the DiskSnapshotInfo field's value. +func (s *ExportSnapshotRecordSourceInfo) SetDiskSnapshotInfo(v *DiskSnapshotInfo) *ExportSnapshotRecordSourceInfo { + s.DiskSnapshotInfo = v return s } -// SetLocation sets the Location field's value. -func (s *Domain) SetLocation(v *ResourceLocation) *Domain { - s.Location = v +// SetFromResourceArn sets the FromResourceArn field's value. +func (s *ExportSnapshotRecordSourceInfo) SetFromResourceArn(v string) *ExportSnapshotRecordSourceInfo { + s.FromResourceArn = &v return s } -// SetName sets the Name field's value. -func (s *Domain) SetName(v string) *Domain { - s.Name = &v +// SetFromResourceName sets the FromResourceName field's value. +func (s *ExportSnapshotRecordSourceInfo) SetFromResourceName(v string) *ExportSnapshotRecordSourceInfo { + s.FromResourceName = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *Domain) SetResourceType(v string) *Domain { - s.ResourceType = &v +// SetInstanceSnapshotInfo sets the InstanceSnapshotInfo field's value. +func (s *ExportSnapshotRecordSourceInfo) SetInstanceSnapshotInfo(v *InstanceSnapshotInfo) *ExportSnapshotRecordSourceInfo { + s.InstanceSnapshotInfo = v return s } -// SetSupportCode sets the SupportCode field's value. -func (s *Domain) SetSupportCode(v string) *Domain { - s.SupportCode = &v +// SetName sets the Name field's value. +func (s *ExportSnapshotRecordSourceInfo) SetName(v string) *ExportSnapshotRecordSourceInfo { + s.Name = &v return s } -// SetTags sets the Tags field's value. -func (s *Domain) SetTags(v []*Tag) *Domain { - s.Tags = v +// SetResourceType sets the ResourceType field's value. +func (s *ExportSnapshotRecordSourceInfo) SetResourceType(v string) *ExportSnapshotRecordSourceInfo { + s.ResourceType = &v return s } -// Describes a domain recordset entry. -type DomainEntry struct { +type GetActiveNamesInput struct { _ struct{} `type:"structure"` - // The ID of the domain recordset entry. - Id *string `locationName:"id" type:"string"` - - // 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 - IsAlias *bool `locationName:"isAlias" type:"boolean"` - - // The name of the domain. - Name *string `locationName:"name" type:"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. - // - // Deprecated: Options has been deprecated - Options map[string]*string `locationName:"options" deprecated:"true" type:"map"` - - // 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. - Target *string `locationName:"target" type:"string"` - - // 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 + // The token to advance to the next page of results from your request. // - // * TXT - Type *string `locationName:"type" type:"string"` + // To get a page token, perform an initial 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. + PageToken *string `locationName:"pageToken" type:"string"` } // String returns the string representation -func (s DomainEntry) String() string { +func (s GetActiveNamesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DomainEntry) GoString() string { +func (s GetActiveNamesInput) GoString() string { return s.String() } -// SetId sets the Id field's value. -func (s *DomainEntry) SetId(v string) *DomainEntry { - s.Id = &v +// SetPageToken sets the PageToken field's value. +func (s *GetActiveNamesInput) SetPageToken(v string) *GetActiveNamesInput { + s.PageToken = &v return s } -// SetIsAlias sets the IsAlias field's value. -func (s *DomainEntry) SetIsAlias(v bool) *DomainEntry { - s.IsAlias = &v - return s +type GetActiveNamesOutput struct { + _ struct{} `type:"structure"` + + // The list of active names returned by the get active names request. + ActiveNames []*string `locationName:"activeNames" type:"list"` + + // 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 GetActiveNames request and + // specify the next page token using the pageToken parameter. + NextPageToken *string `locationName:"nextPageToken" type:"string"` } -// SetName sets the Name field's value. -func (s *DomainEntry) SetName(v string) *DomainEntry { - s.Name = &v - return s +// String returns the string representation +func (s GetActiveNamesOutput) String() string { + return awsutil.Prettify(s) } -// SetOptions sets the Options field's value. -func (s *DomainEntry) SetOptions(v map[string]*string) *DomainEntry { - s.Options = v - return s +// GoString returns the string representation +func (s GetActiveNamesOutput) GoString() string { + return s.String() } -// SetTarget sets the Target field's value. -func (s *DomainEntry) SetTarget(v string) *DomainEntry { - s.Target = &v +// SetActiveNames sets the ActiveNames field's value. +func (s *GetActiveNamesOutput) SetActiveNames(v []*string) *GetActiveNamesOutput { + s.ActiveNames = v return s } -// SetType sets the Type field's value. -func (s *DomainEntry) SetType(v string) *DomainEntry { - s.Type = &v +// SetNextPageToken sets the NextPageToken field's value. +func (s *GetActiveNamesOutput) SetNextPageToken(v string) *GetActiveNamesOutput { + s.NextPageToken = &v return s } -type DownloadDefaultKeyPairInput struct { +type GetAlarmsInput struct { _ struct{} `type:"structure"` + + // The name of the alarm. + // + // Specify an alarm name to return information about a specific alarm. + AlarmName *string `locationName:"alarmName" type:"string"` + + // The name of the Lightsail resource being monitored by the alarm. + // + // Specify a monitored resource name to return information about all alarms + // for a specific resource. + MonitoredResourceName *string `locationName:"monitoredResourceName" type:"string"` + + // 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. + PageToken *string `locationName:"pageToken" type:"string"` } // String returns the string representation -func (s DownloadDefaultKeyPairInput) String() string { +func (s GetAlarmsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DownloadDefaultKeyPairInput) GoString() string { +func (s GetAlarmsInput) GoString() string { return s.String() } -type DownloadDefaultKeyPairOutput struct { +// SetAlarmName sets the AlarmName field's value. +func (s *GetAlarmsInput) SetAlarmName(v string) *GetAlarmsInput { + s.AlarmName = &v + return s +} + +// SetMonitoredResourceName sets the MonitoredResourceName field's value. +func (s *GetAlarmsInput) SetMonitoredResourceName(v string) *GetAlarmsInput { + s.MonitoredResourceName = &v + return s +} + +// SetPageToken sets the PageToken field's value. +func (s *GetAlarmsInput) SetPageToken(v string) *GetAlarmsInput { + s.PageToken = &v + return s +} + +type GetAlarmsOutput struct { _ struct{} `type:"structure"` - // A base64-encoded RSA private key. - PrivateKeyBase64 *string `locationName:"privateKeyBase64" type:"string"` + // An array of objects that describe the alarms. + Alarms []*Alarm `locationName:"alarms" type:"list"` - // A base64-encoded public key of the ssh-rsa type. - PublicKeyBase64 *string `locationName:"publicKeyBase64" type:"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 GetAlarms request and specify + // the next page token using the pageToken parameter. + NextPageToken *string `locationName:"nextPageToken" type:"string"` } // String returns the string representation -func (s DownloadDefaultKeyPairOutput) String() string { +func (s GetAlarmsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DownloadDefaultKeyPairOutput) GoString() string { +func (s GetAlarmsOutput) GoString() string { return s.String() } -// SetPrivateKeyBase64 sets the PrivateKeyBase64 field's value. -func (s *DownloadDefaultKeyPairOutput) SetPrivateKeyBase64(v string) *DownloadDefaultKeyPairOutput { - s.PrivateKeyBase64 = &v +// SetAlarms sets the Alarms field's value. +func (s *GetAlarmsOutput) SetAlarms(v []*Alarm) *GetAlarmsOutput { + s.Alarms = v return s } -// SetPublicKeyBase64 sets the PublicKeyBase64 field's value. -func (s *DownloadDefaultKeyPairOutput) SetPublicKeyBase64(v string) *DownloadDefaultKeyPairOutput { - s.PublicKeyBase64 = &v +// SetNextPageToken sets the NextPageToken field's value. +func (s *GetAlarmsOutput) SetNextPageToken(v string) *GetAlarmsOutput { + s.NextPageToken = &v return s } -type EnableAddOnInput struct { +type GetAutoSnapshotsInput struct { _ struct{} `type:"structure"` - // An array of strings representing the add-on to enable or modify. - // - // AddOnRequest is a required field - AddOnRequest *AddOnRequest `locationName:"addOnRequest" type:"structure" required:"true"` - - // The name of the source resource for which to enable or modify the add-on. + // The name of the source instance or disk from which to get automatic snapshot + // information. // // ResourceName is a required field ResourceName *string `locationName:"resourceName" type:"string" required:"true"` } // String returns the string representation -func (s EnableAddOnInput) String() string { +func (s GetAutoSnapshotsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s EnableAddOnInput) GoString() string { +func (s GetAutoSnapshotsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *EnableAddOnInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "EnableAddOnInput"} - if s.AddOnRequest == nil { - invalidParams.Add(request.NewErrParamRequired("AddOnRequest")) - } - if s.ResourceName == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceName")) - } - if s.AddOnRequest != nil { - if err := s.AddOnRequest.Validate(); err != nil { - invalidParams.AddNested("AddOnRequest", err.(request.ErrInvalidParams)) - } +func (s *GetAutoSnapshotsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAutoSnapshotsInput"} + if s.ResourceName == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if invalidParams.Len() > 0 { @@ -18246,457 +21394,416 @@ func (s *EnableAddOnInput) Validate() error { return nil } -// SetAddOnRequest sets the AddOnRequest field's value. -func (s *EnableAddOnInput) SetAddOnRequest(v *AddOnRequest) *EnableAddOnInput { - s.AddOnRequest = v - return s -} - // SetResourceName sets the ResourceName field's value. -func (s *EnableAddOnInput) SetResourceName(v string) *EnableAddOnInput { +func (s *GetAutoSnapshotsInput) SetResourceName(v string) *GetAutoSnapshotsInput { s.ResourceName = &v return s } -type EnableAddOnOutput struct { +type GetAutoSnapshotsOutput struct { _ struct{} `type:"structure"` - // 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 `locationName:"operations" type:"list"` + // An array of objects that describe the automatic snapshots that are available + // for the specified source instance or disk. + AutoSnapshots []*AutoSnapshotDetails `locationName:"autoSnapshots" type:"list"` + + // The name of the source instance or disk for the automatic snapshots. + ResourceName *string `locationName:"resourceName" type:"string"` + + // The resource type (e.g., Instance or Disk). + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` } // String returns the string representation -func (s EnableAddOnOutput) String() string { +func (s GetAutoSnapshotsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s EnableAddOnOutput) GoString() string { +func (s GetAutoSnapshotsOutput) GoString() string { return s.String() } -// SetOperations sets the Operations field's value. -func (s *EnableAddOnOutput) SetOperations(v []*Operation) *EnableAddOnOutput { - s.Operations = v +// SetAutoSnapshots sets the AutoSnapshots field's value. +func (s *GetAutoSnapshotsOutput) SetAutoSnapshots(v []*AutoSnapshotDetails) *GetAutoSnapshotsOutput { + s.AutoSnapshots = v return s } -type ExportSnapshotInput struct { +// SetResourceName sets the ResourceName field's value. +func (s *GetAutoSnapshotsOutput) SetResourceName(v string) *GetAutoSnapshotsOutput { + s.ResourceName = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *GetAutoSnapshotsOutput) SetResourceType(v string) *GetAutoSnapshotsOutput { + s.ResourceType = &v + return s +} + +type GetBlueprintsInput struct { _ struct{} `type:"structure"` - // The name of the instance or disk snapshot to be exported to Amazon EC2. + // A Boolean value indicating whether to include inactive results in your request. + IncludeInactive *bool `locationName:"includeInactive" type:"boolean"` + + // The token to advance to the next page of results from your request. // - // SourceSnapshotName is a required field - SourceSnapshotName *string `locationName:"sourceSnapshotName" type:"string" required:"true"` + // To get a page token, perform an initial GetBlueprints 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. + PageToken *string `locationName:"pageToken" type:"string"` } // String returns the string representation -func (s ExportSnapshotInput) String() string { +func (s GetBlueprintsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ExportSnapshotInput) GoString() string { +func (s GetBlueprintsInput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ExportSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ExportSnapshotInput"} - if s.SourceSnapshotName == nil { - invalidParams.Add(request.NewErrParamRequired("SourceSnapshotName")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetIncludeInactive sets the IncludeInactive field's value. +func (s *GetBlueprintsInput) SetIncludeInactive(v bool) *GetBlueprintsInput { + s.IncludeInactive = &v + return s } -// SetSourceSnapshotName sets the SourceSnapshotName field's value. -func (s *ExportSnapshotInput) SetSourceSnapshotName(v string) *ExportSnapshotInput { - s.SourceSnapshotName = &v +// SetPageToken sets the PageToken field's value. +func (s *GetBlueprintsInput) SetPageToken(v string) *GetBlueprintsInput { + s.PageToken = &v return s } -type ExportSnapshotOutput struct { +type GetBlueprintsOutput struct { _ struct{} `type:"structure"` - // 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 `locationName:"operations" type:"list"` + // An array of key-value pairs that contains information about the available + // blueprints. + Blueprints []*Blueprint `locationName:"blueprints" type:"list"` + + // 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 GetBlueprints request and + // specify the next page token using the pageToken parameter. + NextPageToken *string `locationName:"nextPageToken" type:"string"` } // String returns the string representation -func (s ExportSnapshotOutput) String() string { +func (s GetBlueprintsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ExportSnapshotOutput) GoString() string { +func (s GetBlueprintsOutput) GoString() string { return s.String() } -// SetOperations sets the Operations field's value. -func (s *ExportSnapshotOutput) SetOperations(v []*Operation) *ExportSnapshotOutput { - s.Operations = v +// SetBlueprints sets the Blueprints field's value. +func (s *GetBlueprintsOutput) SetBlueprints(v []*Blueprint) *GetBlueprintsOutput { + s.Blueprints = v return s } -// Describes an export snapshot record. -type ExportSnapshotRecord struct { - _ struct{} `type:"structure"` - - // The Amazon Resource Name (ARN) of the export snapshot record. - Arn *string `locationName:"arn" type:"string"` - - // The date when the export snapshot record was created. - CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` - - // A list of objects describing the destination of the export snapshot record. - DestinationInfo *DestinationInfo `locationName:"destinationInfo" type:"structure"` - - // The AWS Region and Availability Zone where the export snapshot record is - // located. - Location *ResourceLocation `locationName:"location" type:"structure"` - - // The export snapshot record name. - Name *string `locationName:"name" type:"string"` +// SetNextPageToken sets the NextPageToken field's value. +func (s *GetBlueprintsOutput) SetNextPageToken(v string) *GetBlueprintsOutput { + s.NextPageToken = &v + return s +} - // The Lightsail resource type (e.g., ExportSnapshotRecord). - ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` +type GetBundlesInput struct { + _ struct{} `type:"structure"` - // A list of objects describing the source of the export snapshot record. - SourceInfo *ExportSnapshotRecordSourceInfo `locationName:"sourceInfo" type:"structure"` + // A Boolean value that indicates whether to include inactive bundle results + // in your request. + IncludeInactive *bool `locationName:"includeInactive" type:"boolean"` - // The state of the export snapshot record. - State *string `locationName:"state" type:"string" enum:"RecordState"` + // 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 + // are paginated, the response will return a next page token that you can specify + // as the page token in a subsequent request. + PageToken *string `locationName:"pageToken" type:"string"` } // String returns the string representation -func (s ExportSnapshotRecord) String() string { +func (s GetBundlesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ExportSnapshotRecord) GoString() string { +func (s GetBundlesInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *ExportSnapshotRecord) SetArn(v string) *ExportSnapshotRecord { - s.Arn = &v +// SetIncludeInactive sets the IncludeInactive field's value. +func (s *GetBundlesInput) SetIncludeInactive(v bool) *GetBundlesInput { + s.IncludeInactive = &v return s } -// SetCreatedAt sets the CreatedAt field's value. -func (s *ExportSnapshotRecord) SetCreatedAt(v time.Time) *ExportSnapshotRecord { - s.CreatedAt = &v +// SetPageToken sets the PageToken field's value. +func (s *GetBundlesInput) SetPageToken(v string) *GetBundlesInput { + s.PageToken = &v return s } -// SetDestinationInfo sets the DestinationInfo field's value. -func (s *ExportSnapshotRecord) SetDestinationInfo(v *DestinationInfo) *ExportSnapshotRecord { - s.DestinationInfo = v - return s -} +type GetBundlesOutput struct { + _ struct{} `type:"structure"` -// SetLocation sets the Location field's value. -func (s *ExportSnapshotRecord) SetLocation(v *ResourceLocation) *ExportSnapshotRecord { - s.Location = v - return s + // An array of key-value pairs that contains information about the available + // bundles. + Bundles []*Bundle `locationName:"bundles" type:"list"` + + // 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 GetBundles request and specify + // the next page token using the pageToken parameter. + NextPageToken *string `locationName:"nextPageToken" type:"string"` } -// SetName sets the Name field's value. -func (s *ExportSnapshotRecord) SetName(v string) *ExportSnapshotRecord { - s.Name = &v - return s +// String returns the string representation +func (s GetBundlesOutput) String() string { + return awsutil.Prettify(s) } -// SetResourceType sets the ResourceType field's value. -func (s *ExportSnapshotRecord) SetResourceType(v string) *ExportSnapshotRecord { - s.ResourceType = &v - return s +// GoString returns the string representation +func (s GetBundlesOutput) GoString() string { + return s.String() } -// SetSourceInfo sets the SourceInfo field's value. -func (s *ExportSnapshotRecord) SetSourceInfo(v *ExportSnapshotRecordSourceInfo) *ExportSnapshotRecord { - s.SourceInfo = v +// SetBundles sets the Bundles field's value. +func (s *GetBundlesOutput) SetBundles(v []*Bundle) *GetBundlesOutput { + s.Bundles = v return s } -// SetState sets the State field's value. -func (s *ExportSnapshotRecord) SetState(v string) *ExportSnapshotRecord { - s.State = &v +// SetNextPageToken sets the NextPageToken field's value. +func (s *GetBundlesOutput) SetNextPageToken(v string) *GetBundlesOutput { + s.NextPageToken = &v return s } -// Describes the source of an export snapshot record. -type ExportSnapshotRecordSourceInfo struct { +type GetCertificatesInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the source instance or disk snapshot. - Arn *string `locationName:"arn" type:"string"` - - // The date when the source instance or disk snapshot was created. - CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` - - // A list of objects describing a disk snapshot. - DiskSnapshotInfo *DiskSnapshotInfo `locationName:"diskSnapshotInfo" type:"structure"` - - // The Amazon Resource Name (ARN) of the snapshot's source instance or disk. - FromResourceArn *string `locationName:"fromResourceArn" type:"string"` - - // The name of the snapshot's source instance or disk. - FromResourceName *string `locationName:"fromResourceName" type:"string"` - - // A list of objects describing an instance snapshot. - InstanceSnapshotInfo *InstanceSnapshotInfo `locationName:"instanceSnapshotInfo" type:"structure"` + // 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 request is made. + CertificateName *string `locationName:"certificateName" type:"string"` - // The name of the source instance or disk snapshot. - Name *string `locationName:"name" type:"string"` + // 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 []*string `locationName:"certificateStatuses" type:"list"` - // The Lightsail resource type (e.g., InstanceSnapshot or DiskSnapshot). - ResourceType *string `locationName:"resourceType" type:"string" enum:"ExportSnapshotRecordSourceType"` + // 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 *bool `locationName:"includeCertificateDetails" type:"boolean"` } // String returns the string representation -func (s ExportSnapshotRecordSourceInfo) String() string { +func (s GetCertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ExportSnapshotRecordSourceInfo) GoString() string { +func (s GetCertificatesInput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *ExportSnapshotRecordSourceInfo) SetArn(v string) *ExportSnapshotRecordSourceInfo { - s.Arn = &v - return s -} - -// SetCreatedAt sets the CreatedAt field's value. -func (s *ExportSnapshotRecordSourceInfo) SetCreatedAt(v time.Time) *ExportSnapshotRecordSourceInfo { - s.CreatedAt = &v +// SetCertificateName sets the CertificateName field's value. +func (s *GetCertificatesInput) SetCertificateName(v string) *GetCertificatesInput { + s.CertificateName = &v return s } -// SetDiskSnapshotInfo sets the DiskSnapshotInfo field's value. -func (s *ExportSnapshotRecordSourceInfo) SetDiskSnapshotInfo(v *DiskSnapshotInfo) *ExportSnapshotRecordSourceInfo { - s.DiskSnapshotInfo = v +// SetCertificateStatuses sets the CertificateStatuses field's value. +func (s *GetCertificatesInput) SetCertificateStatuses(v []*string) *GetCertificatesInput { + s.CertificateStatuses = v return s } -// SetFromResourceArn sets the FromResourceArn field's value. -func (s *ExportSnapshotRecordSourceInfo) SetFromResourceArn(v string) *ExportSnapshotRecordSourceInfo { - s.FromResourceArn = &v +// SetIncludeCertificateDetails sets the IncludeCertificateDetails field's value. +func (s *GetCertificatesInput) SetIncludeCertificateDetails(v bool) *GetCertificatesInput { + s.IncludeCertificateDetails = &v return s } -// SetFromResourceName sets the FromResourceName field's value. -func (s *ExportSnapshotRecordSourceInfo) SetFromResourceName(v string) *ExportSnapshotRecordSourceInfo { - s.FromResourceName = &v - return s +type GetCertificatesOutput struct { + _ struct{} `type:"structure"` + + // An object that describes certificates. + Certificates []*CertificateSummary `locationName:"certificates" type:"list"` } -// SetInstanceSnapshotInfo sets the InstanceSnapshotInfo field's value. -func (s *ExportSnapshotRecordSourceInfo) SetInstanceSnapshotInfo(v *InstanceSnapshotInfo) *ExportSnapshotRecordSourceInfo { - s.InstanceSnapshotInfo = v - return s +// String returns the string representation +func (s GetCertificatesOutput) String() string { + return awsutil.Prettify(s) } -// SetName sets the Name field's value. -func (s *ExportSnapshotRecordSourceInfo) SetName(v string) *ExportSnapshotRecordSourceInfo { - s.Name = &v - return s +// GoString returns the string representation +func (s GetCertificatesOutput) GoString() string { + return s.String() } -// SetResourceType sets the ResourceType field's value. -func (s *ExportSnapshotRecordSourceInfo) SetResourceType(v string) *ExportSnapshotRecordSourceInfo { - s.ResourceType = &v +// SetCertificates sets the Certificates field's value. +func (s *GetCertificatesOutput) SetCertificates(v []*CertificateSummary) *GetCertificatesOutput { + s.Certificates = v return s } -type GetActiveNamesInput struct { +type GetCloudFormationStackRecordsInput struct { _ struct{} `type:"structure"` // The token to advance to the next page of results from your request. // - // To get a page token, perform an initial 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. + // To get a page token, perform an initial GetClouFormationStackRecords 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. PageToken *string `locationName:"pageToken" type:"string"` } // String returns the string representation -func (s GetActiveNamesInput) String() string { +func (s GetCloudFormationStackRecordsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetActiveNamesInput) GoString() string { +func (s GetCloudFormationStackRecordsInput) GoString() string { return s.String() } // SetPageToken sets the PageToken field's value. -func (s *GetActiveNamesInput) SetPageToken(v string) *GetActiveNamesInput { +func (s *GetCloudFormationStackRecordsInput) SetPageToken(v string) *GetCloudFormationStackRecordsInput { s.PageToken = &v return s } -type GetActiveNamesOutput struct { +type GetCloudFormationStackRecordsOutput struct { _ struct{} `type:"structure"` - // The list of active names returned by the get active names request. - ActiveNames []*string `locationName:"activeNames" type:"list"` + // A list of objects describing the CloudFormation stack records. + CloudFormationStackRecords []*CloudFormationStackRecord `locationName:"cloudFormationStackRecords" type:"list"` // 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 GetActiveNames request and - // specify the next page token using the pageToken parameter. + // To get the next page of results, perform another GetCloudFormationStackRecords + // request and specify the next page token using the pageToken parameter. NextPageToken *string `locationName:"nextPageToken" type:"string"` } // String returns the string representation -func (s GetActiveNamesOutput) String() string { +func (s GetCloudFormationStackRecordsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetActiveNamesOutput) GoString() string { +func (s GetCloudFormationStackRecordsOutput) GoString() string { return s.String() } -// SetActiveNames sets the ActiveNames field's value. -func (s *GetActiveNamesOutput) SetActiveNames(v []*string) *GetActiveNamesOutput { - s.ActiveNames = v +// SetCloudFormationStackRecords sets the CloudFormationStackRecords field's value. +func (s *GetCloudFormationStackRecordsOutput) SetCloudFormationStackRecords(v []*CloudFormationStackRecord) *GetCloudFormationStackRecordsOutput { + s.CloudFormationStackRecords = v return s } // SetNextPageToken sets the NextPageToken field's value. -func (s *GetActiveNamesOutput) SetNextPageToken(v string) *GetActiveNamesOutput { +func (s *GetCloudFormationStackRecordsOutput) SetNextPageToken(v string) *GetCloudFormationStackRecordsOutput { s.NextPageToken = &v return s } -type GetAlarmsInput struct { +type GetContactMethodsInput struct { _ struct{} `type:"structure"` - // The name of the alarm. - // - // Specify an alarm name to return information about a specific alarm. - AlarmName *string `locationName:"alarmName" type:"string"` - - // The name of the Lightsail resource being monitored by the alarm. - // - // Specify a monitored resource name to return information about all alarms - // for a specific resource. - MonitoredResourceName *string `locationName:"monitoredResourceName" type:"string"` - - // The token to advance to the next page of results from your request. + // The protocols used to send notifications, such as Email, or SMS (text messaging). // - // 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. - PageToken *string `locationName:"pageToken" type:"string"` + // Specify a protocol in your request to return information about a specific + // contact method protocol. + Protocols []*string `locationName:"protocols" type:"list"` } // String returns the string representation -func (s GetAlarmsInput) String() string { +func (s GetContactMethodsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetAlarmsInput) GoString() string { +func (s GetContactMethodsInput) GoString() string { return s.String() } -// SetAlarmName sets the AlarmName field's value. -func (s *GetAlarmsInput) SetAlarmName(v string) *GetAlarmsInput { - s.AlarmName = &v - return s -} - -// SetMonitoredResourceName sets the MonitoredResourceName field's value. -func (s *GetAlarmsInput) SetMonitoredResourceName(v string) *GetAlarmsInput { - s.MonitoredResourceName = &v - return s -} - -// SetPageToken sets the PageToken field's value. -func (s *GetAlarmsInput) SetPageToken(v string) *GetAlarmsInput { - s.PageToken = &v +// SetProtocols sets the Protocols field's value. +func (s *GetContactMethodsInput) SetProtocols(v []*string) *GetContactMethodsInput { + s.Protocols = v return s } -type GetAlarmsOutput struct { +type GetContactMethodsOutput struct { _ struct{} `type:"structure"` - // An array of objects that describe the alarms. - Alarms []*Alarm `locationName:"alarms" type:"list"` - - // 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 GetAlarms request and specify - // the next page token using the pageToken parameter. - NextPageToken *string `locationName:"nextPageToken" type:"string"` + // An array of objects that describe the contact methods. + ContactMethods []*ContactMethod `locationName:"contactMethods" type:"list"` } // String returns the string representation -func (s GetAlarmsOutput) String() string { +func (s GetContactMethodsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetAlarmsOutput) GoString() string { +func (s GetContactMethodsOutput) GoString() string { return s.String() } -// SetAlarms sets the Alarms field's value. -func (s *GetAlarmsOutput) SetAlarms(v []*Alarm) *GetAlarmsOutput { - s.Alarms = v - return s -} - -// SetNextPageToken sets the NextPageToken field's value. -func (s *GetAlarmsOutput) SetNextPageToken(v string) *GetAlarmsOutput { - s.NextPageToken = &v +// SetContactMethods sets the ContactMethods field's value. +func (s *GetContactMethodsOutput) SetContactMethods(v []*ContactMethod) *GetContactMethodsOutput { + s.ContactMethods = v return s } -type GetAutoSnapshotsInput struct { +type GetDiskInput struct { _ struct{} `type:"structure"` - // The name of the source instance or disk from which to get automatic snapshot - // information. + // The name of the disk (e.g., my-disk). // - // ResourceName is a required field - ResourceName *string `locationName:"resourceName" type:"string" required:"true"` + // DiskName is a required field + DiskName *string `locationName:"diskName" type:"string" required:"true"` } // String returns the string representation -func (s GetAutoSnapshotsInput) String() string { +func (s GetDiskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetAutoSnapshotsInput) GoString() string { +func (s GetDiskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetAutoSnapshotsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetAutoSnapshotsInput"} - if s.ResourceName == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceName")) +func (s *GetDiskInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDiskInput"} + if s.DiskName == nil { + invalidParams.Add(request.NewErrParamRequired("DiskName")) } if invalidParams.Len() > 0 { @@ -18705,401 +21812,479 @@ func (s *GetAutoSnapshotsInput) Validate() error { return nil } -// SetResourceName sets the ResourceName field's value. -func (s *GetAutoSnapshotsInput) SetResourceName(v string) *GetAutoSnapshotsInput { - s.ResourceName = &v +// SetDiskName sets the DiskName field's value. +func (s *GetDiskInput) SetDiskName(v string) *GetDiskInput { + s.DiskName = &v return s } -type GetAutoSnapshotsOutput struct { +type GetDiskOutput struct { _ struct{} `type:"structure"` - // An array of objects that describe the automatic snapshots that are available - // for the specified source instance or disk. - AutoSnapshots []*AutoSnapshotDetails `locationName:"autoSnapshots" type:"list"` - - // The name of the source instance or disk for the automatic snapshots. - ResourceName *string `locationName:"resourceName" type:"string"` - - // The resource type (e.g., Instance or Disk). - ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + // An object containing information about the disk. + Disk *Disk `locationName:"disk" type:"structure"` } // String returns the string representation -func (s GetAutoSnapshotsOutput) String() string { +func (s GetDiskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetAutoSnapshotsOutput) GoString() string { +func (s GetDiskOutput) GoString() string { return s.String() } -// SetAutoSnapshots sets the AutoSnapshots field's value. -func (s *GetAutoSnapshotsOutput) SetAutoSnapshots(v []*AutoSnapshotDetails) *GetAutoSnapshotsOutput { - s.AutoSnapshots = v - return s -} - -// SetResourceName sets the ResourceName field's value. -func (s *GetAutoSnapshotsOutput) SetResourceName(v string) *GetAutoSnapshotsOutput { - s.ResourceName = &v - return s -} - -// SetResourceType sets the ResourceType field's value. -func (s *GetAutoSnapshotsOutput) SetResourceType(v string) *GetAutoSnapshotsOutput { - s.ResourceType = &v +// SetDisk sets the Disk field's value. +func (s *GetDiskOutput) SetDisk(v *Disk) *GetDiskOutput { + s.Disk = v return s } -type GetBlueprintsInput struct { +type GetDiskSnapshotInput struct { _ struct{} `type:"structure"` - // A Boolean value indicating whether to include inactive results in your request. - IncludeInactive *bool `locationName:"includeInactive" type:"boolean"` - - // The token to advance to the next page of results from your request. + // The name of the disk snapshot (e.g., my-disk-snapshot). // - // To get a page token, perform an initial GetBlueprints 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. - PageToken *string `locationName:"pageToken" type:"string"` + // DiskSnapshotName is a required field + DiskSnapshotName *string `locationName:"diskSnapshotName" type:"string" required:"true"` } // String returns the string representation -func (s GetBlueprintsInput) String() string { +func (s GetDiskSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetBlueprintsInput) GoString() string { +func (s GetDiskSnapshotInput) GoString() string { return s.String() } -// SetIncludeInactive sets the IncludeInactive field's value. -func (s *GetBlueprintsInput) SetIncludeInactive(v bool) *GetBlueprintsInput { - s.IncludeInactive = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDiskSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDiskSnapshotInput"} + if s.DiskSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("DiskSnapshotName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetPageToken sets the PageToken field's value. -func (s *GetBlueprintsInput) SetPageToken(v string) *GetBlueprintsInput { - s.PageToken = &v +// SetDiskSnapshotName sets the DiskSnapshotName field's value. +func (s *GetDiskSnapshotInput) SetDiskSnapshotName(v string) *GetDiskSnapshotInput { + s.DiskSnapshotName = &v return s } -type GetBlueprintsOutput struct { +type GetDiskSnapshotOutput struct { _ struct{} `type:"structure"` - // An array of key-value pairs that contains information about the available - // blueprints. - Blueprints []*Blueprint `locationName:"blueprints" type:"list"` - - // 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 GetBlueprints request and - // specify the next page token using the pageToken parameter. - NextPageToken *string `locationName:"nextPageToken" type:"string"` + // An object containing information about the disk snapshot. + DiskSnapshot *DiskSnapshot `locationName:"diskSnapshot" type:"structure"` } // String returns the string representation -func (s GetBlueprintsOutput) String() string { +func (s GetDiskSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetBlueprintsOutput) GoString() string { +func (s GetDiskSnapshotOutput) GoString() string { return s.String() } -// SetBlueprints sets the Blueprints field's value. -func (s *GetBlueprintsOutput) SetBlueprints(v []*Blueprint) *GetBlueprintsOutput { - s.Blueprints = v - return s -} - -// SetNextPageToken sets the NextPageToken field's value. -func (s *GetBlueprintsOutput) SetNextPageToken(v string) *GetBlueprintsOutput { - s.NextPageToken = &v +// SetDiskSnapshot sets the DiskSnapshot field's value. +func (s *GetDiskSnapshotOutput) SetDiskSnapshot(v *DiskSnapshot) *GetDiskSnapshotOutput { + s.DiskSnapshot = v return s } -type GetBundlesInput struct { +type GetDiskSnapshotsInput struct { _ struct{} `type:"structure"` - // A Boolean value that indicates whether to include inactive bundle results - // in your request. - IncludeInactive *bool `locationName:"includeInactive" type:"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 - // 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 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. PageToken *string `locationName:"pageToken" type:"string"` } // String returns the string representation -func (s GetBundlesInput) String() string { +func (s GetDiskSnapshotsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetBundlesInput) GoString() string { +func (s GetDiskSnapshotsInput) GoString() string { return s.String() } -// SetIncludeInactive sets the IncludeInactive field's value. -func (s *GetBundlesInput) SetIncludeInactive(v bool) *GetBundlesInput { - s.IncludeInactive = &v - return s -} - // SetPageToken sets the PageToken field's value. -func (s *GetBundlesInput) SetPageToken(v string) *GetBundlesInput { +func (s *GetDiskSnapshotsInput) SetPageToken(v string) *GetDiskSnapshotsInput { s.PageToken = &v return s } -type GetBundlesOutput struct { +type GetDiskSnapshotsOutput struct { _ struct{} `type:"structure"` - // An array of key-value pairs that contains information about the available - // bundles. - Bundles []*Bundle `locationName:"bundles" type:"list"` + // An array of objects containing information about all block storage disk snapshots. + DiskSnapshots []*DiskSnapshot `locationName:"diskSnapshots" type:"list"` // 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 GetBundles request and specify - // the next page token using the pageToken parameter. + // To get the next page of results, perform another GetDiskSnapshots request + // and specify the next page token using the pageToken parameter. NextPageToken *string `locationName:"nextPageToken" type:"string"` } // String returns the string representation -func (s GetBundlesOutput) String() string { +func (s GetDiskSnapshotsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetBundlesOutput) GoString() string { +func (s GetDiskSnapshotsOutput) GoString() string { return s.String() } -// SetBundles sets the Bundles field's value. -func (s *GetBundlesOutput) SetBundles(v []*Bundle) *GetBundlesOutput { - s.Bundles = v +// SetDiskSnapshots sets the DiskSnapshots field's value. +func (s *GetDiskSnapshotsOutput) SetDiskSnapshots(v []*DiskSnapshot) *GetDiskSnapshotsOutput { + s.DiskSnapshots = v return s } // SetNextPageToken sets the NextPageToken field's value. -func (s *GetBundlesOutput) SetNextPageToken(v string) *GetBundlesOutput { +func (s *GetDiskSnapshotsOutput) SetNextPageToken(v string) *GetDiskSnapshotsOutput { s.NextPageToken = &v return s } -type GetCloudFormationStackRecordsInput struct { +type GetDisksInput struct { _ struct{} `type:"structure"` // The token to advance to the next page of results from your request. // - // To get a page token, perform an initial GetClouFormationStackRecords 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. PageToken *string `locationName:"pageToken" type:"string"` } // String returns the string representation -func (s GetCloudFormationStackRecordsInput) String() string { +func (s GetDisksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetCloudFormationStackRecordsInput) GoString() string { +func (s GetDisksInput) GoString() string { return s.String() } // SetPageToken sets the PageToken field's value. -func (s *GetCloudFormationStackRecordsInput) SetPageToken(v string) *GetCloudFormationStackRecordsInput { +func (s *GetDisksInput) SetPageToken(v string) *GetDisksInput { s.PageToken = &v return s } -type GetCloudFormationStackRecordsOutput struct { +type GetDisksOutput struct { _ struct{} `type:"structure"` - // A list of objects describing the CloudFormation stack records. - CloudFormationStackRecords []*CloudFormationStackRecord `locationName:"cloudFormationStackRecords" type:"list"` + // An array of objects containing information about all block storage disks. + Disks []*Disk `locationName:"disks" type:"list"` // 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 GetCloudFormationStackRecords - // request and specify the next page token using the pageToken parameter. + // To get the next page of results, perform another GetDisks request and specify + // the next page token using the pageToken parameter. NextPageToken *string `locationName:"nextPageToken" type:"string"` } // String returns the string representation -func (s GetCloudFormationStackRecordsOutput) String() string { +func (s GetDisksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetCloudFormationStackRecordsOutput) GoString() string { +func (s GetDisksOutput) GoString() string { return s.String() } -// SetCloudFormationStackRecords sets the CloudFormationStackRecords field's value. -func (s *GetCloudFormationStackRecordsOutput) SetCloudFormationStackRecords(v []*CloudFormationStackRecord) *GetCloudFormationStackRecordsOutput { - s.CloudFormationStackRecords = v +// SetDisks sets the Disks field's value. +func (s *GetDisksOutput) SetDisks(v []*Disk) *GetDisksOutput { + s.Disks = v return s } // SetNextPageToken sets the NextPageToken field's value. -func (s *GetCloudFormationStackRecordsOutput) SetNextPageToken(v string) *GetCloudFormationStackRecordsOutput { +func (s *GetDisksOutput) SetNextPageToken(v string) *GetDisksOutput { s.NextPageToken = &v return s } -type GetContactMethodsInput struct { +type GetDistributionBundlesInput struct { _ struct{} `type:"structure"` - - // The protocols used to send notifications, such as Email, or SMS (text messaging). - // - // Specify a protocol in your request to return information about a specific - // contact method protocol. - Protocols []*string `locationName:"protocols" type:"list"` } // String returns the string representation -func (s GetContactMethodsInput) String() string { +func (s GetDistributionBundlesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetContactMethodsInput) GoString() string { +func (s GetDistributionBundlesInput) GoString() string { return s.String() } -// SetProtocols sets the Protocols field's value. -func (s *GetContactMethodsInput) SetProtocols(v []*string) *GetContactMethodsInput { - s.Protocols = v - return s -} - -type GetContactMethodsOutput struct { +type GetDistributionBundlesOutput struct { _ struct{} `type:"structure"` - // An array of objects that describe the contact methods. - ContactMethods []*ContactMethod `locationName:"contactMethods" type:"list"` + // An object that describes a distribution bundle. + Bundles []*DistributionBundle `locationName:"bundles" type:"list"` } // String returns the string representation -func (s GetContactMethodsOutput) String() string { +func (s GetDistributionBundlesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetContactMethodsOutput) GoString() string { +func (s GetDistributionBundlesOutput) GoString() string { return s.String() } -// SetContactMethods sets the ContactMethods field's value. -func (s *GetContactMethodsOutput) SetContactMethods(v []*ContactMethod) *GetContactMethodsOutput { - s.ContactMethods = v +// SetBundles sets the Bundles field's value. +func (s *GetDistributionBundlesOutput) SetBundles(v []*DistributionBundle) *GetDistributionBundlesOutput { + s.Bundles = v return s } -type GetDiskInput struct { +type GetDistributionLatestCacheResetInput struct { _ struct{} `type:"structure"` - // The name of the disk (e.g., my-disk). + // The name of the distribution for which to return the timestamp of the last + // cache reset. // - // DiskName is a required field - DiskName *string `locationName:"diskName" type:"string" required:"true"` + // 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. + DistributionName *string `locationName:"distributionName" type:"string"` } // String returns the string representation -func (s GetDiskInput) String() string { +func (s GetDistributionLatestCacheResetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetDiskInput) GoString() string { +func (s GetDistributionLatestCacheResetInput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetDiskInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetDiskInput"} - if s.DiskName == nil { - invalidParams.Add(request.NewErrParamRequired("DiskName")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetDiskName sets the DiskName field's value. -func (s *GetDiskInput) SetDiskName(v string) *GetDiskInput { - s.DiskName = &v +// SetDistributionName sets the DistributionName field's value. +func (s *GetDistributionLatestCacheResetInput) SetDistributionName(v string) *GetDistributionLatestCacheResetInput { + s.DistributionName = &v return s } -type GetDiskOutput struct { +type GetDistributionLatestCacheResetOutput struct { _ struct{} `type:"structure"` - // An object containing information about the disk. - Disk *Disk `locationName:"disk" type:"structure"` + // The timestamp of the last cache reset (e.g., 1479734909.17) in Unix time + // format. + CreateTime *time.Time `locationName:"createTime" type:"timestamp"` + + // The status of the last cache reset. + Status *string `locationName:"status" type:"string"` } // String returns the string representation -func (s GetDiskOutput) String() string { +func (s GetDistributionLatestCacheResetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetDiskOutput) GoString() string { +func (s GetDistributionLatestCacheResetOutput) GoString() string { return s.String() } -// SetDisk sets the Disk field's value. -func (s *GetDiskOutput) SetDisk(v *Disk) *GetDiskOutput { - s.Disk = v +// SetCreateTime sets the CreateTime field's value. +func (s *GetDistributionLatestCacheResetOutput) SetCreateTime(v time.Time) *GetDistributionLatestCacheResetOutput { + s.CreateTime = &v return s } -type GetDiskSnapshotInput struct { +// SetStatus sets the Status field's value. +func (s *GetDistributionLatestCacheResetOutput) SetStatus(v string) *GetDistributionLatestCacheResetOutput { + s.Status = &v + return s +} + +type GetDistributionMetricDataInput struct { _ struct{} `type:"structure"` - // The name of the disk snapshot (e.g., my-disk-snapshot). + // The name of the distribution for which to get metric data. // - // DiskSnapshotName is a required field - DiskSnapshotName *string `locationName:"diskSnapshotName" type:"string" required:"true"` + // Use the GetDistributions action to get a list of distribution names that + // you can specify. + // + // DistributionName is a required field + DistributionName *string `locationName:"distributionName" type:"string" required:"true"` + + // 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 (https://www.epochconverter.com/). + // + // EndTime is a required field + EndTime *time.Time `locationName:"endTime" type:"timestamp" required:"true"` + + // 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. + // + // MetricName is a required field + MetricName *string `locationName:"metricName" type:"string" required:"true" enum:"DistributionMetricName"` + + // The granularity, in seconds, for the metric data points that will be returned. + // + // Period is a required field + Period *int64 `locationName:"period" min:"60" type:"integer" required:"true"` + + // 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 (https://www.epochconverter.com/). + // + // StartTime is a required field + StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` + + // 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. + // + // Statistics is a required field + Statistics []*string `locationName:"statistics" type:"list" required:"true"` + + // 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. + // + // Unit is a required field + Unit *string `locationName:"unit" type:"string" required:"true" enum:"MetricUnit"` } // String returns the string representation -func (s GetDiskSnapshotInput) String() string { +func (s GetDistributionMetricDataInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetDiskSnapshotInput) GoString() string { +func (s GetDistributionMetricDataInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetDiskSnapshotInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetDiskSnapshotInput"} - if s.DiskSnapshotName == nil { - invalidParams.Add(request.NewErrParamRequired("DiskSnapshotName")) +func (s *GetDistributionMetricDataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDistributionMetricDataInput"} + if s.DistributionName == nil { + invalidParams.Add(request.NewErrParamRequired("DistributionName")) + } + if s.EndTime == nil { + invalidParams.Add(request.NewErrParamRequired("EndTime")) + } + if s.MetricName == nil { + invalidParams.Add(request.NewErrParamRequired("MetricName")) + } + if s.Period == nil { + invalidParams.Add(request.NewErrParamRequired("Period")) + } + if s.Period != nil && *s.Period < 60 { + invalidParams.Add(request.NewErrParamMinValue("Period", 60)) + } + if s.StartTime == nil { + invalidParams.Add(request.NewErrParamRequired("StartTime")) + } + if s.Statistics == nil { + invalidParams.Add(request.NewErrParamRequired("Statistics")) + } + if s.Unit == nil { + invalidParams.Add(request.NewErrParamRequired("Unit")) } if invalidParams.Len() > 0 { @@ -19108,159 +22293,155 @@ func (s *GetDiskSnapshotInput) Validate() error { return nil } -// SetDiskSnapshotName sets the DiskSnapshotName field's value. -func (s *GetDiskSnapshotInput) SetDiskSnapshotName(v string) *GetDiskSnapshotInput { - s.DiskSnapshotName = &v +// SetDistributionName sets the DistributionName field's value. +func (s *GetDistributionMetricDataInput) SetDistributionName(v string) *GetDistributionMetricDataInput { + s.DistributionName = &v return s } -type GetDiskSnapshotOutput struct { - _ struct{} `type:"structure"` - - // An object containing information about the disk snapshot. - DiskSnapshot *DiskSnapshot `locationName:"diskSnapshot" type:"structure"` -} - -// String returns the string representation -func (s GetDiskSnapshotOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s GetDiskSnapshotOutput) GoString() string { - return s.String() +// SetEndTime sets the EndTime field's value. +func (s *GetDistributionMetricDataInput) SetEndTime(v time.Time) *GetDistributionMetricDataInput { + s.EndTime = &v + return s } -// SetDiskSnapshot sets the DiskSnapshot field's value. -func (s *GetDiskSnapshotOutput) SetDiskSnapshot(v *DiskSnapshot) *GetDiskSnapshotOutput { - s.DiskSnapshot = v +// SetMetricName sets the MetricName field's value. +func (s *GetDistributionMetricDataInput) SetMetricName(v string) *GetDistributionMetricDataInput { + s.MetricName = &v return s } -type GetDiskSnapshotsInput struct { - _ struct{} `type:"structure"` - - // 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. - PageToken *string `locationName:"pageToken" type:"string"` +// SetPeriod sets the Period field's value. +func (s *GetDistributionMetricDataInput) SetPeriod(v int64) *GetDistributionMetricDataInput { + s.Period = &v + return s } -// String returns the string representation -func (s GetDiskSnapshotsInput) String() string { - return awsutil.Prettify(s) +// SetStartTime sets the StartTime field's value. +func (s *GetDistributionMetricDataInput) SetStartTime(v time.Time) *GetDistributionMetricDataInput { + s.StartTime = &v + return s } -// GoString returns the string representation -func (s GetDiskSnapshotsInput) GoString() string { - return s.String() +// SetStatistics sets the Statistics field's value. +func (s *GetDistributionMetricDataInput) SetStatistics(v []*string) *GetDistributionMetricDataInput { + s.Statistics = v + return s } -// SetPageToken sets the PageToken field's value. -func (s *GetDiskSnapshotsInput) SetPageToken(v string) *GetDiskSnapshotsInput { - s.PageToken = &v +// SetUnit sets the Unit field's value. +func (s *GetDistributionMetricDataInput) SetUnit(v string) *GetDistributionMetricDataInput { + s.Unit = &v return s } -type GetDiskSnapshotsOutput struct { +type GetDistributionMetricDataOutput struct { _ struct{} `type:"structure"` - // An array of objects containing information about all block storage disk snapshots. - DiskSnapshots []*DiskSnapshot `locationName:"diskSnapshots" type:"list"` + // An array of objects that describe the metric data returned. + MetricData []*MetricDatapoint `locationName:"metricData" type:"list"` - // 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 GetDiskSnapshots request - // and specify the next page token using the pageToken parameter. - NextPageToken *string `locationName:"nextPageToken" type:"string"` + // The name of the metric returned. + MetricName *string `locationName:"metricName" type:"string" enum:"DistributionMetricName"` } // String returns the string representation -func (s GetDiskSnapshotsOutput) String() string { +func (s GetDistributionMetricDataOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetDiskSnapshotsOutput) GoString() string { +func (s GetDistributionMetricDataOutput) GoString() string { return s.String() } -// SetDiskSnapshots sets the DiskSnapshots field's value. -func (s *GetDiskSnapshotsOutput) SetDiskSnapshots(v []*DiskSnapshot) *GetDiskSnapshotsOutput { - s.DiskSnapshots = v +// SetMetricData sets the MetricData field's value. +func (s *GetDistributionMetricDataOutput) SetMetricData(v []*MetricDatapoint) *GetDistributionMetricDataOutput { + s.MetricData = v return s } -// SetNextPageToken sets the NextPageToken field's value. -func (s *GetDiskSnapshotsOutput) SetNextPageToken(v string) *GetDiskSnapshotsOutput { - s.NextPageToken = &v +// SetMetricName sets the MetricName field's value. +func (s *GetDistributionMetricDataOutput) SetMetricName(v string) *GetDistributionMetricDataOutput { + s.MetricName = &v return s } -type GetDisksInput struct { +type GetDistributionsInput struct { _ struct{} `type:"structure"` + // 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 `locationName:"distributionName" type:"string"` + // 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. + // 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. PageToken *string `locationName:"pageToken" type:"string"` } // String returns the string representation -func (s GetDisksInput) String() string { +func (s GetDistributionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetDisksInput) GoString() string { +func (s GetDistributionsInput) GoString() string { return s.String() } +// SetDistributionName sets the DistributionName field's value. +func (s *GetDistributionsInput) SetDistributionName(v string) *GetDistributionsInput { + s.DistributionName = &v + return s +} + // SetPageToken sets the PageToken field's value. -func (s *GetDisksInput) SetPageToken(v string) *GetDisksInput { +func (s *GetDistributionsInput) SetPageToken(v string) *GetDistributionsInput { s.PageToken = &v return s } -type GetDisksOutput struct { +type GetDistributionsOutput struct { _ struct{} `type:"structure"` - // An array of objects containing information about all block storage disks. - Disks []*Disk `locationName:"disks" type:"list"` + // An array of objects that describe your distributions. + Distributions []*LightsailDistribution `locationName:"distributions" type:"list"` - // 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 GetDisks request and specify - // the next page token using the pageToken parameter. + // To get the next page of results, perform another GetDistributions request + // and specify the next page token using the pageToken parameter. NextPageToken *string `locationName:"nextPageToken" type:"string"` } // String returns the string representation -func (s GetDisksOutput) String() string { +func (s GetDistributionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetDisksOutput) GoString() string { +func (s GetDistributionsOutput) GoString() string { return s.String() } -// SetDisks sets the Disks field's value. -func (s *GetDisksOutput) SetDisks(v []*Disk) *GetDisksOutput { - s.Disks = v +// SetDistributions sets the Distributions field's value. +func (s *GetDistributionsOutput) SetDistributions(v []*LightsailDistribution) *GetDistributionsOutput { + s.Distributions = v return s } // SetNextPageToken sets the NextPageToken field's value. -func (s *GetDisksOutput) SetNextPageToken(v string) *GetDisksOutput { +func (s *GetDistributionsOutput) SetNextPageToken(v string) *GetDistributionsOutput { s.NextPageToken = &v return s } @@ -22239,6 +25420,58 @@ func (s *GetStaticIpsOutput) SetStaticIps(v []*StaticIp) *GetStaticIpsOutput { return s } +// 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 value of either acme or apex, and you configure your distribution +// to cache your content based on values in the product header. Your distribution +// forwards the product header to the origin and caches the response from the +// origin once for each header value. +type HeaderObject struct { + _ struct{} `type:"structure"` + + // The specific headers to forward to your distribution's origin. + HeadersAllowList []*string `locationName:"headersAllowList" type:"list"` + + // 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: + // + // * all - Forward all headers to your origin. + // + // * none - Forward only the default headers. + // + // * allow-list - Forward only the headers you specify using the headersAllowList + // parameter. + Option *string `locationName:"option" type:"string" enum:"ForwardValues"` +} + +// String returns the string representation +func (s HeaderObject) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s HeaderObject) GoString() string { + return s.String() +} + +// SetHeadersAllowList sets the HeadersAllowList field's value. +func (s *HeaderObject) SetHeadersAllowList(v []*string) *HeaderObject { + s.HeadersAllowList = v + return s +} + +// SetOption sets the Option field's value. +func (s *HeaderObject) SetOption(v string) *HeaderObject { + s.Option = &v + return s +} + // Describes the public SSH host keys or the RDP certificate. type HostKeyAttributes struct { _ struct{} `type:"structure"` @@ -22409,6 +25642,54 @@ func (s *ImportKeyPairOutput) SetOperation(v *Operation) *ImportKeyPairOutput { return s } +// 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. +type InputOrigin struct { + _ struct{} `type:"structure"` + + // The name of the origin resource. + Name *string `locationName:"name" type:"string"` + + // The protocol that your Amazon Lightsail distribution uses when establishing + // a connection with your origin to pull content. + ProtocolPolicy *string `locationName:"protocolPolicy" type:"string" enum:"OriginProtocolPolicyEnum"` + + // The AWS Region name of the origin resource. + RegionName *string `locationName:"regionName" type:"string" enum:"RegionName"` +} + +// String returns the string representation +func (s InputOrigin) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s InputOrigin) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *InputOrigin) SetName(v string) *InputOrigin { + s.Name = &v + return s +} + +// SetProtocolPolicy sets the ProtocolPolicy field's value. +func (s *InputOrigin) SetProtocolPolicy(v string) *InputOrigin { + s.ProtocolPolicy = &v + return s +} + +// SetRegionName sets the RegionName field's value. +func (s *InputOrigin) SetRegionName(v string) *InputOrigin { + s.RegionName = &v + return s +} + // Describes an instance (a virtual private server). type Instance struct { _ struct{} `type:"structure"` @@ -22428,7 +25709,8 @@ type Instance struct { // The bundle for the instance (e.g., micro_1_0). BundleId *string `locationName:"bundleId" type:"string"` - // The timestamp when the instance was created (e.g., 1479734909.17). + // The timestamp when the instance was created (e.g., 1479734909.17) in Unix + // time format. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` // The size of the vCPU and the amount of RAM for the instance. @@ -23637,31 +26919,166 @@ func (s *IsVpcPeeredOutput) SetIsPeered(v bool) *IsVpcPeeredOutput { return s } -// Describes the SSH key pair. -type KeyPair struct { +// Describes the SSH key pair. +type KeyPair struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the key pair (e.g., arn:aws:lightsail:us-east-2:123456789101:KeyPair/05859e3d-331d-48ba-9034-12345EXAMPLE). + Arn *string `locationName:"arn" type:"string"` + + // The timestamp when the key pair was created (e.g., 1479816991.349). + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The RSA fingerprint of the key pair. + Fingerprint *string `locationName:"fingerprint" type:"string"` + + // The region name and Availability Zone where the key pair was created. + Location *ResourceLocation `locationName:"location" type:"structure"` + + // The friendly name of the SSH key pair. + Name *string `locationName:"name" type:"string"` + + // The resource type (usually KeyPair). + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + + // 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 `locationName:"supportCode" type:"string"` + + // The tag keys and optional values for the resource. For more information about + // tags in Lightsail, see the Lightsail Dev Guide (https://lightsail.aws.amazon.com/ls/docs/en/articles/amazon-lightsail-tags). + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation +func (s KeyPair) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s KeyPair) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *KeyPair) SetArn(v string) *KeyPair { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *KeyPair) SetCreatedAt(v time.Time) *KeyPair { + s.CreatedAt = &v + return s +} + +// SetFingerprint sets the Fingerprint field's value. +func (s *KeyPair) SetFingerprint(v string) *KeyPair { + s.Fingerprint = &v + return s +} + +// SetLocation sets the Location field's value. +func (s *KeyPair) SetLocation(v *ResourceLocation) *KeyPair { + s.Location = v + return s +} + +// SetName sets the Name field's value. +func (s *KeyPair) SetName(v string) *KeyPair { + s.Name = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *KeyPair) SetResourceType(v string) *KeyPair { + s.ResourceType = &v + return s +} + +// SetSupportCode sets the SupportCode field's value. +func (s *KeyPair) SetSupportCode(v string) *KeyPair { + s.SupportCode = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *KeyPair) SetTags(v []*Tag) *KeyPair { + s.Tags = v + return s +} + +// Describes an Amazon Lightsail content delivery network (CDN) distribution. +type LightsailDistribution struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the key pair (e.g., arn:aws:lightsail:us-east-2:123456789101:KeyPair/05859e3d-331d-48ba-9034-12345EXAMPLE). + // 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. + AbleToUpdateBundle *bool `locationName:"ableToUpdateBundle" type:"boolean"` + + // The alternate domain names of the distribution. + AlternativeDomainNames []*string `locationName:"alternativeDomainNames" type:"list"` + + // The Amazon Resource Name (ARN) of the distribution. Arn *string `locationName:"arn" type:"string"` - // The timestamp when the key pair was created (e.g., 1479816991.349). + // The ID of the bundle currently applied to the distribution. + BundleId *string `locationName:"bundleId" type:"string"` + + // An object that describes the cache behavior settings of the distribution. + CacheBehaviorSettings *CacheSettings `locationName:"cacheBehaviorSettings" type:"structure"` + + // An array of objects that describe the per-path cache behavior of the distribution. + CacheBehaviors []*CacheBehaviorPerPath `locationName:"cacheBehaviors" type:"list"` + + // The name of the SSL/TLS certificate attached to the distribution, if any. + CertificateName *string `locationName:"certificateName" type:"string"` + + // The timestamp when the distribution was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` - // The RSA fingerprint of the key pair. - Fingerprint *string `locationName:"fingerprint" type:"string"` + // An object that describes the default cache behavior of the distribution. + DefaultCacheBehavior *CacheBehavior `locationName:"defaultCacheBehavior" type:"structure"` - // The region name and Availability Zone where the key pair was created. + // The domain name of the distribution. + DomainName *string `locationName:"domainName" type:"string"` + + // Indicates whether the distribution is enabled. + IsEnabled *bool `locationName:"isEnabled" type:"boolean"` + + // 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. Location *ResourceLocation `locationName:"location" type:"structure"` - // The friendly name of the SSH key pair. + // The name of the distribution. Name *string `locationName:"name" type:"string"` - // The resource type (usually KeyPair). + // 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. + Origin *Origin `locationName:"origin" type:"structure"` + + // The public DNS of the origin. + OriginPublicDNS *string `locationName:"originPublicDNS" type:"string"` + + // The Lightsail resource type (e.g., Distribution). ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` + // The status of the distribution. + Status *string `locationName:"status" type:"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. + // questions about your Lightsail distribution. This code enables our support + // team to look up your Lightsail information more easily. SupportCode *string `locationName:"supportCode" type:"string"` // The tag keys and optional values for the resource. For more information about @@ -23670,59 +27087,125 @@ type KeyPair struct { } // String returns the string representation -func (s KeyPair) String() string { +func (s LightsailDistribution) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s KeyPair) GoString() string { +func (s LightsailDistribution) GoString() string { return s.String() } +// SetAbleToUpdateBundle sets the AbleToUpdateBundle field's value. +func (s *LightsailDistribution) SetAbleToUpdateBundle(v bool) *LightsailDistribution { + s.AbleToUpdateBundle = &v + return s +} + +// SetAlternativeDomainNames sets the AlternativeDomainNames field's value. +func (s *LightsailDistribution) SetAlternativeDomainNames(v []*string) *LightsailDistribution { + s.AlternativeDomainNames = v + return s +} + // SetArn sets the Arn field's value. -func (s *KeyPair) SetArn(v string) *KeyPair { +func (s *LightsailDistribution) SetArn(v string) *LightsailDistribution { s.Arn = &v return s } +// SetBundleId sets the BundleId field's value. +func (s *LightsailDistribution) SetBundleId(v string) *LightsailDistribution { + s.BundleId = &v + return s +} + +// SetCacheBehaviorSettings sets the CacheBehaviorSettings field's value. +func (s *LightsailDistribution) SetCacheBehaviorSettings(v *CacheSettings) *LightsailDistribution { + s.CacheBehaviorSettings = v + return s +} + +// SetCacheBehaviors sets the CacheBehaviors field's value. +func (s *LightsailDistribution) SetCacheBehaviors(v []*CacheBehaviorPerPath) *LightsailDistribution { + s.CacheBehaviors = v + return s +} + +// SetCertificateName sets the CertificateName field's value. +func (s *LightsailDistribution) SetCertificateName(v string) *LightsailDistribution { + s.CertificateName = &v + return s +} + // SetCreatedAt sets the CreatedAt field's value. -func (s *KeyPair) SetCreatedAt(v time.Time) *KeyPair { +func (s *LightsailDistribution) SetCreatedAt(v time.Time) *LightsailDistribution { s.CreatedAt = &v return s } -// SetFingerprint sets the Fingerprint field's value. -func (s *KeyPair) SetFingerprint(v string) *KeyPair { - s.Fingerprint = &v +// SetDefaultCacheBehavior sets the DefaultCacheBehavior field's value. +func (s *LightsailDistribution) SetDefaultCacheBehavior(v *CacheBehavior) *LightsailDistribution { + s.DefaultCacheBehavior = v + return s +} + +// SetDomainName sets the DomainName field's value. +func (s *LightsailDistribution) SetDomainName(v string) *LightsailDistribution { + s.DomainName = &v + return s +} + +// SetIsEnabled sets the IsEnabled field's value. +func (s *LightsailDistribution) SetIsEnabled(v bool) *LightsailDistribution { + s.IsEnabled = &v return s } // SetLocation sets the Location field's value. -func (s *KeyPair) SetLocation(v *ResourceLocation) *KeyPair { +func (s *LightsailDistribution) SetLocation(v *ResourceLocation) *LightsailDistribution { s.Location = v return s } // SetName sets the Name field's value. -func (s *KeyPair) SetName(v string) *KeyPair { +func (s *LightsailDistribution) SetName(v string) *LightsailDistribution { s.Name = &v return s } +// SetOrigin sets the Origin field's value. +func (s *LightsailDistribution) SetOrigin(v *Origin) *LightsailDistribution { + s.Origin = v + return s +} + +// SetOriginPublicDNS sets the OriginPublicDNS field's value. +func (s *LightsailDistribution) SetOriginPublicDNS(v string) *LightsailDistribution { + s.OriginPublicDNS = &v + return s +} + // SetResourceType sets the ResourceType field's value. -func (s *KeyPair) SetResourceType(v string) *KeyPair { +func (s *LightsailDistribution) SetResourceType(v string) *LightsailDistribution { s.ResourceType = &v return s } +// SetStatus sets the Status field's value. +func (s *LightsailDistribution) SetStatus(v string) *LightsailDistribution { + s.Status = &v + return s +} + // SetSupportCode sets the SupportCode field's value. -func (s *KeyPair) SetSupportCode(v string) *KeyPair { +func (s *LightsailDistribution) SetSupportCode(v string) *LightsailDistribution { s.SupportCode = &v return s } // SetTags sets the Tags field's value. -func (s *KeyPair) SetTags(v []*Tag) *KeyPair { +func (s *LightsailDistribution) SetTags(v []*Tag) *LightsailDistribution { s.Tags = v return s } @@ -23918,7 +27401,47 @@ type LoadBalancerTlsCertificate struct { // the records. DomainValidationRecords []*LoadBalancerTlsCertificateDomainValidationRecord `locationName:"domainValidationRecords" type:"list"` - // The reason for the SSL/TLS certificate validation failure. + // 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 (https://console.aws.amazon.com/support/home) + // 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 (https://www.virustotal.com/gui/home/url). + // To correct the problem, search for your domain name on the VirusTotal + // (https://www.virustotal.com/gui/home/url) website. If your domain is reported + // as suspicious, see Google Help for Hacked Websites (https://www.google.com/webmasters/hacked/?hl=en) + // 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 (https://console.aws.amazon.com/support/home) + // 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. FailureReason *string `locationName:"failureReason" type:"string" enum:"LoadBalancerTlsCertificateFailureReason"` // When true, the SSL/TLS certificate is attached to the Lightsail load balancer. @@ -23930,8 +27453,7 @@ type LoadBalancerTlsCertificate struct { // The issuer of the certificate. Issuer *string `locationName:"issuer" type:"string"` - // The algorithm that was used to generate the key pair (the public and private - // key). + // The algorithm used to generate the key pair (the public and private key). KeyAlgorithm *string `locationName:"keyAlgorithm" type:"string"` // The load balancer name where your SSL/TLS certificate is attached. @@ -23949,8 +27471,8 @@ type LoadBalancerTlsCertificate struct { // The timestamp when the SSL/TLS certificate is first valid. NotBefore *time.Time `locationName:"notBefore" type:"timestamp"` - // An object containing information about the status of Lightsail's managed - // renewal for the certificate. + // An object that describes the status of the certificate renewal managed by + // Lightsail. RenewalSummary *LoadBalancerTlsCertificateRenewalSummary `locationName:"renewalSummary" type:"structure"` // The resource type (e.g., LoadBalancerTlsCertificate). @@ -23977,10 +27499,12 @@ type LoadBalancerTlsCertificate struct { // * DiskSnapshot - A block storage disk snapshot ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` - // The reason the certificate was revoked. Valid values are below. + // The reason the certificate was revoked. This value is present only when the + // certificate status is REVOKED. RevocationReason *string `locationName:"revocationReason" type:"string" enum:"LoadBalancerTlsCertificateRevocationReason"` - // The timestamp when the SSL/TLS certificate was revoked. + // The timestamp when the certificate was revoked. This value is present only + // when the certificate status is REVOKED. RevokedAt *time.Time `locationName:"revokedAt" type:"timestamp"` // The serial number of the certificate. @@ -23996,11 +27520,8 @@ type LoadBalancerTlsCertificate struct { // the certificate. Subject *string `locationName:"subject" type:"string"` - // One or more domains or subdomains included in the certificate. This list - // contains the domain names that are bound to the public key that is contained - // in the certificate. The subject alternative names include the canonical domain - // name (CNAME) of the certificate and additional domain names that can be used - // to connect to the website, such as example.com, www.example.com, or m.example.com. + // An array of strings that specify the alternate domains (e.g., example2.com) + // and subdomains (e.g., blog.example.com) for the certificate. SubjectAlternativeNames []*string `locationName:"subjectAlternativeNames" type:"list"` // The support code. Include this code in your email to support when you have @@ -24270,6 +27791,26 @@ func (s *LoadBalancerTlsCertificateDomainValidationRecord) SetValue(v string) *L // 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. type LoadBalancerTlsCertificateRenewalSummary struct { _ struct{} `type:"structure"` @@ -24278,8 +27819,25 @@ type LoadBalancerTlsCertificateRenewalSummary struct { // initial validation that occurs as a result of the RequestCertificate request. DomainValidationOptions []*LoadBalancerTlsCertificateDomainValidationOption `locationName:"domainValidationOptions" type:"list"` - // The status of Lightsail's managed renewal of the certificate. Valid values - // are listed below. + // 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. RenewalStatus *string `locationName:"renewalStatus" type:"string" enum:"LoadBalancerTlsCertificateRenewalStatus"` } @@ -24851,6 +28409,63 @@ func (s *OperationFailureException) RequestID() string { return s.RespMetadata.RequestID } +// 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. +type Origin struct { + _ struct{} `type:"structure"` + + // The name of the origin resource. + Name *string `locationName:"name" type:"string"` + + // The protocol that your Amazon Lightsail distribution uses when establishing + // a connection with your origin to pull content. + ProtocolPolicy *string `locationName:"protocolPolicy" type:"string" enum:"OriginProtocolPolicyEnum"` + + // The AWS Region name of the origin resource. + RegionName *string `locationName:"regionName" type:"string" enum:"RegionName"` + + // The resource type of the origin resource (e.g., Instance). + ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` +} + +// String returns the string representation +func (s Origin) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Origin) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *Origin) SetName(v string) *Origin { + s.Name = &v + return s +} + +// SetProtocolPolicy sets the ProtocolPolicy field's value. +func (s *Origin) SetProtocolPolicy(v string) *Origin { + s.ProtocolPolicy = &v + return s +} + +// SetRegionName sets the RegionName field's value. +func (s *Origin) SetRegionName(v string) *Origin { + s.RegionName = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *Origin) SetResourceType(v string) *Origin { + s.ResourceType = &v + return s +} + // The password data for the Windows Server-based instance, including the ciphertext // and the key pair name. type PasswordData struct { @@ -25519,6 +29134,49 @@ func (s *PutInstancePublicPortsOutput) SetOperation(v *Operation) *PutInstancePu return s } +// 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. +type QueryStringObject struct { + _ struct{} `type:"structure"` + + // Indicates whether the distribution forwards and caches based on query strings. + Option *bool `locationName:"option" type:"boolean"` + + // 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. + QueryStringsAllowList []*string `locationName:"queryStringsAllowList" type:"list"` +} + +// String returns the string representation +func (s QueryStringObject) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s QueryStringObject) GoString() string { + return s.String() +} + +// SetOption sets the Option field's value. +func (s *QueryStringObject) SetOption(v bool) *QueryStringObject { + s.Option = &v + return s +} + +// SetQueryStringsAllowList sets the QueryStringsAllowList field's value. +func (s *QueryStringObject) SetQueryStringsAllowList(v []*string) *QueryStringObject { + s.QueryStringsAllowList = v + return s +} + type RebootInstanceInput struct { _ struct{} `type:"structure"` @@ -26511,72 +30169,211 @@ func (s *RelationalDatabaseSnapshot) SetSupportCode(v string) *RelationalDatabas return s } -// SetTags sets the Tags field's value. -func (s *RelationalDatabaseSnapshot) SetTags(v []*Tag) *RelationalDatabaseSnapshot { - s.Tags = v +// SetTags sets the Tags field's value. +func (s *RelationalDatabaseSnapshot) SetTags(v []*Tag) *RelationalDatabaseSnapshot { + s.Tags = v + return s +} + +type ReleaseStaticIpInput struct { + _ struct{} `type:"structure"` + + // The name of the static IP to delete. + // + // StaticIpName is a required field + StaticIpName *string `locationName:"staticIpName" type:"string" required:"true"` +} + +// String returns the string representation +func (s ReleaseStaticIpInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ReleaseStaticIpInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ReleaseStaticIpInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ReleaseStaticIpInput"} + if s.StaticIpName == nil { + invalidParams.Add(request.NewErrParamRequired("StaticIpName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetStaticIpName sets the StaticIpName field's value. +func (s *ReleaseStaticIpInput) SetStaticIpName(v string) *ReleaseStaticIpInput { + s.StaticIpName = &v + return s +} + +type ReleaseStaticIpOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operations" type:"list"` +} + +// String returns the string representation +func (s ReleaseStaticIpOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ReleaseStaticIpOutput) GoString() string { + return s.String() +} + +// SetOperations sets the Operations field's value. +func (s *ReleaseStaticIpOutput) SetOperations(v []*Operation) *ReleaseStaticIpOutput { + s.Operations = v + return s +} + +// Describes the status of a SSL/TLS certificate renewal managed by Amazon Lightsail. +type RenewalSummary struct { + _ struct{} `type:"structure"` + + // An array of objects that describe the domain validation records of the certificate. + DomainValidationRecords []*DomainValidationRecord `locationName:"domainValidationRecords" type:"list"` + + // 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. + RenewalStatus *string `locationName:"renewalStatus" type:"string" enum:"RenewalStatus"` + + // The reason for the renewal status of the certificate. + RenewalStatusReason *string `locationName:"renewalStatusReason" type:"string"` + + // The timestamp when the certificate was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` +} + +// String returns the string representation +func (s RenewalSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RenewalSummary) GoString() string { + return s.String() +} + +// SetDomainValidationRecords sets the DomainValidationRecords field's value. +func (s *RenewalSummary) SetDomainValidationRecords(v []*DomainValidationRecord) *RenewalSummary { + s.DomainValidationRecords = v + return s +} + +// SetRenewalStatus sets the RenewalStatus field's value. +func (s *RenewalSummary) SetRenewalStatus(v string) *RenewalSummary { + s.RenewalStatus = &v + return s +} + +// SetRenewalStatusReason sets the RenewalStatusReason field's value. +func (s *RenewalSummary) SetRenewalStatusReason(v string) *RenewalSummary { + s.RenewalStatusReason = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *RenewalSummary) SetUpdatedAt(v time.Time) *RenewalSummary { + s.UpdatedAt = &v return s } -type ReleaseStaticIpInput struct { +type ResetDistributionCacheInput struct { _ struct{} `type:"structure"` - // The name of the static IP to delete. + // The name of the distribution for which to reset cache. // - // StaticIpName is a required field - StaticIpName *string `locationName:"staticIpName" type:"string" required:"true"` + // Use the GetDistributions action to get a list of distribution names that + // you can specify. + DistributionName *string `locationName:"distributionName" type:"string"` } // String returns the string representation -func (s ReleaseStaticIpInput) String() string { +func (s ResetDistributionCacheInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ReleaseStaticIpInput) GoString() string { +func (s ResetDistributionCacheInput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ReleaseStaticIpInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ReleaseStaticIpInput"} - if s.StaticIpName == nil { - invalidParams.Add(request.NewErrParamRequired("StaticIpName")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetStaticIpName sets the StaticIpName field's value. -func (s *ReleaseStaticIpInput) SetStaticIpName(v string) *ReleaseStaticIpInput { - s.StaticIpName = &v +// SetDistributionName sets the DistributionName field's value. +func (s *ResetDistributionCacheInput) SetDistributionName(v string) *ResetDistributionCacheInput { + s.DistributionName = &v return s } -type ReleaseStaticIpOutput struct { +type ResetDistributionCacheOutput struct { _ struct{} `type:"structure"` + // The timestamp of the reset cache request (e.g., 1479734909.17) in Unix time + // format. + CreateTime *time.Time `locationName:"createTime" type:"timestamp"` + // 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 `locationName:"operations" type:"list"` + Operation *Operation `locationName:"operation" type:"structure"` + + // The status of the reset cache request. + Status *string `locationName:"status" type:"string"` } // String returns the string representation -func (s ReleaseStaticIpOutput) String() string { +func (s ResetDistributionCacheOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ReleaseStaticIpOutput) GoString() string { +func (s ResetDistributionCacheOutput) GoString() string { return s.String() } -// SetOperations sets the Operations field's value. -func (s *ReleaseStaticIpOutput) SetOperations(v []*Operation) *ReleaseStaticIpOutput { - s.Operations = v +// SetCreateTime sets the CreateTime field's value. +func (s *ResetDistributionCacheOutput) SetCreateTime(v time.Time) *ResetDistributionCacheOutput { + s.CreateTime = &v + return s +} + +// SetOperation sets the Operation field's value. +func (s *ResetDistributionCacheOutput) SetOperation(v *Operation) *ResetDistributionCacheOutput { + s.Operation = v + return s +} + +// SetStatus sets the Status field's value. +func (s *ResetDistributionCacheOutput) SetStatus(v string) *ResetDistributionCacheOutput { + s.Status = &v return s } @@ -26613,6 +30410,49 @@ func (s *ResourceLocation) SetRegionName(v string) *ResourceLocation { return s } +// Describes the domain name system (DNS) records to add to your domain's DNS +// to validate it for an Amazon Lightsail certificate. +type ResourceRecord struct { + _ struct{} `type:"structure"` + + // The name of the record. + Name *string `locationName:"name" type:"string"` + + // The DNS record type. + Type *string `locationName:"type" type:"string"` + + // The value for the DNS record. + Value *string `locationName:"value" type:"string"` +} + +// String returns the string representation +func (s ResourceRecord) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ResourceRecord) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *ResourceRecord) SetName(v string) *ResourceRecord { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *ResourceRecord) SetType(v string) *ResourceRecord { + s.Type = &v + return s +} + +// SetValue sets the Value field's value. +func (s *ResourceRecord) SetValue(v string) *ResourceRecord { + s.Value = &v + return s +} + type SendContactMethodVerificationInput struct { _ struct{} `type:"structure"` @@ -27516,6 +31356,184 @@ func (s *UntagResourceOutput) SetOperations(v []*Operation) *UntagResourceOutput return s } +type UpdateDistributionBundleInput struct { + _ struct{} `type:"structure"` + + // 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. + BundleId *string `locationName:"bundleId" type:"string"` + + // 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. + DistributionName *string `locationName:"distributionName" type:"string"` +} + +// String returns the string representation +func (s UpdateDistributionBundleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateDistributionBundleInput) GoString() string { + return s.String() +} + +// SetBundleId sets the BundleId field's value. +func (s *UpdateDistributionBundleInput) SetBundleId(v string) *UpdateDistributionBundleInput { + s.BundleId = &v + return s +} + +// SetDistributionName sets the DistributionName field's value. +func (s *UpdateDistributionBundleInput) SetDistributionName(v string) *UpdateDistributionBundleInput { + s.DistributionName = &v + return s +} + +type UpdateDistributionBundleOutput struct { + _ struct{} `type:"structure"` + + // Describes the API operation. + Operation *Operation `locationName:"operation" type:"structure"` +} + +// String returns the string representation +func (s UpdateDistributionBundleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateDistributionBundleOutput) GoString() string { + return s.String() +} + +// SetOperation sets the Operation field's value. +func (s *UpdateDistributionBundleOutput) SetOperation(v *Operation) *UpdateDistributionBundleOutput { + s.Operation = v + return s +} + +type UpdateDistributionInput struct { + _ struct{} `type:"structure"` + + // An object that describes the cache behavior settings for the distribution. + // + // The cacheBehaviorSettings specified in your UpdateDistributionRequest will + // replace your distribution's existing settings. + CacheBehaviorSettings *CacheSettings `locationName:"cacheBehaviorSettings" type:"structure"` + + // An array of objects that describe the per-path cache behavior for the distribution. + CacheBehaviors []*CacheBehaviorPerPath `locationName:"cacheBehaviors" type:"list"` + + // An object that describes the default cache behavior for the distribution. + DefaultCacheBehavior *CacheBehavior `locationName:"defaultCacheBehavior" type:"structure"` + + // The name of the distribution to update. + // + // Use the GetDistributions action to get a list of distribution names that + // you can specify. + // + // DistributionName is a required field + DistributionName *string `locationName:"distributionName" type:"string" required:"true"` + + // Indicates whether to enable the distribution. + IsEnabled *bool `locationName:"isEnabled" type:"boolean"` + + // 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 `locationName:"origin" type:"structure"` +} + +// String returns the string representation +func (s UpdateDistributionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateDistributionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDistributionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDistributionInput"} + if s.DistributionName == nil { + invalidParams.Add(request.NewErrParamRequired("DistributionName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCacheBehaviorSettings sets the CacheBehaviorSettings field's value. +func (s *UpdateDistributionInput) SetCacheBehaviorSettings(v *CacheSettings) *UpdateDistributionInput { + s.CacheBehaviorSettings = v + return s +} + +// SetCacheBehaviors sets the CacheBehaviors field's value. +func (s *UpdateDistributionInput) SetCacheBehaviors(v []*CacheBehaviorPerPath) *UpdateDistributionInput { + s.CacheBehaviors = v + return s +} + +// SetDefaultCacheBehavior sets the DefaultCacheBehavior field's value. +func (s *UpdateDistributionInput) SetDefaultCacheBehavior(v *CacheBehavior) *UpdateDistributionInput { + s.DefaultCacheBehavior = v + return s +} + +// SetDistributionName sets the DistributionName field's value. +func (s *UpdateDistributionInput) SetDistributionName(v string) *UpdateDistributionInput { + s.DistributionName = &v + return s +} + +// SetIsEnabled sets the IsEnabled field's value. +func (s *UpdateDistributionInput) SetIsEnabled(v bool) *UpdateDistributionInput { + s.IsEnabled = &v + return s +} + +// SetOrigin sets the Origin field's value. +func (s *UpdateDistributionInput) SetOrigin(v *InputOrigin) *UpdateDistributionInput { + s.Origin = v + return s +} + +type UpdateDistributionOutput struct { + _ struct{} `type:"structure"` + + // 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 `locationName:"operation" type:"structure"` +} + +// String returns the string representation +func (s UpdateDistributionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateDistributionOutput) GoString() string { + return s.String() +} + +// SetOperation sets the Operation field's value. +func (s *UpdateDistributionOutput) SetOperation(v *Operation) *UpdateDistributionOutput { + s.Operation = v + return s +} + type UpdateDomainEntryInput struct { _ struct{} `type:"structure"` @@ -27995,6 +32013,14 @@ const ( AutoSnapshotStatusNotFound = "NotFound" ) +const ( + // BehaviorEnumDontCache is a BehaviorEnum enum value + BehaviorEnumDontCache = "dont-cache" + + // BehaviorEnumCache is a BehaviorEnum enum value + BehaviorEnumCache = "cache" +) + const ( // BlueprintTypeOs is a BlueprintType enum value BlueprintTypeOs = "os" @@ -28003,6 +32029,29 @@ const ( BlueprintTypeApp = "app" ) +const ( + // CertificateStatusPendingValidation is a CertificateStatus enum value + CertificateStatusPendingValidation = "PENDING_VALIDATION" + + // CertificateStatusIssued is a CertificateStatus enum value + CertificateStatusIssued = "ISSUED" + + // CertificateStatusInactive is a CertificateStatus enum value + CertificateStatusInactive = "INACTIVE" + + // CertificateStatusExpired is a CertificateStatus enum value + CertificateStatusExpired = "EXPIRED" + + // CertificateStatusValidationTimedOut is a CertificateStatus enum value + CertificateStatusValidationTimedOut = "VALIDATION_TIMED_OUT" + + // CertificateStatusRevoked is a CertificateStatus enum value + CertificateStatusRevoked = "REVOKED" + + // CertificateStatusFailed is a CertificateStatus enum value + CertificateStatusFailed = "FAILED" +) + const ( // CloudFormationStackRecordSourceTypeExportSnapshotRecord is a CloudFormationStackRecordSourceType enum value CloudFormationStackRecordSourceTypeExportSnapshotRecord = "ExportSnapshotRecord" @@ -28077,6 +32126,26 @@ const ( DiskStateUnknown = "unknown" ) +const ( + // DistributionMetricNameRequests is a DistributionMetricName enum value + DistributionMetricNameRequests = "Requests" + + // DistributionMetricNameBytesDownloaded is a DistributionMetricName enum value + DistributionMetricNameBytesDownloaded = "BytesDownloaded" + + // DistributionMetricNameBytesUploaded is a DistributionMetricName enum value + DistributionMetricNameBytesUploaded = "BytesUploaded" + + // DistributionMetricNameTotalErrorRate is a DistributionMetricName enum value + DistributionMetricNameTotalErrorRate = "TotalErrorRate" + + // DistributionMetricNameHttp4xxErrorRate is a DistributionMetricName enum value + DistributionMetricNameHttp4xxErrorRate = "Http4xxErrorRate" + + // DistributionMetricNameHttp5xxErrorRate is a DistributionMetricName enum value + DistributionMetricNameHttp5xxErrorRate = "Http5xxErrorRate" +) + const ( // ExportSnapshotRecordSourceTypeInstanceSnapshot is a ExportSnapshotRecordSourceType enum value ExportSnapshotRecordSourceTypeInstanceSnapshot = "InstanceSnapshot" @@ -28085,6 +32154,64 @@ const ( ExportSnapshotRecordSourceTypeDiskSnapshot = "DiskSnapshot" ) +const ( + // ForwardValuesNone is a ForwardValues enum value + ForwardValuesNone = "none" + + // ForwardValuesAllowList is a ForwardValues enum value + ForwardValuesAllowList = "allow-list" + + // ForwardValuesAll is a ForwardValues enum value + ForwardValuesAll = "all" +) + +const ( + // HeaderEnumAccept is a HeaderEnum enum value + HeaderEnumAccept = "Accept" + + // HeaderEnumAcceptCharset is a HeaderEnum enum value + HeaderEnumAcceptCharset = "Accept-Charset" + + // HeaderEnumAcceptDatetime is a HeaderEnum enum value + HeaderEnumAcceptDatetime = "Accept-Datetime" + + // HeaderEnumAcceptEncoding is a HeaderEnum enum value + HeaderEnumAcceptEncoding = "Accept-Encoding" + + // HeaderEnumAcceptLanguage is a HeaderEnum enum value + HeaderEnumAcceptLanguage = "Accept-Language" + + // HeaderEnumAuthorization is a HeaderEnum enum value + HeaderEnumAuthorization = "Authorization" + + // HeaderEnumCloudFrontForwardedProto is a HeaderEnum enum value + HeaderEnumCloudFrontForwardedProto = "CloudFront-Forwarded-Proto" + + // HeaderEnumCloudFrontIsDesktopViewer is a HeaderEnum enum value + HeaderEnumCloudFrontIsDesktopViewer = "CloudFront-Is-Desktop-Viewer" + + // HeaderEnumCloudFrontIsMobileViewer is a HeaderEnum enum value + HeaderEnumCloudFrontIsMobileViewer = "CloudFront-Is-Mobile-Viewer" + + // HeaderEnumCloudFrontIsSmartTvViewer is a HeaderEnum enum value + HeaderEnumCloudFrontIsSmartTvViewer = "CloudFront-Is-SmartTV-Viewer" + + // HeaderEnumCloudFrontIsTabletViewer is a HeaderEnum enum value + HeaderEnumCloudFrontIsTabletViewer = "CloudFront-Is-Tablet-Viewer" + + // HeaderEnumCloudFrontViewerCountry is a HeaderEnum enum value + HeaderEnumCloudFrontViewerCountry = "CloudFront-Viewer-Country" + + // HeaderEnumHost is a HeaderEnum enum value + HeaderEnumHost = "Host" + + // HeaderEnumOrigin is a HeaderEnum enum value + HeaderEnumOrigin = "Origin" + + // HeaderEnumReferer is a HeaderEnum enum value + HeaderEnumReferer = "Referer" +) + const ( // InstanceAccessProtocolSsh is a InstanceAccessProtocol enum value InstanceAccessProtocolSsh = "ssh" @@ -28740,6 +32867,41 @@ const ( // OperationTypeDeleteContactMethod is a OperationType enum value OperationTypeDeleteContactMethod = "DeleteContactMethod" + + // OperationTypeCreateDistribution is a OperationType enum value + OperationTypeCreateDistribution = "CreateDistribution" + + // OperationTypeUpdateDistribution is a OperationType enum value + OperationTypeUpdateDistribution = "UpdateDistribution" + + // OperationTypeDeleteDistribution is a OperationType enum value + OperationTypeDeleteDistribution = "DeleteDistribution" + + // OperationTypeResetDistributionCache is a OperationType enum value + OperationTypeResetDistributionCache = "ResetDistributionCache" + + // OperationTypeAttachCertificateToDistribution is a OperationType enum value + OperationTypeAttachCertificateToDistribution = "AttachCertificateToDistribution" + + // OperationTypeDetachCertificateFromDistribution is a OperationType enum value + OperationTypeDetachCertificateFromDistribution = "DetachCertificateFromDistribution" + + // OperationTypeUpdateDistributionBundle is a OperationType enum value + OperationTypeUpdateDistributionBundle = "UpdateDistributionBundle" + + // OperationTypeCreateCertificate is a OperationType enum value + OperationTypeCreateCertificate = "CreateCertificate" + + // OperationTypeDeleteCertificate is a OperationType enum value + OperationTypeDeleteCertificate = "DeleteCertificate" +) + +const ( + // OriginProtocolPolicyEnumHttpOnly is a OriginProtocolPolicyEnum enum value + OriginProtocolPolicyEnumHttpOnly = "http-only" + + // OriginProtocolPolicyEnumHttpsOnly is a OriginProtocolPolicyEnum enum value + OriginProtocolPolicyEnumHttpsOnly = "https-only" ) const ( @@ -28863,6 +33025,20 @@ const ( RelationalDatabasePasswordVersionPending = "PENDING" ) +const ( + // RenewalStatusPendingAutoRenewal is a RenewalStatus enum value + RenewalStatusPendingAutoRenewal = "PendingAutoRenewal" + + // RenewalStatusPendingValidation is a RenewalStatus enum value + RenewalStatusPendingValidation = "PendingValidation" + + // RenewalStatusSuccess is a RenewalStatus enum value + RenewalStatusSuccess = "Success" + + // RenewalStatusFailed is a RenewalStatus enum value + RenewalStatusFailed = "Failed" +) + const ( // ResourceTypeInstance is a ResourceType enum value ResourceTypeInstance = "Instance" @@ -28911,6 +33087,12 @@ const ( // ResourceTypeContactMethod is a ResourceType enum value ResourceTypeContactMethod = "ContactMethod" + + // ResourceTypeDistribution is a ResourceType enum value + ResourceTypeDistribution = "Distribution" + + // ResourceTypeCertificate is a ResourceType enum value + ResourceTypeCertificate = "Certificate" ) const ( diff --git a/service/lightsail/doc.go b/service/lightsail/doc.go index f806bbf094f..5947ff0d91e 100644 --- a/service/lightsail/doc.go +++ b/service/lightsail/doc.go @@ -3,19 +3,23 @@ // Package lightsail provides the client and types for making API // requests to Amazon Lightsail. // -// Amazon Lightsail is the easiest way to get started with AWS for developers -// who just need virtual private servers. Lightsail includes everything you -// need to launch your project quickly - a virtual machine, a managed database, -// SSD-based storage, data transfer, DNS management, and a static IP - for a -// low, predictable price. You manage those Lightsail servers through the Lightsail -// console or by using the API or command-line interface (CLI). -// -// For more information about Lightsail concepts and tasks, see the Lightsail -// Dev Guide (https://lightsail.aws.amazon.com/ls/docs/all). -// -// To use the Lightsail API or the CLI, you will need to use AWS Identity and -// Access Management (IAM) to generate access keys. For details about how to -// set this up, see the Lightsail Dev Guide (http://lightsail.aws.amazon.com/ls/docs/how-to/article/lightsail-how-to-set-up-access-keys-to-use-sdk-api-cli). +// 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. +// +// 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 and tasks, see the Lightsail Dev Guide (http://lightsail.aws.amazon.com/ls/docs/how-to/article/lightsail-how-to-set-up-access-keys-to-use-sdk-api-cli). +// +// 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 Quotas (https://docs.aws.amazon.com/general/latest/gr/lightsail.html) +// in the AWS General Reference. // // See https://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28 for more information on this service. // diff --git a/service/lightsail/lightsailiface/interface.go b/service/lightsail/lightsailiface/interface.go index 52720a878fa..f4b7499b575 100644 --- a/service/lightsail/lightsailiface/interface.go +++ b/service/lightsail/lightsailiface/interface.go @@ -64,6 +64,10 @@ type LightsailAPI interface { AllocateStaticIpWithContext(aws.Context, *lightsail.AllocateStaticIpInput, ...request.Option) (*lightsail.AllocateStaticIpOutput, error) AllocateStaticIpRequest(*lightsail.AllocateStaticIpInput) (*request.Request, *lightsail.AllocateStaticIpOutput) + AttachCertificateToDistribution(*lightsail.AttachCertificateToDistributionInput) (*lightsail.AttachCertificateToDistributionOutput, error) + AttachCertificateToDistributionWithContext(aws.Context, *lightsail.AttachCertificateToDistributionInput, ...request.Option) (*lightsail.AttachCertificateToDistributionOutput, error) + AttachCertificateToDistributionRequest(*lightsail.AttachCertificateToDistributionInput) (*request.Request, *lightsail.AttachCertificateToDistributionOutput) + AttachDisk(*lightsail.AttachDiskInput) (*lightsail.AttachDiskOutput, error) AttachDiskWithContext(aws.Context, *lightsail.AttachDiskInput, ...request.Option) (*lightsail.AttachDiskOutput, error) AttachDiskRequest(*lightsail.AttachDiskInput) (*request.Request, *lightsail.AttachDiskOutput) @@ -88,6 +92,10 @@ type LightsailAPI interface { CopySnapshotWithContext(aws.Context, *lightsail.CopySnapshotInput, ...request.Option) (*lightsail.CopySnapshotOutput, error) CopySnapshotRequest(*lightsail.CopySnapshotInput) (*request.Request, *lightsail.CopySnapshotOutput) + CreateCertificate(*lightsail.CreateCertificateInput) (*lightsail.CreateCertificateOutput, error) + CreateCertificateWithContext(aws.Context, *lightsail.CreateCertificateInput, ...request.Option) (*lightsail.CreateCertificateOutput, error) + CreateCertificateRequest(*lightsail.CreateCertificateInput) (*request.Request, *lightsail.CreateCertificateOutput) + CreateCloudFormationStack(*lightsail.CreateCloudFormationStackInput) (*lightsail.CreateCloudFormationStackOutput, error) CreateCloudFormationStackWithContext(aws.Context, *lightsail.CreateCloudFormationStackInput, ...request.Option) (*lightsail.CreateCloudFormationStackOutput, error) CreateCloudFormationStackRequest(*lightsail.CreateCloudFormationStackInput) (*request.Request, *lightsail.CreateCloudFormationStackOutput) @@ -108,6 +116,10 @@ type LightsailAPI interface { CreateDiskSnapshotWithContext(aws.Context, *lightsail.CreateDiskSnapshotInput, ...request.Option) (*lightsail.CreateDiskSnapshotOutput, error) CreateDiskSnapshotRequest(*lightsail.CreateDiskSnapshotInput) (*request.Request, *lightsail.CreateDiskSnapshotOutput) + CreateDistribution(*lightsail.CreateDistributionInput) (*lightsail.CreateDistributionOutput, error) + CreateDistributionWithContext(aws.Context, *lightsail.CreateDistributionInput, ...request.Option) (*lightsail.CreateDistributionOutput, error) + CreateDistributionRequest(*lightsail.CreateDistributionInput) (*request.Request, *lightsail.CreateDistributionOutput) + CreateDomain(*lightsail.CreateDomainInput) (*lightsail.CreateDomainOutput, error) CreateDomainWithContext(aws.Context, *lightsail.CreateDomainInput, ...request.Option) (*lightsail.CreateDomainOutput, error) CreateDomainRequest(*lightsail.CreateDomainInput) (*request.Request, *lightsail.CreateDomainOutput) @@ -160,6 +172,10 @@ type LightsailAPI interface { DeleteAutoSnapshotWithContext(aws.Context, *lightsail.DeleteAutoSnapshotInput, ...request.Option) (*lightsail.DeleteAutoSnapshotOutput, error) DeleteAutoSnapshotRequest(*lightsail.DeleteAutoSnapshotInput) (*request.Request, *lightsail.DeleteAutoSnapshotOutput) + DeleteCertificate(*lightsail.DeleteCertificateInput) (*lightsail.DeleteCertificateOutput, error) + DeleteCertificateWithContext(aws.Context, *lightsail.DeleteCertificateInput, ...request.Option) (*lightsail.DeleteCertificateOutput, error) + DeleteCertificateRequest(*lightsail.DeleteCertificateInput) (*request.Request, *lightsail.DeleteCertificateOutput) + DeleteContactMethod(*lightsail.DeleteContactMethodInput) (*lightsail.DeleteContactMethodOutput, error) DeleteContactMethodWithContext(aws.Context, *lightsail.DeleteContactMethodInput, ...request.Option) (*lightsail.DeleteContactMethodOutput, error) DeleteContactMethodRequest(*lightsail.DeleteContactMethodInput) (*request.Request, *lightsail.DeleteContactMethodOutput) @@ -172,6 +188,10 @@ type LightsailAPI interface { DeleteDiskSnapshotWithContext(aws.Context, *lightsail.DeleteDiskSnapshotInput, ...request.Option) (*lightsail.DeleteDiskSnapshotOutput, error) DeleteDiskSnapshotRequest(*lightsail.DeleteDiskSnapshotInput) (*request.Request, *lightsail.DeleteDiskSnapshotOutput) + DeleteDistribution(*lightsail.DeleteDistributionInput) (*lightsail.DeleteDistributionOutput, error) + DeleteDistributionWithContext(aws.Context, *lightsail.DeleteDistributionInput, ...request.Option) (*lightsail.DeleteDistributionOutput, error) + DeleteDistributionRequest(*lightsail.DeleteDistributionInput) (*request.Request, *lightsail.DeleteDistributionOutput) + DeleteDomain(*lightsail.DeleteDomainInput) (*lightsail.DeleteDomainOutput, error) DeleteDomainWithContext(aws.Context, *lightsail.DeleteDomainInput, ...request.Option) (*lightsail.DeleteDomainOutput, error) DeleteDomainRequest(*lightsail.DeleteDomainInput) (*request.Request, *lightsail.DeleteDomainOutput) @@ -212,6 +232,10 @@ type LightsailAPI interface { DeleteRelationalDatabaseSnapshotWithContext(aws.Context, *lightsail.DeleteRelationalDatabaseSnapshotInput, ...request.Option) (*lightsail.DeleteRelationalDatabaseSnapshotOutput, error) DeleteRelationalDatabaseSnapshotRequest(*lightsail.DeleteRelationalDatabaseSnapshotInput) (*request.Request, *lightsail.DeleteRelationalDatabaseSnapshotOutput) + DetachCertificateFromDistribution(*lightsail.DetachCertificateFromDistributionInput) (*lightsail.DetachCertificateFromDistributionOutput, error) + DetachCertificateFromDistributionWithContext(aws.Context, *lightsail.DetachCertificateFromDistributionInput, ...request.Option) (*lightsail.DetachCertificateFromDistributionOutput, error) + DetachCertificateFromDistributionRequest(*lightsail.DetachCertificateFromDistributionInput) (*request.Request, *lightsail.DetachCertificateFromDistributionOutput) + DetachDisk(*lightsail.DetachDiskInput) (*lightsail.DetachDiskOutput, error) DetachDiskWithContext(aws.Context, *lightsail.DetachDiskInput, ...request.Option) (*lightsail.DetachDiskOutput, error) DetachDiskRequest(*lightsail.DetachDiskInput) (*request.Request, *lightsail.DetachDiskOutput) @@ -260,6 +284,10 @@ type LightsailAPI interface { GetBundlesWithContext(aws.Context, *lightsail.GetBundlesInput, ...request.Option) (*lightsail.GetBundlesOutput, error) GetBundlesRequest(*lightsail.GetBundlesInput) (*request.Request, *lightsail.GetBundlesOutput) + GetCertificates(*lightsail.GetCertificatesInput) (*lightsail.GetCertificatesOutput, error) + GetCertificatesWithContext(aws.Context, *lightsail.GetCertificatesInput, ...request.Option) (*lightsail.GetCertificatesOutput, error) + GetCertificatesRequest(*lightsail.GetCertificatesInput) (*request.Request, *lightsail.GetCertificatesOutput) + GetCloudFormationStackRecords(*lightsail.GetCloudFormationStackRecordsInput) (*lightsail.GetCloudFormationStackRecordsOutput, error) GetCloudFormationStackRecordsWithContext(aws.Context, *lightsail.GetCloudFormationStackRecordsInput, ...request.Option) (*lightsail.GetCloudFormationStackRecordsOutput, error) GetCloudFormationStackRecordsRequest(*lightsail.GetCloudFormationStackRecordsInput) (*request.Request, *lightsail.GetCloudFormationStackRecordsOutput) @@ -284,6 +312,22 @@ type LightsailAPI interface { GetDisksWithContext(aws.Context, *lightsail.GetDisksInput, ...request.Option) (*lightsail.GetDisksOutput, error) GetDisksRequest(*lightsail.GetDisksInput) (*request.Request, *lightsail.GetDisksOutput) + GetDistributionBundles(*lightsail.GetDistributionBundlesInput) (*lightsail.GetDistributionBundlesOutput, error) + GetDistributionBundlesWithContext(aws.Context, *lightsail.GetDistributionBundlesInput, ...request.Option) (*lightsail.GetDistributionBundlesOutput, error) + GetDistributionBundlesRequest(*lightsail.GetDistributionBundlesInput) (*request.Request, *lightsail.GetDistributionBundlesOutput) + + GetDistributionLatestCacheReset(*lightsail.GetDistributionLatestCacheResetInput) (*lightsail.GetDistributionLatestCacheResetOutput, error) + GetDistributionLatestCacheResetWithContext(aws.Context, *lightsail.GetDistributionLatestCacheResetInput, ...request.Option) (*lightsail.GetDistributionLatestCacheResetOutput, error) + GetDistributionLatestCacheResetRequest(*lightsail.GetDistributionLatestCacheResetInput) (*request.Request, *lightsail.GetDistributionLatestCacheResetOutput) + + GetDistributionMetricData(*lightsail.GetDistributionMetricDataInput) (*lightsail.GetDistributionMetricDataOutput, error) + GetDistributionMetricDataWithContext(aws.Context, *lightsail.GetDistributionMetricDataInput, ...request.Option) (*lightsail.GetDistributionMetricDataOutput, error) + GetDistributionMetricDataRequest(*lightsail.GetDistributionMetricDataInput) (*request.Request, *lightsail.GetDistributionMetricDataOutput) + + GetDistributions(*lightsail.GetDistributionsInput) (*lightsail.GetDistributionsOutput, error) + GetDistributionsWithContext(aws.Context, *lightsail.GetDistributionsInput, ...request.Option) (*lightsail.GetDistributionsOutput, error) + GetDistributionsRequest(*lightsail.GetDistributionsInput) (*request.Request, *lightsail.GetDistributionsOutput) + GetDomain(*lightsail.GetDomainInput) (*lightsail.GetDomainOutput, error) GetDomainWithContext(aws.Context, *lightsail.GetDomainInput, ...request.Option) (*lightsail.GetDomainOutput, error) GetDomainRequest(*lightsail.GetDomainInput) (*request.Request, *lightsail.GetDomainOutput) @@ -460,6 +504,10 @@ type LightsailAPI interface { ReleaseStaticIpWithContext(aws.Context, *lightsail.ReleaseStaticIpInput, ...request.Option) (*lightsail.ReleaseStaticIpOutput, error) ReleaseStaticIpRequest(*lightsail.ReleaseStaticIpInput) (*request.Request, *lightsail.ReleaseStaticIpOutput) + ResetDistributionCache(*lightsail.ResetDistributionCacheInput) (*lightsail.ResetDistributionCacheOutput, error) + ResetDistributionCacheWithContext(aws.Context, *lightsail.ResetDistributionCacheInput, ...request.Option) (*lightsail.ResetDistributionCacheOutput, error) + ResetDistributionCacheRequest(*lightsail.ResetDistributionCacheInput) (*request.Request, *lightsail.ResetDistributionCacheOutput) + SendContactMethodVerification(*lightsail.SendContactMethodVerificationInput) (*lightsail.SendContactMethodVerificationOutput, error) SendContactMethodVerificationWithContext(aws.Context, *lightsail.SendContactMethodVerificationInput, ...request.Option) (*lightsail.SendContactMethodVerificationOutput, error) SendContactMethodVerificationRequest(*lightsail.SendContactMethodVerificationInput) (*request.Request, *lightsail.SendContactMethodVerificationOutput) @@ -496,6 +544,14 @@ type LightsailAPI interface { UntagResourceWithContext(aws.Context, *lightsail.UntagResourceInput, ...request.Option) (*lightsail.UntagResourceOutput, error) UntagResourceRequest(*lightsail.UntagResourceInput) (*request.Request, *lightsail.UntagResourceOutput) + UpdateDistribution(*lightsail.UpdateDistributionInput) (*lightsail.UpdateDistributionOutput, error) + UpdateDistributionWithContext(aws.Context, *lightsail.UpdateDistributionInput, ...request.Option) (*lightsail.UpdateDistributionOutput, error) + UpdateDistributionRequest(*lightsail.UpdateDistributionInput) (*request.Request, *lightsail.UpdateDistributionOutput) + + UpdateDistributionBundle(*lightsail.UpdateDistributionBundleInput) (*lightsail.UpdateDistributionBundleOutput, error) + UpdateDistributionBundleWithContext(aws.Context, *lightsail.UpdateDistributionBundleInput, ...request.Option) (*lightsail.UpdateDistributionBundleOutput, error) + UpdateDistributionBundleRequest(*lightsail.UpdateDistributionBundleInput) (*request.Request, *lightsail.UpdateDistributionBundleOutput) + UpdateDomainEntry(*lightsail.UpdateDomainEntryInput) (*lightsail.UpdateDomainEntryOutput, error) UpdateDomainEntryWithContext(aws.Context, *lightsail.UpdateDomainEntryInput, ...request.Option) (*lightsail.UpdateDomainEntryOutput, error) UpdateDomainEntryRequest(*lightsail.UpdateDomainEntryInput) (*request.Request, *lightsail.UpdateDomainEntryOutput) diff --git a/service/workspaces/api.go b/service/workspaces/api.go index 16866ca6bec..fa50e91e039 100644 --- a/service/workspaces/api.go +++ b/service/workspaces/api.go @@ -793,8 +793,8 @@ func (c *WorkSpaces) DeleteWorkspaceImageRequest(input *DeleteWorkspaceImageInpu // DeleteWorkspaceImage API operation for Amazon WorkSpaces. // // Deletes the specified image from your account. To delete an image, you must -// first delete any bundles that are associated with the image and un-share -// the image if it is shared with other accounts. +// first delete any bundles that are associated with the image and unshare the +// image if it is shared with other accounts. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1611,6 +1611,92 @@ func (c *WorkSpaces) DescribeWorkspaceDirectoriesPagesWithContext(ctx aws.Contex return p.Err() } +const opDescribeWorkspaceImagePermissions = "DescribeWorkspaceImagePermissions" + +// DescribeWorkspaceImagePermissionsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeWorkspaceImagePermissions operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DescribeWorkspaceImagePermissions for more information on using the DescribeWorkspaceImagePermissions +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DescribeWorkspaceImagePermissionsRequest method. +// req, resp := client.DescribeWorkspaceImagePermissionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceImagePermissions +func (c *WorkSpaces) DescribeWorkspaceImagePermissionsRequest(input *DescribeWorkspaceImagePermissionsInput) (req *request.Request, output *DescribeWorkspaceImagePermissionsOutput) { + op := &request.Operation{ + Name: opDescribeWorkspaceImagePermissions, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeWorkspaceImagePermissionsInput{} + } + + output = &DescribeWorkspaceImagePermissionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeWorkspaceImagePermissions API operation for Amazon WorkSpaces. +// +// Describes the permissions that the owner of an image has granted to other +// AWS accounts for an image. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces's +// API operation DescribeWorkspaceImagePermissions for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// The resource could not be found. +// +// * AccessDeniedException +// The user is not authorized to access a resource. +// +// * InvalidParameterValuesException +// One or more parameter values are not valid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceImagePermissions +func (c *WorkSpaces) DescribeWorkspaceImagePermissions(input *DescribeWorkspaceImagePermissionsInput) (*DescribeWorkspaceImagePermissionsOutput, error) { + req, out := c.DescribeWorkspaceImagePermissionsRequest(input) + return out, req.Send() +} + +// DescribeWorkspaceImagePermissionsWithContext is the same as DescribeWorkspaceImagePermissions with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeWorkspaceImagePermissions for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WorkSpaces) DescribeWorkspaceImagePermissionsWithContext(ctx aws.Context, input *DescribeWorkspaceImagePermissionsInput, opts ...request.Option) (*DescribeWorkspaceImagePermissionsOutput, error) { + req, out := c.DescribeWorkspaceImagePermissionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeWorkspaceImages = "DescribeWorkspaceImages" // DescribeWorkspaceImagesRequest generates a "aws/request.Request" representing the @@ -2860,7 +2946,9 @@ func (c *WorkSpaces) ModifyWorkspacePropertiesRequest(input *ModifyWorkspaceProp // ModifyWorkspaceProperties API operation for Amazon WorkSpaces. // -// Modifies the specified WorkSpace properties. +// Modifies the specified WorkSpace properties. For important information about +// how to modify the size of the root and user volumes, see Modify a WorkSpace +// (https://docs.aws.amazon.com/workspaces/latest/adminguide/modify-workspaces.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3133,7 +3221,7 @@ func (c *WorkSpaces) RebuildWorkspacesRequest(input *RebuildWorkspacesInput) (re // Rebuilds the specified WorkSpace. // // You cannot rebuild a WorkSpace unless its state is AVAILABLE, ERROR, UNHEALTHY, -// or STOPPED. +// STOPPED, or REBOOTING. // // Rebuilding a WorkSpace is a potentially destructive action that can result // in the loss of data. For more information, see Rebuild a WorkSpace (https://docs.aws.amazon.com/workspaces/latest/adminguide/reset-workspace.html). @@ -3794,6 +3882,109 @@ func (c *WorkSpaces) UpdateRulesOfIpGroupWithContext(ctx aws.Context, input *Upd return out, req.Send() } +const opUpdateWorkspaceImagePermission = "UpdateWorkspaceImagePermission" + +// UpdateWorkspaceImagePermissionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateWorkspaceImagePermission operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateWorkspaceImagePermission for more information on using the UpdateWorkspaceImagePermission +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateWorkspaceImagePermissionRequest method. +// req, resp := client.UpdateWorkspaceImagePermissionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceImagePermission +func (c *WorkSpaces) UpdateWorkspaceImagePermissionRequest(input *UpdateWorkspaceImagePermissionInput) (req *request.Request, output *UpdateWorkspaceImagePermissionOutput) { + op := &request.Operation{ + Name: opUpdateWorkspaceImagePermission, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateWorkspaceImagePermissionInput{} + } + + output = &UpdateWorkspaceImagePermissionOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateWorkspaceImagePermission API operation for Amazon WorkSpaces. +// +// Shares or unshares an image with one account by specifying whether that account +// has permission to copy the image. If the copy image permission is granted, +// the image is shared with that account. If the copy image permission is revoked, +// the image is unshared with the account. +// +// * To delete an image that has been shared, you must unshare the image +// before you delete it. +// +// * Sharing Bring Your Own License (BYOL) images across AWS accounts isn't +// supported at this time in the AWS GovCloud (US-West) Region. To share +// BYOL images across accounts in the AWS GovCloud (US-West) Region, contact +// AWS Support. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkSpaces's +// API operation UpdateWorkspaceImagePermission for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// The resource could not be found. +// +// * ResourceUnavailableException +// The specified resource is not available. +// +// * AccessDeniedException +// The user is not authorized to access a resource. +// +// * InvalidParameterValuesException +// One or more parameter values are not valid. +// +// * OperationNotSupportedException +// This operation is not supported. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceImagePermission +func (c *WorkSpaces) UpdateWorkspaceImagePermission(input *UpdateWorkspaceImagePermissionInput) (*UpdateWorkspaceImagePermissionOutput, error) { + req, out := c.UpdateWorkspaceImagePermissionRequest(input) + return out, req.Send() +} + +// UpdateWorkspaceImagePermissionWithContext is the same as UpdateWorkspaceImagePermission with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateWorkspaceImagePermission for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WorkSpaces) UpdateWorkspaceImagePermissionWithContext(ctx aws.Context, input *UpdateWorkspaceImagePermissionInput, opts ...request.Option) (*UpdateWorkspaceImagePermissionOutput, error) { + req, out := c.UpdateWorkspaceImagePermissionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // The user is not authorized to access a resource. type AccessDeniedException struct { _ struct{} `type:"structure"` @@ -4539,8 +4730,9 @@ func (s *CreateWorkspacesOutput) SetPendingRequests(v []*Workspace) *CreateWorks type DefaultWorkspaceCreationProperties struct { _ struct{} `type:"structure"` - // The identifier of any security groups to apply to WorkSpaces when they are - // created. + // The identifier of the default security group to apply to WorkSpaces when + // they are created. For more information, see Security Groups for Your WorkSpaces + // (https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces-security-groups.html). CustomSecurityGroupId *string `min:"11" type:"string"` // The organizational unit (OU) in the directory for the WorkSpace machine accounts. @@ -5382,12 +5574,120 @@ func (s *DescribeWorkspaceDirectoriesOutput) SetNextToken(v string) *DescribeWor return s } +type DescribeWorkspaceImagePermissionsInput struct { + _ struct{} `type:"structure"` + + // The identifier of the image. + // + // ImageId is a required field + ImageId *string `type:"string" required:"true"` + + // The maximum number of items to return. + MaxResults *int64 `min:"1" type:"integer"` + + // If you received a NextToken from a previous call that was paginated, provide + // this token to receive the next set of results. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DescribeWorkspaceImagePermissionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeWorkspaceImagePermissionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeWorkspaceImagePermissionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspaceImagePermissionsInput"} + if s.ImageId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageId")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetImageId sets the ImageId field's value. +func (s *DescribeWorkspaceImagePermissionsInput) SetImageId(v string) *DescribeWorkspaceImagePermissionsInput { + s.ImageId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeWorkspaceImagePermissionsInput) SetMaxResults(v int64) *DescribeWorkspaceImagePermissionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeWorkspaceImagePermissionsInput) SetNextToken(v string) *DescribeWorkspaceImagePermissionsInput { + s.NextToken = &v + return s +} + +type DescribeWorkspaceImagePermissionsOutput struct { + _ struct{} `type:"structure"` + + // The identifier of the image. + ImageId *string `type:"string"` + + // The identifiers of the AWS accounts that the image has been shared with. + ImagePermissions []*ImagePermission `type:"list"` + + // The token to use to retrieve the next set of results, or null if no more + // results are available. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s DescribeWorkspaceImagePermissionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeWorkspaceImagePermissionsOutput) GoString() string { + return s.String() +} + +// SetImageId sets the ImageId field's value. +func (s *DescribeWorkspaceImagePermissionsOutput) SetImageId(v string) *DescribeWorkspaceImagePermissionsOutput { + s.ImageId = &v + return s +} + +// SetImagePermissions sets the ImagePermissions field's value. +func (s *DescribeWorkspaceImagePermissionsOutput) SetImagePermissions(v []*ImagePermission) *DescribeWorkspaceImagePermissionsOutput { + s.ImagePermissions = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeWorkspaceImagePermissionsOutput) SetNextToken(v string) *DescribeWorkspaceImagePermissionsOutput { + s.NextToken = &v + return s +} + type DescribeWorkspaceImagesInput struct { _ struct{} `type:"structure"` // The identifier of the image. ImageIds []*string `min:"1" type:"list"` + // The type (owned or shared) of the image. + ImageType *string `type:"string" enum:"ImageType"` + // The maximum number of items to return. MaxResults *int64 `min:"1" type:"integer"` @@ -5431,6 +5731,12 @@ func (s *DescribeWorkspaceImagesInput) SetImageIds(v []*string) *DescribeWorkspa return s } +// SetImageType sets the ImageType field's value. +func (s *DescribeWorkspaceImagesInput) SetImageType(v string) *DescribeWorkspaceImagesInput { + s.ImageType = &v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *DescribeWorkspaceImagesInput) SetMaxResults(v int64) *DescribeWorkspaceImagesInput { s.MaxResults = &v @@ -5925,6 +6231,31 @@ func (s *FailedWorkspaceChangeRequest) SetWorkspaceId(v string) *FailedWorkspace return s } +// Describes the AWS accounts that have been granted permission to use a shared +// image. +type ImagePermission struct { + _ struct{} `type:"structure"` + + // The identifier of the AWS account that an image has been shared with. + SharedAccountId *string `type:"string"` +} + +// String returns the string representation +func (s ImagePermission) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ImagePermission) GoString() string { + return s.String() +} + +// SetSharedAccountId sets the SharedAccountId field's value. +func (s *ImagePermission) SetSharedAccountId(v string) *ImagePermission { + s.SharedAccountId = &v + return s +} + type ImportWorkspaceImageInput struct { _ struct{} `type:"structure"` @@ -8523,6 +8854,87 @@ func (s UpdateRulesOfIpGroupOutput) GoString() string { return s.String() } +type UpdateWorkspaceImagePermissionInput struct { + _ struct{} `type:"structure"` + + // The permission to copy the image. This permission can be revoked only after + // an image has been shared. + // + // AllowCopyImage is a required field + AllowCopyImage *bool `type:"boolean" required:"true"` + + // The identifier of the image. + // + // ImageId is a required field + ImageId *string `type:"string" required:"true"` + + // The identifier of the AWS account to share or unshare the image with. + // + // SharedAccountId is a required field + SharedAccountId *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s UpdateWorkspaceImagePermissionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateWorkspaceImagePermissionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateWorkspaceImagePermissionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateWorkspaceImagePermissionInput"} + if s.AllowCopyImage == nil { + invalidParams.Add(request.NewErrParamRequired("AllowCopyImage")) + } + if s.ImageId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageId")) + } + if s.SharedAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("SharedAccountId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowCopyImage sets the AllowCopyImage field's value. +func (s *UpdateWorkspaceImagePermissionInput) SetAllowCopyImage(v bool) *UpdateWorkspaceImagePermissionInput { + s.AllowCopyImage = &v + return s +} + +// SetImageId sets the ImageId field's value. +func (s *UpdateWorkspaceImagePermissionInput) SetImageId(v string) *UpdateWorkspaceImagePermissionInput { + s.ImageId = &v + return s +} + +// SetSharedAccountId sets the SharedAccountId field's value. +func (s *UpdateWorkspaceImagePermissionInput) SetSharedAccountId(v string) *UpdateWorkspaceImagePermissionInput { + s.SharedAccountId = &v + return s +} + +type UpdateWorkspaceImagePermissionOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s UpdateWorkspaceImagePermissionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateWorkspaceImagePermissionOutput) GoString() string { + return s.String() +} + // Describes the user storage for a WorkSpace bundle. type UserStorage struct { _ struct{} `type:"structure"` @@ -9175,6 +9587,11 @@ func (s *WorkspaceDirectory) SetWorkspaceSecurityGroupId(v string) *WorkspaceDir type WorkspaceImage struct { _ struct{} `type:"structure"` + // The date when the image was created. If the image has been shared, the AWS + // account that the image has been shared with sees the original creation date + // of the image. + Created *time.Time `type:"timestamp"` + // The description of the image. Description *string `min:"1" type:"string"` @@ -9193,6 +9610,9 @@ type WorkspaceImage struct { // The operating system that the image is running. OperatingSystem *OperatingSystem `type:"structure"` + // The identifier of the AWS account that owns the image. + OwnerAccountId *string `type:"string"` + // Specifies whether the image is running on dedicated hardware. When Bring // Your Own License (BYOL) is enabled, this value is set to DEDICATED. For more // information, see Bring Your Own Windows Desktop Images (https://docs.aws.amazon.com/workspaces/latest/adminguide/byol-windows-images.html). @@ -9212,6 +9632,12 @@ func (s WorkspaceImage) GoString() string { return s.String() } +// SetCreated sets the Created field's value. +func (s *WorkspaceImage) SetCreated(v time.Time) *WorkspaceImage { + s.Created = &v + return s +} + // SetDescription sets the Description field's value. func (s *WorkspaceImage) SetDescription(v string) *WorkspaceImage { s.Description = &v @@ -9248,6 +9674,12 @@ func (s *WorkspaceImage) SetOperatingSystem(v *OperatingSystem) *WorkspaceImage return s } +// SetOwnerAccountId sets the OwnerAccountId field's value. +func (s *WorkspaceImage) SetOwnerAccountId(v string) *WorkspaceImage { + s.OwnerAccountId = &v + return s +} + // SetRequiredTenancy sets the RequiredTenancy field's value. func (s *WorkspaceImage) SetRequiredTenancy(v string) *WorkspaceImage { s.RequiredTenancy = &v @@ -9267,7 +9699,8 @@ type WorkspaceProperties struct { // The compute type. For more information, see Amazon WorkSpaces Bundles (http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). ComputeTypeName *string `type:"string" enum:"Compute"` - // The size of the root volume. + // The size of the root volume. For important information about how to modify + // the size of the root and user volumes, see Modify a WorkSpace (https://docs.aws.amazon.com/workspaces/latest/adminguide/modify-workspaces.html). RootVolumeSizeGib *int64 `type:"integer"` // The running mode. For more information, see Manage the WorkSpace Running @@ -9278,7 +9711,8 @@ type WorkspaceProperties struct { // Configured in 60-minute intervals. RunningModeAutoStopTimeoutInMinutes *int64 `type:"integer"` - // The size of the user storage. + // The size of the user storage. For important information about how to modify + // the size of the root and user volumes, see Modify a WorkSpace (https://docs.aws.amazon.com/workspaces/latest/adminguide/modify-workspaces.html). UserVolumeSizeGib *int64 `type:"integer"` } @@ -9579,6 +10013,14 @@ const ( DedicatedTenancySupportResultEnumDisabled = "DISABLED" ) +const ( + // ImageTypeOwned is a ImageType enum value + ImageTypeOwned = "OWNED" + + // ImageTypeShared is a ImageType enum value + ImageTypeShared = "SHARED" +) + const ( // ModificationResourceEnumRootVolume is a ModificationResourceEnum enum value ModificationResourceEnumRootVolume = "ROOT_VOLUME" diff --git a/service/workspaces/workspacesiface/interface.go b/service/workspaces/workspacesiface/interface.go index 1a2038db5ae..497611b03fe 100644 --- a/service/workspaces/workspacesiface/interface.go +++ b/service/workspaces/workspacesiface/interface.go @@ -134,6 +134,10 @@ type WorkSpacesAPI interface { DescribeWorkspaceDirectoriesPages(*workspaces.DescribeWorkspaceDirectoriesInput, func(*workspaces.DescribeWorkspaceDirectoriesOutput, bool) bool) error DescribeWorkspaceDirectoriesPagesWithContext(aws.Context, *workspaces.DescribeWorkspaceDirectoriesInput, func(*workspaces.DescribeWorkspaceDirectoriesOutput, bool) bool, ...request.Option) error + DescribeWorkspaceImagePermissions(*workspaces.DescribeWorkspaceImagePermissionsInput) (*workspaces.DescribeWorkspaceImagePermissionsOutput, error) + DescribeWorkspaceImagePermissionsWithContext(aws.Context, *workspaces.DescribeWorkspaceImagePermissionsInput, ...request.Option) (*workspaces.DescribeWorkspaceImagePermissionsOutput, error) + DescribeWorkspaceImagePermissionsRequest(*workspaces.DescribeWorkspaceImagePermissionsInput) (*request.Request, *workspaces.DescribeWorkspaceImagePermissionsOutput) + DescribeWorkspaceImages(*workspaces.DescribeWorkspaceImagesInput) (*workspaces.DescribeWorkspaceImagesOutput, error) DescribeWorkspaceImagesWithContext(aws.Context, *workspaces.DescribeWorkspaceImagesInput, ...request.Option) (*workspaces.DescribeWorkspaceImagesOutput, error) DescribeWorkspaceImagesRequest(*workspaces.DescribeWorkspaceImagesInput) (*request.Request, *workspaces.DescribeWorkspaceImagesOutput) @@ -232,6 +236,10 @@ type WorkSpacesAPI interface { UpdateRulesOfIpGroup(*workspaces.UpdateRulesOfIpGroupInput) (*workspaces.UpdateRulesOfIpGroupOutput, error) UpdateRulesOfIpGroupWithContext(aws.Context, *workspaces.UpdateRulesOfIpGroupInput, ...request.Option) (*workspaces.UpdateRulesOfIpGroupOutput, error) UpdateRulesOfIpGroupRequest(*workspaces.UpdateRulesOfIpGroupInput) (*request.Request, *workspaces.UpdateRulesOfIpGroupOutput) + + UpdateWorkspaceImagePermission(*workspaces.UpdateWorkspaceImagePermissionInput) (*workspaces.UpdateWorkspaceImagePermissionOutput, error) + UpdateWorkspaceImagePermissionWithContext(aws.Context, *workspaces.UpdateWorkspaceImagePermissionInput, ...request.Option) (*workspaces.UpdateWorkspaceImagePermissionOutput, error) + UpdateWorkspaceImagePermissionRequest(*workspaces.UpdateWorkspaceImagePermissionInput) (*request.Request, *workspaces.UpdateWorkspaceImagePermissionOutput) } var _ WorkSpacesAPI = (*workspaces.WorkSpaces)(nil)