From cf54366a3966b9ef109880801281d45d5e6d1339 Mon Sep 17 00:00:00 2001 From: awssdkgo Date: Wed, 13 Oct 2021 18:13:01 +0000 Subject: [PATCH] Release v1.41.2 (2021-10-13) === ### Service Client Updates * `service/config`: Updates service API * `service/ec2`: Updates service API and documentation * This release adds support for additional VPC Flow Logs delivery options to S3, such as Apache Parquet formatted files, Hourly partitions and Hive-compatible S3 prefixes * `service/kinesisanalyticsv2`: Updates service API and documentation * `service/storagegateway`: Updates service API and documentation * Adding support for Audit Logs on NFS shares and Force Closing Files on SMB shares. * `service/workmail`: Updates service API, documentation, and paginators * This release adds APIs for adding, removing and retrieving details of mail domains --- CHANGELOG.md | 13 + aws/endpoints/defaults.go | 1 + aws/version.go | 2 +- models/apis/config/2014-11-12/api-2.json | 3 +- models/apis/ec2/2016-11-15/api-2.json | 39 +- models/apis/ec2/2016-11-15/docs-2.json | 31 +- .../kinesisanalyticsv2/2018-05-23/api-2.json | 15 +- .../kinesisanalyticsv2/2018-05-23/docs-2.json | 72 +- .../apis/storagegateway/2013-06-30/api-2.json | 64 +- .../storagegateway/2013-06-30/docs-2.json | 106 +- models/apis/workmail/2017-10-01/api-2.json | 222 +++ models/apis/workmail/2017-10-01/docs-2.json | 135 +- .../workmail/2017-10-01/paginators-1.json | 5 + models/endpoints/endpoints.json | 3 +- service/configservice/api.go | 4 + service/ec2/api.go | 166 +- service/kinesisanalyticsv2/api.go | 172 ++- service/storagegateway/api.go | 699 +++++++-- service/storagegateway/doc.go | 7 +- .../storagegatewayiface/interface.go | 4 + service/workmail/api.go | 1342 ++++++++++++++++- service/workmail/errors.go | 20 +- service/workmail/workmailiface/interface.go | 23 + 23 files changed, 2779 insertions(+), 369 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3b9e8ae0b2..3dbe0ce749 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ +Release v1.41.2 (2021-10-13) +=== + +### Service Client Updates +* `service/config`: Updates service API +* `service/ec2`: Updates service API and documentation + * This release adds support for additional VPC Flow Logs delivery options to S3, such as Apache Parquet formatted files, Hourly partitions and Hive-compatible S3 prefixes +* `service/kinesisanalyticsv2`: Updates service API and documentation +* `service/storagegateway`: Updates service API and documentation + * Adding support for Audit Logs on NFS shares and Force Closing Files on SMB shares. +* `service/workmail`: Updates service API, documentation, and paginators + * This release adds APIs for adding, removing and retrieving details of mail domains + Release v1.41.1 (2021-10-12) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 89c0911eca..abccd657cb 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -11527,6 +11527,7 @@ var awsisoPartition = partition{ "us-iso-east-1": endpoint{ Protocols: []string{"http", "https"}, }, + "us-iso-west-1": endpoint{}, }, }, "ec2": service{ diff --git a/aws/version.go b/aws/version.go index d013758c86..8f5f1617e8 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.41.1" +const SDKVersion = "1.41.2" diff --git a/models/apis/config/2014-11-12/api-2.json b/models/apis/config/2014-11-12/api-2.json index 25e1b77d88..f2e365b1c0 100644 --- a/models/apis/config/2014-11-12/api-2.json +++ b/models/apis/config/2014-11-12/api-2.json @@ -4366,7 +4366,8 @@ "AWS::ECS::TaskDefinition", "AWS::EFS::AccessPoint", "AWS::EFS::FileSystem", - "AWS::EKS::Cluster" + "AWS::EKS::Cluster", + "AWS::OpenSearch::Domain" ] }, "ResourceTypeList":{ diff --git a/models/apis/ec2/2016-11-15/api-2.json b/models/apis/ec2/2016-11-15/api-2.json index b7a4a941a8..c741f1d994 100755 --- a/models/apis/ec2/2016-11-15/api-2.json +++ b/models/apis/ec2/2016-11-15/api-2.json @@ -8264,7 +8264,8 @@ "shape":"TagSpecificationList", "locationName":"TagSpecification" }, - "MaxAggregationInterval":{"shape":"Integer"} + "MaxAggregationInterval":{"shape":"Integer"}, + "DestinationOptions":{"shape":"DestinationOptionsRequest"} } }, "CreateFlowLogsResult":{ @@ -15272,6 +15273,38 @@ } } }, + "DestinationFileFormat":{ + "type":"string", + "enum":[ + "plain-text", + "parquet" + ] + }, + "DestinationOptionsRequest":{ + "type":"structure", + "members":{ + "FileFormat":{"shape":"DestinationFileFormat"}, + "HiveCompatiblePartitions":{"shape":"Boolean"}, + "PerHourPartition":{"shape":"Boolean"} + } + }, + "DestinationOptionsResponse":{ + "type":"structure", + "members":{ + "FileFormat":{ + "shape":"DestinationFileFormat", + "locationName":"fileFormat" + }, + "HiveCompatiblePartitions":{ + "shape":"Boolean", + "locationName":"hiveCompatiblePartitions" + }, + "PerHourPartition":{ + "shape":"Boolean", + "locationName":"perHourPartition" + } + } + }, "DetachClassicLinkVpcRequest":{ "type":"structure", "required":[ @@ -17867,6 +17900,10 @@ "MaxAggregationInterval":{ "shape":"Integer", "locationName":"maxAggregationInterval" + }, + "DestinationOptions":{ + "shape":"DestinationOptionsResponse", + "locationName":"destinationOptions" } } }, diff --git a/models/apis/ec2/2016-11-15/docs-2.json b/models/apis/ec2/2016-11-15/docs-2.json index 5e10132811..cfa7098057 100755 --- a/models/apis/ec2/2016-11-15/docs-2.json +++ b/models/apis/ec2/2016-11-15/docs-2.json @@ -1727,6 +1727,10 @@ "DescribeVpcsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeVpnConnectionsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DescribeVpnGatewaysRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "DestinationOptionsRequest$HiveCompatiblePartitions": "

Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3. The default is false.

", + "DestinationOptionsRequest$PerHourPartition": "

Indicates whether to partition the flow log per hour. This reduces the cost and response time for queries. The default is false.

", + "DestinationOptionsResponse$HiveCompatiblePartitions": "

Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3.

", + "DestinationOptionsResponse$PerHourPartition": "

Indicates whether to partition the flow log per hour.

", "DetachClassicLinkVpcRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DetachClassicLinkVpcResult$Return": "

Returns true if the request succeeds; otherwise, it returns an error.

", "DetachInternetGatewayRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -6088,6 +6092,25 @@ "refs": { } }, + "DestinationFileFormat": { + "base": null, + "refs": { + "DestinationOptionsRequest$FileFormat": "

The format for the flow log. The default is plain-text.

", + "DestinationOptionsResponse$FileFormat": "

The format for the flow log.

" + } + }, + "DestinationOptionsRequest": { + "base": "

Describes the destination options for a flow log.

", + "refs": { + "CreateFlowLogsRequest$DestinationOptions": "

The destination options.

" + } + }, + "DestinationOptionsResponse": { + "base": "

Describes the destination options for a flow log.

", + "refs": { + "FlowLog$DestinationOptions": "

The destination options.

" + } + }, "DetachClassicLinkVpcRequest": { "base": null, "refs": { @@ -10666,8 +10689,8 @@ "LogDestinationType": { "base": null, "refs": { - "CreateFlowLogsRequest$LogDestinationType": "

Specifies the type of destination to which the flow log data is to be published. Flow log data can be published to CloudWatch Logs or Amazon S3. To publish flow log data to CloudWatch Logs, specify cloud-watch-logs. To publish flow log data to Amazon S3, specify s3.

If you specify LogDestinationType as s3, do not specify DeliverLogsPermissionArn or LogGroupName.

Default: cloud-watch-logs

", - "FlowLog$LogDestinationType": "

Specifies the type of destination to which the flow log data is published. Flow log data can be published to CloudWatch Logs or Amazon S3.

" + "CreateFlowLogsRequest$LogDestinationType": "

The type of destination to which the flow log data is to be published. Flow log data can be published to CloudWatch Logs or Amazon S3. To publish flow log data to CloudWatch Logs, specify cloud-watch-logs. To publish flow log data to Amazon S3, specify s3.

If you specify LogDestinationType as s3, do not specify DeliverLogsPermissionArn or LogGroupName.

Default: cloud-watch-logs

", + "FlowLog$LogDestinationType": "

The type of destination to which the flow log data is published. Flow log data can be published to CloudWatch Logs or Amazon S3.

" } }, "Long": { @@ -14618,7 +14641,7 @@ "CreateFlowLogsRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", "CreateFlowLogsRequest$DeliverLogsPermissionArn": "

The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account.

If you specify LogDestinationType as s3, do not specify DeliverLogsPermissionArn or LogGroupName.

", "CreateFlowLogsRequest$LogGroupName": "

The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs.

If you specify LogDestinationType as s3, do not specify DeliverLogsPermissionArn or LogGroupName.

", - "CreateFlowLogsRequest$LogDestination": "

Specifies the destination to which the flow log data is to be published. Flow log data can be published to a CloudWatch Logs log group or an Amazon S3 bucket. The value specified for this parameter depends on the value specified for LogDestinationType.

If LogDestinationType is not specified or cloud-watch-logs, specify the Amazon Resource Name (ARN) of the CloudWatch Logs log group. For example, to publish to a log group called my-logs, specify arn:aws:logs:us-east-1:123456789012:log-group:my-logs. Alternatively, use LogGroupName instead.

If LogDestinationType is s3, specify the ARN of the Amazon S3 bucket. You can also specify a subfolder in the bucket. To specify a subfolder in the bucket, use the following ARN format: bucket_ARN/subfolder_name/. For example, to specify a subfolder named my-logs in a bucket named my-bucket, use the following ARN: arn:aws:s3:::my-bucket/my-logs/. You cannot use AWSLogs as a subfolder name. This is a reserved term.

", + "CreateFlowLogsRequest$LogDestination": "

The destination to which the flow log data is to be published. Flow log data can be published to a CloudWatch Logs log group or an Amazon S3 bucket. The value specified for this parameter depends on the value specified for LogDestinationType.

If LogDestinationType is not specified or cloud-watch-logs, specify the Amazon Resource Name (ARN) of the CloudWatch Logs log group. For example, to publish to a log group called my-logs, specify arn:aws:logs:us-east-1:123456789012:log-group:my-logs. Alternatively, use LogGroupName instead.

If LogDestinationType is s3, specify the ARN of the Amazon S3 bucket. You can also specify a subfolder in the bucket. To specify a subfolder in the bucket, use the following ARN format: bucket_ARN/subfolder_name/. For example, to specify a subfolder named my-logs in a bucket named my-bucket, use the following ARN: arn:aws:s3:::my-bucket/my-logs/. You cannot use AWSLogs as a subfolder name. This is a reserved term.

", "CreateFlowLogsRequest$LogFormat": "

The fields to include in the flow log record, in the order in which they should appear. For a list of available fields, see Flow log records. If you omit this parameter, the flow log is created using the default format. If you specify this parameter, you must specify at least one field.

Specify the fields using the ${field-id} format, separated by spaces. For the CLI, surround this parameter value with single quotes on Linux or double quotes on Windows.

", "CreateFlowLogsResult$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "CreateFpgaImageRequest$Description": "

A description for the AFI.

", @@ -15047,7 +15070,7 @@ "FlowLog$FlowLogStatus": "

The status of the flow log (ACTIVE).

", "FlowLog$LogGroupName": "

The name of the flow log group.

", "FlowLog$ResourceId": "

The ID of the resource on which the flow log was created.

", - "FlowLog$LogDestination": "

Specifies the destination to which the flow log data is published. Flow log data can be published to an CloudWatch Logs log group or an Amazon S3 bucket. If the flow log publishes to CloudWatch Logs, this element indicates the Amazon Resource Name (ARN) of the CloudWatch Logs log group to which the data is published. If the flow log publishes to Amazon S3, this element indicates the ARN of the Amazon S3 bucket to which the data is published.

", + "FlowLog$LogDestination": "

The destination to which the flow log data is published. Flow log data can be published to an CloudWatch Logs log group or an Amazon S3 bucket. If the flow log publishes to CloudWatch Logs, this element indicates the Amazon Resource Name (ARN) of the CloudWatch Logs log group to which the data is published. If the flow log publishes to Amazon S3, this element indicates the ARN of the Amazon S3 bucket to which the data is published.

", "FlowLog$LogFormat": "

The format of the flow log record.

", "FpgaImage$FpgaImageId": "

The FPGA image identifier (AFI ID).

", "FpgaImage$FpgaImageGlobalId": "

The global FPGA image identifier (AGFI ID).

", diff --git a/models/apis/kinesisanalyticsv2/2018-05-23/api-2.json b/models/apis/kinesisanalyticsv2/2018-05-23/api-2.json index 752e101172..71be379e65 100644 --- a/models/apis/kinesisanalyticsv2/2018-05-23/api-2.json +++ b/models/apis/kinesisanalyticsv2/2018-05-23/api-2.json @@ -127,7 +127,8 @@ {"shape":"InvalidArgumentException"}, {"shape":"InvalidRequestException"}, {"shape":"TooManyTagsException"}, - {"shape":"ConcurrentModificationException"} + {"shape":"ConcurrentModificationException"}, + {"shape":"UnsupportedOperationException"} ] }, "CreateApplicationPresignedUrl":{ @@ -331,7 +332,8 @@ {"shape":"UnableToDetectSchemaException"}, {"shape":"ResourceProvisionedThroughputExceededException"}, {"shape":"ServiceUnavailableException"}, - {"shape":"InvalidRequestException"} + {"shape":"InvalidRequestException"}, + {"shape":"UnsupportedOperationException"} ] }, "ListApplicationSnapshots":{ @@ -820,8 +822,8 @@ "UPDATING", "AUTOSCALING", "FORCE_STOPPING", - "MAINTENANCE", "ROLLING_BACK", + "MAINTENANCE", "ROLLED_BACK" ] }, @@ -1304,7 +1306,6 @@ }, "DeployAsApplicationConfigurationUpdate":{ "type":"structure", - "required":["S3ContentLocationUpdate"], "members":{ "S3ContentLocationUpdate":{"shape":"S3ContentBaseLocationUpdate"} } @@ -1459,6 +1460,7 @@ }, "GlueDataCatalogConfigurationUpdate":{ "type":"structure", + "required":["DatabaseARNUpdate"], "members":{ "DatabaseARNUpdate":{"shape":"DatabaseARN"} } @@ -2284,8 +2286,10 @@ "SQL-1_0", "FLINK-1_6", "FLINK-1_8", + "ZEPPELIN-FLINK-1_0", "FLINK-1_11", - "ZEPPELIN-FLINK-1_0" + "FLINK-1_13", + "ZEPPELIN-FLINK-2_0" ] }, "S3ApplicationCodeLocationDescription":{ @@ -2329,7 +2333,6 @@ }, "S3ContentBaseLocationUpdate":{ "type":"structure", - "required":["BucketARNUpdate"], "members":{ "BucketARNUpdate":{"shape":"BucketARN"}, "BasePathUpdate":{"shape":"BasePath"} diff --git a/models/apis/kinesisanalyticsv2/2018-05-23/docs-2.json b/models/apis/kinesisanalyticsv2/2018-05-23/docs-2.json index 612566a577..be21ff80ee 100644 --- a/models/apis/kinesisanalyticsv2/2018-05-23/docs-2.json +++ b/models/apis/kinesisanalyticsv2/2018-05-23/docs-2.json @@ -4,8 +4,8 @@ "operations": { "AddApplicationCloudWatchLoggingOption": "

Adds an Amazon CloudWatch log stream to monitor application configuration errors.

", "AddApplicationInput": "

Adds a streaming source to your SQL-based Kinesis Data Analytics application.

You can add a streaming source when you create an application, or you can use this operation to add a streaming source after you create an application. For more information, see CreateApplication.

Any configuration update, including adding a streaming source using this operation, results in a new version of the application. You can use the DescribeApplication operation to find the current application version.

", - "AddApplicationInputProcessingConfiguration": "

Adds an InputProcessingConfiguration to a SQL-based Kinesis Data Analytics application. An input processor pre-processes records on the input stream before the application's SQL code executes. Currently, the only input processor available is AWS Lambda.

", - "AddApplicationOutput": "

Adds an external destination to your SQL-based Kinesis Data Analytics application.

If you want Kinesis Data Analytics to deliver data from an in-application stream within your application to an external destination (such as an Kinesis data stream, a Kinesis Data Firehose delivery stream, or an AWS Lambda function), you add the relevant configuration to your application using this operation. You can configure one or more outputs for your application. Each output configuration maps an in-application stream and an external destination.

You can use one of the output configurations to deliver data from your in-application error stream to an external destination so that you can analyze the errors.

Any configuration update, including adding a streaming source using this operation, results in a new version of the application. You can use the DescribeApplication operation to find the current application version.

", + "AddApplicationInputProcessingConfiguration": "

Adds an InputProcessingConfiguration to a SQL-based Kinesis Data Analytics application. An input processor pre-processes records on the input stream before the application's SQL code executes. Currently, the only input processor available is Amazon Lambda.

", + "AddApplicationOutput": "

Adds an external destination to your SQL-based Kinesis Data Analytics application.

If you want Kinesis Data Analytics to deliver data from an in-application stream within your application to an external destination (such as an Kinesis data stream, a Kinesis Data Firehose delivery stream, or an Amazon Lambda function), you add the relevant configuration to your application using this operation. You can configure one or more outputs for your application. Each output configuration maps an in-application stream and an external destination.

You can use one of the output configurations to deliver data from your in-application error stream to an external destination so that you can analyze the errors.

Any configuration update, including adding a streaming source using this operation, results in a new version of the application. You can use the DescribeApplication operation to find the current application version.

", "AddApplicationReferenceDataSource": "

Adds a reference data source to an existing SQL-based Kinesis Data Analytics application.

Kinesis Data Analytics reads reference data (that is, an Amazon S3 object) and creates an in-application table within your application. In the request, you provide the source (S3 bucket name and object key name), name of the in-application table to create, and the necessary mapping information that describes how data in an Amazon S3 object maps to columns in the resulting in-application table.

", "AddApplicationVpcConfiguration": "

Adds a Virtual Private Cloud (VPC) configuration to the application. Applications can use VPCs to store and access resources securely.

Note the following about VPC configurations for Kinesis Data Analytics applications:

", "CreateApplication": "

Creates a Kinesis Data Analytics application. For information about creating a Kinesis Data Analytics application, see Creating an Application.

", @@ -208,8 +208,8 @@ "DescribeApplicationVersionRequest$ApplicationName": "

The name of the application for which you want to get the version description.

", "ListApplicationSnapshotsRequest$ApplicationName": "

The name of an existing application.

", "ListApplicationVersionsRequest$ApplicationName": "

The name of the application for which you want to list all versions.

", - "ListApplicationsRequest$NextToken": "

If a previous command returned a pagination token, pass it into this value to retrieve the next set of results. For more information about pagination, see Using the AWS Command Line Interface's Pagination Options.

", - "ListApplicationsResponse$NextToken": "

The pagination token for the next set of results, or null if there are no additional results. Pass this token into a subsequent command to retrieve the next set of items For more information about pagination, see Using the AWS Command Line Interface's Pagination Options.

", + "ListApplicationsRequest$NextToken": "

If a previous command returned a pagination token, pass it into this value to retrieve the next set of results. For more information about pagination, see Using the Amazon Command Line Interface's Pagination Options.

", + "ListApplicationsResponse$NextToken": "

The pagination token for the next set of results, or null if there are no additional results. Pass this token into a subsequent command to retrieve the next set of items For more information about pagination, see Using the Amazon Command Line Interface's Pagination Options.

", "RollbackApplicationRequest$ApplicationName": "

The name of the application.

", "StartApplicationRequest$ApplicationName": "

The name of the application.

", "StopApplicationRequest$ApplicationName": "

The name of the running application to stop.

", @@ -378,21 +378,21 @@ } }, "CatalogConfiguration": { - "base": "

The configuration parameters for the default AWS Glue database. You use this database for SQL queries that you write in a Kinesis Data Analytics Studio notebook.

", + "base": "

The configuration parameters for the default Amazon Glue database. You use this database for SQL queries that you write in a Kinesis Data Analytics Studio notebook.

", "refs": { - "ZeppelinApplicationConfiguration$CatalogConfiguration": "

The AWS Glue Data Catalog that you use in queries in a Kinesis Data Analytics Studio notebook.

" + "ZeppelinApplicationConfiguration$CatalogConfiguration": "

The Amazon Glue Data Catalog that you use in queries in a Kinesis Data Analytics Studio notebook.

" } }, "CatalogConfigurationDescription": { - "base": "

The configuration parameters for the default AWS Glue database. You use this database for Apache Flink SQL queries and table API transforms that you write in a Kinesis Data Analytics Studio notebook.

", + "base": "

The configuration parameters for the default Amazon Glue database. You use this database for Apache Flink SQL queries and table API transforms that you write in a Kinesis Data Analytics Studio notebook.

", "refs": { - "ZeppelinApplicationConfigurationDescription$CatalogConfigurationDescription": "

The AWS Glue Data Catalog that is associated with the Kinesis Data Analytics Studio notebook.

" + "ZeppelinApplicationConfigurationDescription$CatalogConfigurationDescription": "

The Amazon Glue Data Catalog that is associated with the Kinesis Data Analytics Studio notebook.

" } }, "CatalogConfigurationUpdate": { - "base": "

Updates to

", + "base": "

Updates to the configuration parameters for the default Amazon Glue database. You use this database for SQL queries that you write in a Kinesis Data Analytics Studio notebook.

", "refs": { - "ZeppelinApplicationConfigurationUpdate$CatalogConfigurationUpdate": "

Updates to the configuration of the AWS Glue Data Catalog that is associated with the Kinesis Data Analytics Studio notebook.

" + "ZeppelinApplicationConfigurationUpdate$CatalogConfigurationUpdate": "

Updates to the configuration of the Amazon Glue Data Catalog that is associated with the Kinesis Data Analytics Studio notebook.

" } }, "CheckpointConfiguration": { @@ -667,19 +667,19 @@ } }, "DeployAsApplicationConfiguration": { - "base": "

The information required to deploy a Kinesis Data Analytics Studio notebook as an application with durable state..

", + "base": "

The information required to deploy a Kinesis Data Analytics Studio notebook as an application with durable state.

", "refs": { - "ZeppelinApplicationConfiguration$DeployAsApplicationConfiguration": "

The information required to deploy a Kinesis Data Analytics Studio notebook as an application with durable state..

" + "ZeppelinApplicationConfiguration$DeployAsApplicationConfiguration": "

The information required to deploy a Kinesis Data Analytics Studio notebook as an application with durable state.

" } }, "DeployAsApplicationConfigurationDescription": { "base": "

The configuration information required to deploy an Amazon Data Analytics Studio notebook as an application with durable state.

", "refs": { - "ZeppelinApplicationConfigurationDescription$DeployAsApplicationConfigurationDescription": "

The parameters required to deploy a Kinesis Data Analytics Studio notebook as an application with durable state..

" + "ZeppelinApplicationConfigurationDescription$DeployAsApplicationConfigurationDescription": "

The parameters required to deploy a Kinesis Data Analytics Studio notebook as an application with durable state.

" } }, "DeployAsApplicationConfigurationUpdate": { - "base": "

Updates to the configuration information required to deploy an Amazon Data Analytics Studio notebook as an application with durable state..

", + "base": "

Updates to the configuration information required to deploy an Amazon Data Analytics Studio notebook as an application with durable state.

", "refs": { "ZeppelinApplicationConfigurationUpdate$DeployAsApplicationConfigurationUpdate": null } @@ -809,19 +809,19 @@ "GlueDataCatalogConfiguration": { "base": "

The configuration of the Glue Data Catalog that you use for Apache Flink SQL queries and table API transforms that you write in an application.

", "refs": { - "CatalogConfiguration$GlueDataCatalogConfiguration": "

The configuration parameters for the default AWS Glue database. You use this database for Apache Flink SQL queries and table API transforms that you write in a Kinesis Data Analytics Studio notebook.

" + "CatalogConfiguration$GlueDataCatalogConfiguration": "

The configuration parameters for the default Amazon Glue database. You use this database for Apache Flink SQL queries and table API transforms that you write in a Kinesis Data Analytics Studio notebook.

" } }, "GlueDataCatalogConfigurationDescription": { "base": "

The configuration of the Glue Data Catalog that you use for Apache Flink SQL queries and table API transforms that you write in an application.

", "refs": { - "CatalogConfigurationDescription$GlueDataCatalogConfigurationDescription": "

The configuration parameters for the default AWS Glue database. You use this database for SQL queries that you write in a Kinesis Data Analytics Studio notebook.

" + "CatalogConfigurationDescription$GlueDataCatalogConfigurationDescription": "

The configuration parameters for the default Amazon Glue database. You use this database for SQL queries that you write in a Kinesis Data Analytics Studio notebook.

" } }, "GlueDataCatalogConfigurationUpdate": { "base": "

Updates to the configuration of the Glue Data Catalog that you use for SQL queries that you write in a Kinesis Data Analytics Studio notebook.

", "refs": { - "CatalogConfigurationUpdate$GlueDataCatalogConfigurationUpdate": "

Updates to the configuration parameters for the default AWS Glue database. You use this database for SQL queries that you write in a Kinesis Data Analytics Studio notebook.

" + "CatalogConfigurationUpdate$GlueDataCatalogConfigurationUpdate": "

Updates to the configuration parameters for the default Amazon Glue database. You use this database for SQL queries that you write in a Kinesis Data Analytics Studio notebook.

" } }, "Id": { @@ -895,13 +895,13 @@ } }, "InputLambdaProcessor": { - "base": "

An object that contains the Amazon Resource Name (ARN) of the AWS Lambda function that is used to preprocess records in the stream in a SQL-based Kinesis Data Analytics application.

", + "base": "

An object that contains the Amazon Resource Name (ARN) of the Amazon Lambda function that is used to preprocess records in the stream in a SQL-based Kinesis Data Analytics application.

", "refs": { "InputProcessingConfiguration$InputLambdaProcessor": "

The InputLambdaProcessor that is used to preprocess the records in the stream before being processed by your application code.

" } }, "InputLambdaProcessorDescription": { - "base": "

For a SQL-based Kinesis Data Analytics application, an object that contains the Amazon Resource Name (ARN) of the AWS Lambda function that is used to preprocess records in the stream.

", + "base": "

For a SQL-based Kinesis Data Analytics application, an object that contains the Amazon Resource Name (ARN) of the Amazon Lambda function that is used to preprocess records in the stream.

", "refs": { "InputProcessingConfigurationDescription$InputLambdaProcessorDescription": "

Provides configuration information about the associated InputLambdaProcessorDescription

" } @@ -933,7 +933,7 @@ } }, "InputProcessingConfiguration": { - "base": "

For a SQL-based Kinesis Data Analytics application, describes a processor that is used to preprocess the records in the stream before being processed by your application code. Currently, the only input processor available is AWS Lambda.

", + "base": "

For a SQL-based Kinesis Data Analytics application, describes a processor that is used to preprocess the records in the stream before being processed by your application code. Currently, the only input processor available is Amazon Lambda.

", "refs": { "AddApplicationInputProcessingConfigurationRequest$InputProcessingConfiguration": "

The InputProcessingConfiguration to add to the application.

", "DiscoverInputSchemaRequest$InputProcessingConfiguration": "

The InputProcessingConfiguration to use to preprocess the records before discovering the schema of the records.

", @@ -941,7 +941,7 @@ } }, "InputProcessingConfigurationDescription": { - "base": "

For a SQL-based Kinesis Data Analytics application, provides the configuration information about an input processor. Currently, the only input processor available is AWS Lambda.

", + "base": "

For a SQL-based Kinesis Data Analytics application, provides the configuration information about an input processor. Currently, the only input processor available is Amazon Lambda.

", "refs": { "AddApplicationInputProcessingConfigurationResponse$InputProcessingConfigurationDescription": "

The description of the preprocessor that executes on records in this input before the application's code is run.

", "InputDescription$InputProcessingConfigurationDescription": "

The description of the preprocessor that executes on records in this input before the application's code is run.

" @@ -1099,21 +1099,21 @@ } }, "LambdaOutput": { - "base": "

When you configure a SQL-based Kinesis Data Analytics application's output, identifies an AWS Lambda function as the destination. You provide the function Amazon Resource Name (ARN) of the Lambda function.

", + "base": "

When you configure a SQL-based Kinesis Data Analytics application's output, identifies an Amazon Lambda function as the destination. You provide the function Amazon Resource Name (ARN) of the Lambda function.

", "refs": { - "Output$LambdaOutput": "

Identifies an AWS Lambda function as the destination.

" + "Output$LambdaOutput": "

Identifies an Amazon Lambda function as the destination.

" } }, "LambdaOutputDescription": { - "base": "

For a SQL-based Kinesis Data Analytics application's output, describes the AWS Lambda function that is configured as its destination.

", + "base": "

For a SQL-based Kinesis Data Analytics application's output, describes the Amazon Lambda function that is configured as its destination.

", "refs": { "OutputDescription$LambdaOutputDescription": "

Describes the Lambda function that is configured as the destination where output is written.

" } }, "LambdaOutputUpdate": { - "base": "

When you update an SQL-based Kinesis Data Analytics application's output configuration using the UpdateApplication operation, provides information about an AWS Lambda function that is configured as the destination.

", + "base": "

When you update an SQL-based Kinesis Data Analytics application's output configuration using the UpdateApplication operation, provides information about an Amazon Lambda function that is configured as the destination.

", "refs": { - "OutputUpdate$LambdaOutputUpdate": "

Describes an AWS Lambda function as the destination for the output.

" + "OutputUpdate$LambdaOutputUpdate": "

Describes an Amazon Lambda function as the destination for the output.

" } }, "LimitExceededException": { @@ -1268,8 +1268,8 @@ "refs": { "ListApplicationSnapshotsRequest$NextToken": "

Use this parameter if you receive a NextToken response in a previous request that indicates that there is more output available. Set it to the value of the previous call's NextToken response to indicate where the output should continue from.

", "ListApplicationSnapshotsResponse$NextToken": "

The token for the next set of results, or null if there are no additional results.

", - "ListApplicationVersionsRequest$NextToken": "

If a previous invocation of this operation returned a pagination token, pass it into this value to retrieve the next set of results. For more information about pagination, see Using the AWS Command Line Interface's Pagination Options.

", - "ListApplicationVersionsResponse$NextToken": "

The pagination token for the next set of results, or null if there are no additional results. To retrieve the next set of items, pass this token into a subsequent invocation of this operation. For more information about pagination, see Using the AWS Command Line Interface's Pagination Options.

" + "ListApplicationVersionsRequest$NextToken": "

If a previous invocation of this operation returned a pagination token, pass it into this value to retrieve the next set of results. For more information about pagination, see Using the Amazon Command Line Interface's Pagination Options.

", + "ListApplicationVersionsResponse$NextToken": "

The pagination token for the next set of results, or null if there are no additional results. To retrieve the next set of items, pass this token into a subsequent invocation of this operation. For more information about pagination, see Using the Amazon Command Line Interface's Pagination Options.

" } }, "ObjectVersion": { @@ -1283,7 +1283,7 @@ "Output": { "base": "

Describes a SQL-based Kinesis Data Analytics application's output configuration, in which you identify an in-application stream and a destination where you want the in-application stream data to be written. The destination can be a Kinesis data stream or a Kinesis Data Firehose delivery stream.

", "refs": { - "AddApplicationOutputRequest$Output": "

An array of objects, each describing one output configuration. In the output configuration, you specify the name of an in-application stream, a destination (that is, a Kinesis data stream, a Kinesis Data Firehose delivery stream, or an AWS Lambda function), and record the formation to use when writing to the destination.

", + "AddApplicationOutputRequest$Output": "

An array of objects, each describing one output configuration. In the output configuration, you specify the name of an in-application stream, a destination (that is, a Kinesis data stream, a Kinesis Data Firehose delivery stream, or an Amazon Lambda function), and record the formation to use when writing to the destination.

", "Outputs$member": null } }, @@ -1554,9 +1554,9 @@ "DeleteApplicationReferenceDataSourceResponse$ApplicationARN": "

The application Amazon Resource Name (ARN).

", "DeleteApplicationVpcConfigurationResponse$ApplicationARN": "

The ARN of the Kinesis Data Analytics application.

", "DiscoverInputSchemaRequest$ResourceARN": "

The Amazon Resource Name (ARN) of the streaming source.

", - "InputLambdaProcessor$ResourceARN": "

The ARN of the AWS Lambda function that operates on records in the stream.

To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: AWS Lambda

", - "InputLambdaProcessorDescription$ResourceARN": "

The ARN of the AWS Lambda function that is used to preprocess the records in the stream.

To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: AWS Lambda

", - "InputLambdaProcessorUpdate$ResourceARNUpdate": "

The Amazon Resource Name (ARN) of the new AWS Lambda function that is used to preprocess the records in the stream.

To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: AWS Lambda

", + "InputLambdaProcessor$ResourceARN": "

The ARN of the Amazon Lambda function that operates on records in the stream.

To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: Amazon Lambda

", + "InputLambdaProcessorDescription$ResourceARN": "

The ARN of the Amazon Lambda function that is used to preprocess the records in the stream.

To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: Amazon Lambda

", + "InputLambdaProcessorUpdate$ResourceARNUpdate": "

The Amazon Resource Name (ARN) of the new Amazon Lambda function that is used to preprocess the records in the stream.

To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: Amazon Lambda

", "KinesisFirehoseInput$ResourceARN": "

The Amazon Resource Name (ARN) of the delivery stream.

", "KinesisFirehoseInputDescription$ResourceARN": "

The Amazon Resource Name (ARN) of the delivery stream.

", "KinesisFirehoseInputUpdate$ResourceARNUpdate": "

The Amazon Resource Name (ARN) of the input delivery stream to read.

", @@ -1569,9 +1569,9 @@ "KinesisStreamsOutput$ResourceARN": "

The ARN of the destination Kinesis data stream to write to.

", "KinesisStreamsOutputDescription$ResourceARN": "

The Amazon Resource Name (ARN) of the Kinesis data stream.

", "KinesisStreamsOutputUpdate$ResourceARNUpdate": "

The Amazon Resource Name (ARN) of the Kinesis data stream where you want to write the output.

", - "LambdaOutput$ResourceARN": "

The Amazon Resource Name (ARN) of the destination Lambda function to write to.

To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: AWS Lambda

", + "LambdaOutput$ResourceARN": "

The Amazon Resource Name (ARN) of the destination Lambda function to write to.

To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: Amazon Lambda

", "LambdaOutputDescription$ResourceARN": "

The Amazon Resource Name (ARN) of the destination Lambda function.

", - "LambdaOutputUpdate$ResourceARNUpdate": "

The Amazon Resource Name (ARN) of the destination AWS Lambda function.

To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: AWS Lambda

", + "LambdaOutputUpdate$ResourceARNUpdate": "

The Amazon Resource Name (ARN) of the destination Amazon Lambda function.

To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: Amazon Lambda

", "UpdateApplicationMaintenanceConfigurationResponse$ApplicationARN": "

The Amazon Resource Name (ARN) of the application.

" } }, @@ -1597,7 +1597,7 @@ "CloudWatchLoggingOptionDescription$RoleARN": "

The IAM ARN of the role to use to send application messages.

Provided for backward compatibility. Applications created with the current API version have an application-level service execution role rather than a resource-level role.

", "CreateApplicationRequest$ServiceExecutionRole": "

The IAM role used by the application to access Kinesis data streams, Kinesis Data Firehose delivery streams, Amazon S3 objects, and other external resources.

", "DiscoverInputSchemaRequest$ServiceExecutionRole": "

The ARN of the role that is used to access the streaming source.

", - "InputLambdaProcessorDescription$RoleARN": "

The ARN of the IAM role that is used to access the AWS Lambda function.

Provided for backward compatibility. Applications that are created with the current API version have an application-level service execution role rather than a resource-level role.

", + "InputLambdaProcessorDescription$RoleARN": "

The ARN of the IAM role that is used to access the Amazon Lambda function.

Provided for backward compatibility. Applications that are created with the current API version have an application-level service execution role rather than a resource-level role.

", "KinesisFirehoseInputDescription$RoleARN": "

The ARN of the IAM role that Kinesis Data Analytics assumes to access the stream.

Provided for backward compatibility. Applications that are created with the current API version have an application-level service execution role rather than a resource-level role.

", "KinesisFirehoseOutputDescription$RoleARN": "

The ARN of the IAM role that Kinesis Data Analytics can assume to access the stream.

Provided for backward compatibility. Applications that are created with the current API version have an application-level service execution role rather than a resource-level role.

", "KinesisStreamsInputDescription$RoleARN": "

The ARN of the IAM role that Kinesis Data Analytics can assume to access the stream.

Provided for backward compatibility. Applications that are created with the current API version have an application-level service execution role rather than a resource-level role.

", @@ -1835,7 +1835,7 @@ } }, "Tag": { - "base": "

A key-value pair (the value is optional) that you can define and assign to AWS resources. If you specify a tag that already exists, the tag value is replaced with the value that you specify in the request. Note that the maximum number of application tags includes system tags. The maximum number of user-defined application tags is 50. For more information, see Using Tagging.

", + "base": "

A key-value pair (the value is optional) that you can define and assign to Amazon resources. If you specify a tag that already exists, the tag value is replaced with the value that you specify in the request. Note that the maximum number of application tags includes system tags. The maximum number of user-defined application tags is 50. For more information, see Using Tagging.

", "refs": { "Tags$member": null } diff --git a/models/apis/storagegateway/2013-06-30/api-2.json b/models/apis/storagegateway/2013-06-30/api-2.json index e41de6d0bf..1d7e1e385b 100644 --- a/models/apis/storagegateway/2013-06-30/api-2.json +++ b/models/apis/storagegateway/2013-06-30/api-2.json @@ -1132,6 +1132,19 @@ {"shape":"InternalServerError"} ] }, + "UpdateSMBLocalGroups":{ + "name":"UpdateSMBLocalGroups", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateSMBLocalGroupsInput"}, + "output":{"shape":"UpdateSMBLocalGroupsOutput"}, + "errors":[ + {"shape":"InvalidGatewayRequestException"}, + {"shape":"InternalServerError"} + ] + }, "UpdateSMBSecurityStrategy":{ "name":"UpdateSMBSecurityStrategy", "http":{ @@ -1594,7 +1607,8 @@ "CacheAttributes":{"shape":"CacheAttributes"}, "NotificationPolicy":{"shape":"NotificationPolicy"}, "VPCEndpointDNSName":{"shape":"DNSHostName"}, - "BucketRegion":{"shape":"RegionId"} + "BucketRegion":{"shape":"RegionId"}, + "AuditDestinationARN":{"shape":"AuditDestinationARN"} } }, "CreateNFSFileShareOutput":{ @@ -2153,7 +2167,8 @@ "ActiveDirectoryStatus":{"shape":"ActiveDirectoryStatus"}, "SMBGuestPasswordSet":{"shape":"Boolean"}, "SMBSecurityStrategy":{"shape":"SMBSecurityStrategy"}, - "FileSharesVisible":{"shape":"Boolean"} + "FileSharesVisible":{"shape":"Boolean"}, + "SMBLocalGroups":{"shape":"SMBLocalGroups"} } }, "DescribeSnapshotScheduleInput":{ @@ -2392,7 +2407,7 @@ "type":"string", "max":1024, "min":1, - "pattern":"^([a-z0-9]+(-[a-z0-9]+)*\\.)+[a-z]{2,}$" + "pattern":"^([a-zA-Z0-9]+[\\\\.-])+([a-zA-Z0-9])+$" }, "DomainUserName":{ "type":"string", @@ -2567,7 +2582,8 @@ "GatewayARN":{"shape":"GatewayARN"}, "Tags":{"shape":"Tags"}, "CacheAttributes":{"shape":"CacheAttributes"}, - "EndpointNetworkConfiguration":{"shape":"EndpointNetworkConfiguration"} + "EndpointNetworkConfiguration":{"shape":"EndpointNetworkConfiguration"}, + "FileSystemAssociationStatusDetails":{"shape":"FileSystemAssociationStatusDetails"} } }, "FileSystemAssociationInfoList":{ @@ -2579,6 +2595,16 @@ "max":50, "min":3 }, + "FileSystemAssociationStatusDetail":{ + "type":"structure", + "members":{ + "ErrorCode":{"shape":"FileSystemAssociationSyncErrorCode"} + } + }, + "FileSystemAssociationStatusDetails":{ + "type":"list", + "member":{"shape":"FileSystemAssociationStatusDetail"} + }, "FileSystemAssociationSummary":{ "type":"structure", "members":{ @@ -2592,6 +2618,7 @@ "type":"list", "member":{"shape":"FileSystemAssociationSummary"} }, + "FileSystemAssociationSyncErrorCode":{"type":"string"}, "FileSystemLocationARN":{ "type":"string", "max":512, @@ -3008,7 +3035,8 @@ "CacheAttributes":{"shape":"CacheAttributes"}, "NotificationPolicy":{"shape":"NotificationPolicy"}, "VPCEndpointDNSName":{"shape":"DNSHostName"}, - "BucketRegion":{"shape":"RegionId"} + "BucketRegion":{"shape":"RegionId"}, + "AuditDestinationARN":{"shape":"AuditDestinationARN"} } }, "NFSFileShareInfoList":{ @@ -3296,6 +3324,12 @@ "pattern":"^[ -~]+$", "sensitive":true }, + "SMBLocalGroups":{ + "type":"structure", + "members":{ + "GatewayAdmins":{"shape":"UserList"} + } + }, "SMBSecurityStrategy":{ "type":"string", "enum":[ @@ -3759,7 +3793,8 @@ "RequesterPays":{"shape":"Boolean"}, "FileShareName":{"shape":"FileShareName"}, "CacheAttributes":{"shape":"CacheAttributes"}, - "NotificationPolicy":{"shape":"NotificationPolicy"} + "NotificationPolicy":{"shape":"NotificationPolicy"}, + "AuditDestinationARN":{"shape":"AuditDestinationARN"} } }, "UpdateNFSFileShareOutput":{ @@ -3816,6 +3851,23 @@ "GatewayARN":{"shape":"GatewayARN"} } }, + "UpdateSMBLocalGroupsInput":{ + "type":"structure", + "required":[ + "GatewayARN", + "SMBLocalGroups" + ], + "members":{ + "GatewayARN":{"shape":"GatewayARN"}, + "SMBLocalGroups":{"shape":"SMBLocalGroups"} + } + }, + "UpdateSMBLocalGroupsOutput":{ + "type":"structure", + "members":{ + "GatewayARN":{"shape":"GatewayARN"} + } + }, "UpdateSMBSecurityStrategyInput":{ "type":"structure", "required":[ diff --git a/models/apis/storagegateway/2013-06-30/docs-2.json b/models/apis/storagegateway/2013-06-30/docs-2.json index 72bc107f08..d974c63c67 100644 --- a/models/apis/storagegateway/2013-06-30/docs-2.json +++ b/models/apis/storagegateway/2013-06-30/docs-2.json @@ -1,8 +1,8 @@ { "version": "2.0", - "service": "Storage Gateway Service

Storage Gateway is the service that connects an on-premises software appliance with cloud-based storage to provide seamless and secure integration between an organization's on-premises IT environment and the Amazon Web Services storage infrastructure. The service enables you to securely upload data to the Cloud for cost effective backup and rapid disaster recovery.

Use the following links to get started using the Storage Gateway Service API Reference:

Storage Gateway resource IDs are in uppercase. When you use these resource IDs with the Amazon EC2 API, EC2 expects resource IDs in lowercase. You must change your resource ID to lowercase to use it with the EC2 API. For example, in Storage Gateway the ID for a volume might be vol-AA22BB012345DAF670. When you use this ID with the EC2 API, you must change it to vol-aa22bb012345daf670. Otherwise, the EC2 API might not behave as expected.

IDs for Storage Gateway volumes and Amazon EBS snapshots created from gateway volumes are changing to a longer format. Starting in December 2016, all new volumes and snapshots will be created with a 17-character string. Starting in April 2016, you will be able to use these longer IDs so you can test your systems with the new format. For more information, see Longer EC2 and EBS resource IDs.

For example, a volume Amazon Resource Name (ARN) with the longer volume ID format looks like the following:

arn:aws:storagegateway:us-west-2:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABBCCDDEEFFG.

A snapshot ID with the longer ID format looks like the following: snap-78e226633445566ee.

For more information, see Announcement: Heads-up – Longer Storage Gateway volume and snapshot IDs coming in 2016.

", + "service": "Storage Gateway Service

Storage Gateway is the service that connects an on-premises software appliance with cloud-based storage to provide seamless and secure integration between an organization's on-premises IT environment and the Amazon Web Services storage infrastructure. The service enables you to securely upload data to the Amazon Web Services Cloud for cost effective backup and rapid disaster recovery.

Use the following links to get started using the Storage Gateway Service API Reference:

Storage Gateway resource IDs are in uppercase. When you use these resource IDs with the Amazon EC2 API, EC2 expects resource IDs in lowercase. You must change your resource ID to lowercase to use it with the EC2 API. For example, in Storage Gateway the ID for a volume might be vol-AA22BB012345DAF670. When you use this ID with the EC2 API, you must change it to vol-aa22bb012345daf670. Otherwise, the EC2 API might not behave as expected.

IDs for Storage Gateway volumes and Amazon EBS snapshots created from gateway volumes are changing to a longer format. Starting in December 2016, all new volumes and snapshots will be created with a 17-character string. Starting in April 2016, you will be able to use these longer IDs so you can test your systems with the new format. For more information, see Longer EC2 and EBS resource IDs.

For example, a volume Amazon Resource Name (ARN) with the longer volume ID format looks like the following:

arn:aws:storagegateway:us-west-2:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABBCCDDEEFFG.

A snapshot ID with the longer ID format looks like the following: snap-78e226633445566ee.

For more information, see Announcement: Heads-up – Longer Storage Gateway volume and snapshot IDs coming in 2016.

", "operations": { - "ActivateGateway": "

Activates the gateway you previously deployed on your host. In the activation process, you specify information such as the Region that you want to use for storing snapshots or tapes, the time zone for scheduled snapshots the gateway snapshot schedule window, an activation key, and a name for your gateway. The activation process also associates your gateway with your account. For more information, see UpdateGatewayInformation.

You must turn on the gateway VM before you can activate your gateway.

", + "ActivateGateway": "

Activates the gateway you previously deployed on your host. In the activation process, you specify information such as the Amazon Web Services Region that you want to use for storing snapshots or tapes, the time zone for scheduled snapshots the gateway snapshot schedule window, an activation key, and a name for your gateway. The activation process also associates your gateway with your account. For more information, see UpdateGatewayInformation.

You must turn on the gateway VM before you can activate your gateway.

", "AddCache": "

Configures one or more gateway local disks as cache for a gateway. This operation is only supported in the cached volume, tape, and file gateway type (see How Storage Gateway works (architecture).

In the request, you specify the gateway Amazon Resource Name (ARN) to which you want to add cache, and one or more disk IDs that you want to configure as cache.

", "AddTagsToResource": "

Adds one or more tags to the specified resource. You use tags to add metadata to resources, which you can use to categorize these resources. For example, you can categorize resources by purpose, owner, environment, or team. Each tag consists of a key and a value, which you define. You can add tags to the following Storage Gateway resources:

You can create a maximum of 50 tags for each resource. Virtual tapes and storage volumes that are recovered to a new gateway maintain their tags.

", "AddUploadBuffer": "

Configures one or more gateway local disks as upload buffer for a specified gateway. This operation is supported for the stored volume, cached volume, and tape gateway types.

In the request, you specify the gateway Amazon Resource Name (ARN) to which you want to add upload buffer, and one or more disk IDs that you want to configure as upload buffer.

", @@ -13,8 +13,8 @@ "CancelArchival": "

Cancels archiving of a virtual tape to the virtual tape shelf (VTS) after the archiving process is initiated. This operation is only supported in the tape gateway type.

", "CancelRetrieval": "

Cancels retrieval of a virtual tape from the virtual tape shelf (VTS) to a gateway after the retrieval process is initiated. The virtual tape is returned to the VTS. This operation is only supported in the tape gateway type.

", "CreateCachediSCSIVolume": "

Creates a cached volume on a specified cached volume gateway. This operation is only supported in the cached volume gateway type.

Cache storage must be allocated to the gateway before you can create a cached volume. Use the AddCache operation to add cache storage to a gateway.

In the request, you must specify the gateway, size of the volume in bytes, the iSCSI target name, an IP address on which to expose the target, and a unique client token. In response, the gateway creates the volume and returns information about it. This information includes the volume Amazon Resource Name (ARN), its size, and the iSCSI target ARN that initiators can use to connect to the volume target.

Optionally, you can provide the ARN for an existing volume as the SourceVolumeARN for this cached volume, which creates an exact copy of the existing volume’s latest recovery point. The VolumeSizeInBytes value must be equal to or larger than the size of the copied volume, in bytes.

", - "CreateNFSFileShare": "

Creates a Network File System (NFS) file share on an existing S3 File Gateway. In Storage Gateway, a file share is a file system mount point backed by Amazon S3 cloud storage. Storage Gateway exposes file shares using an NFS interface. This operation is only supported for S3 File Gateways.

S3 File gateway requires Security Token Service (STS) to be activated to enable you to create a file share. Make sure STS is activated in the Region you are creating your S3 File Gateway in. If STS is not activated in the Region, activate it. For information about how to activate STS, see Activating and deactivating STS in an Region in the Identity and Access Management User Guide.

S3 File Gateways do not support creating hard or symbolic links on a file share.

", - "CreateSMBFileShare": "

Creates a Server Message Block (SMB) file share on an existing S3 File Gateway. In Storage Gateway, a file share is a file system mount point backed by Amazon S3 cloud storage. Storage Gateway exposes file shares using an SMB interface. This operation is only supported for S3 File Gateways.

S3 File Gateways require Security Token Service (STS) to be activated to enable you to create a file share. Make sure that STS is activated in the Region you are creating your S3 File Gateway in. If STS is not activated in this Region, activate it. For information about how to activate STS, see Activating and deactivating STS in an Region in the Identity and Access Management User Guide.

File gateways don't support creating hard or symbolic links on a file share.

", + "CreateNFSFileShare": "

Creates a Network File System (NFS) file share on an existing S3 File Gateway. In Storage Gateway, a file share is a file system mount point backed by Amazon S3 cloud storage. Storage Gateway exposes file shares using an NFS interface. This operation is only supported for S3 File Gateways.

S3 File gateway requires Security Token Service (Amazon Web Services STS) to be activated to enable you to create a file share. Make sure Amazon Web Services STS is activated in the Amazon Web Services Region you are creating your S3 File Gateway in. If Amazon Web Services STS is not activated in the Amazon Web Services Region, activate it. For information about how to activate Amazon Web Services STS, see Activating and deactivating Amazon Web Services STS in an Amazon Web Services Region in the Identity and Access Management User Guide.

S3 File Gateways do not support creating hard or symbolic links on a file share.

", + "CreateSMBFileShare": "

Creates a Server Message Block (SMB) file share on an existing S3 File Gateway. In Storage Gateway, a file share is a file system mount point backed by Amazon S3 cloud storage. Storage Gateway exposes file shares using an SMB interface. This operation is only supported for S3 File Gateways.

S3 File Gateways require Security Token Service (Amazon Web Services STS) to be activated to enable you to create a file share. Make sure that Amazon Web Services STS is activated in the Amazon Web Services Region you are creating your S3 File Gateway in. If Amazon Web Services STS is not activated in this Amazon Web Services Region, activate it. For information about how to activate Amazon Web Services STS, see Activating and deactivating Amazon Web Services STS in an Amazon Web Services Region in the Identity and Access Management User Guide.

File gateways don't support creating hard or symbolic links on a file share.

", "CreateSnapshot": "

Initiates a snapshot of a volume.

Storage Gateway provides the ability to back up point-in-time snapshots of your data to Amazon Simple Storage (Amazon S3) for durable off-site recovery, and also import the data to an Amazon Elastic Block Store (EBS) volume in Amazon Elastic Compute Cloud (EC2). You can take snapshots of your gateway volume on a scheduled or ad hoc basis. This API enables you to take an ad hoc snapshot. For more information, see Editing a snapshot schedule.

In the CreateSnapshot request, you identify the volume by providing its Amazon Resource Name (ARN). You must also provide description for the snapshot. When Storage Gateway takes the snapshot of specified volume, the snapshot and description appears in the Storage Gateway console. In response, Storage Gateway returns you a snapshot ID. You can use this snapshot ID to check the snapshot progress or later use it when you want to create a volume from a snapshot. This operation is only supported in stored and cached volume gateway type.

To list or delete a snapshot, you must use the Amazon EC2 API. For more information, see DescribeSnapshots or DeleteSnapshot in the Amazon Elastic Compute Cloud API Reference.

Volume and snapshot IDs are changing to a longer length ID format. For more information, see the important note on the Welcome page.

", "CreateSnapshotFromVolumeRecoveryPoint": "

Initiates a snapshot of a gateway from a volume recovery point. This operation is only supported in the cached volume gateway type.

A volume recovery point is a point in time at which all data of the volume is consistent and from which you can create a snapshot. To get a list of volume recovery point for cached volume gateway, use ListVolumeRecoveryPoints.

In the CreateSnapshotFromVolumeRecoveryPoint request, you identify the volume by providing its Amazon Resource Name (ARN). You must also provide a description for the snapshot. When the gateway takes a snapshot of the specified volume, the snapshot and its description appear in the Storage Gateway console. In response, the gateway returns you a snapshot ID. You can use this snapshot ID to check the snapshot progress or later use it when you want to create a volume from a snapshot.

To list or delete a snapshot, you must use the Amazon EC2 API. For more information, see DescribeSnapshots or DeleteSnapshot in the Amazon Elastic Compute Cloud API Reference.

", "CreateStorediSCSIVolume": "

Creates a volume on a specified gateway. This operation is only supported in the stored volume gateway type.

The size of the volume to create is inferred from the disk size. You can choose to preserve existing data on the disk, create volume from an existing snapshot, or create an empty volume. If you choose to create an empty gateway volume, then any existing data on the disk is erased.

In the request, you must specify the gateway and the disk information on which you are creating the volume. In response, the gateway creates the volume and returns volume information such as the volume Amazon Resource Name (ARN), its size, and the iSCSI target ARN that initiators can use to connect to the volume target.

", @@ -58,7 +58,7 @@ "ListAutomaticTapeCreationPolicies": "

Lists the automatic tape creation policies for a gateway. If there are no automatic tape creation policies for the gateway, it returns an empty list.

This operation is only supported for tape gateways.

", "ListFileShares": "

Gets a list of the file shares for a specific S3 File Gateway, or the list of file shares that belong to the calling user account. This operation is only supported for S3 File Gateways.

", "ListFileSystemAssociations": "

Gets a list of FileSystemAssociationSummary objects. Each object contains a summary of a file system association. This operation is only supported for FSx File Gateways.

", - "ListGateways": "

Lists gateways owned by an account in an Region specified in the request. The returned list is ordered by gateway Amazon Resource Name (ARN).

By default, the operation returns a maximum of 100 gateways. This operation supports pagination that allows you to optionally reduce the number of gateways returned in a response.

If you have more gateways than are returned in a response (that is, the response returns only a truncated list of your gateways), the response contains a marker that you can specify in your next request to fetch the next page of gateways.

", + "ListGateways": "

Lists gateways owned by an Amazon Web Services account in an Amazon Web Services Region specified in the request. The returned list is ordered by gateway Amazon Resource Name (ARN).

By default, the operation returns a maximum of 100 gateways. This operation supports pagination that allows you to optionally reduce the number of gateways returned in a response.

If you have more gateways than are returned in a response (that is, the response returns only a truncated list of your gateways), the response contains a marker that you can specify in your next request to fetch the next page of gateways.

", "ListLocalDisks": "

Returns a list of the gateway's local disks. To specify which gateway to describe, you use the Amazon Resource Name (ARN) of the gateway in the body of the request.

The request returns a list of all disks, specifying which are configured as working storage, cache storage, or stored volume or not configured at all. The response includes a DiskStatus field. This field can have a value of present (the disk is available to use), missing (the disk is no longer connected to the gateway), or mismatch (the disk node is occupied by a disk that has incorrect metadata or the disk content is corrupted).

", "ListTagsForResource": "

Lists the tags that have been added to the specified resource. This operation is supported in storage gateways of all types.

", "ListTapePools": "

Lists custom tape pools. You specify custom tape pools to list by specifying one or more custom tape pool Amazon Resource Names (ARNs). If you don't specify a custom tape pool ARN, the operation lists all custom tape pools.

This operation supports pagination. You can optionally specify the Limit parameter in the body to limit the number of tape pools in the response. If the number of tape pools returned in the response is truncated, the response includes a Marker element that you can use in your subsequent request to retrieve the next set of tape pools.

", @@ -86,8 +86,9 @@ "UpdateGatewaySoftwareNow": "

Updates the gateway virtual machine (VM) software. The request immediately triggers the software update.

When you make this request, you get a 200 OK success response immediately. However, it might take some time for the update to complete. You can call DescribeGatewayInformation to verify the gateway is in the STATE_RUNNING state.

A software update forces a system restart of your gateway. You can minimize the chance of any disruption to your applications by increasing your iSCSI Initiators' timeouts. For more information about increasing iSCSI Initiator timeouts for Windows and Linux, see Customizing your Windows iSCSI settings and Customizing your Linux iSCSI settings, respectively.

", "UpdateMaintenanceStartTime": "

Updates a gateway's weekly maintenance start time information, including day and time of the week. The maintenance time is the time in your gateway's time zone.

", "UpdateNFSFileShare": "

Updates a Network File System (NFS) file share. This operation is only supported in S3 File Gateways.

To leave a file share field unchanged, set the corresponding input field to null.

Updates the following file share settings:

", - "UpdateSMBFileShare": "

Updates a Server Message Block (SMB) file share. This operation is only supported for S3 File Gateways.

To leave a file share field unchanged, set the corresponding input field to null.

File gateways require Security Token Service (STS) to be activated to enable you to create a file share. Make sure that STS is activated in the Region you are creating your file gateway in. If STS is not activated in this Region, activate it. For information about how to activate STS, see Activating and deactivating STS in an Region in the Identity and Access Management User Guide.

File gateways don't support creating hard or symbolic links on a file share.

", + "UpdateSMBFileShare": "

Updates a Server Message Block (SMB) file share. This operation is only supported for S3 File Gateways.

To leave a file share field unchanged, set the corresponding input field to null.

File gateways require Security Token Service (Amazon Web Services STS) to be activated to enable you to create a file share. Make sure that Amazon Web Services STS is activated in the Amazon Web Services Region you are creating your file gateway in. If Amazon Web Services STS is not activated in this Amazon Web Services Region, activate it. For information about how to activate Amazon Web Services STS, see Activating and deactivating Amazon Web Services STS in an Amazon Web Services Region in the Identity and Access Management User Guide.

File gateways don't support creating hard or symbolic links on a file share.

", "UpdateSMBFileShareVisibility": "

Controls whether the shares on an S3 File Gateway are visible in a net view or browse list. The operation is only supported for S3 File Gateways.

", + "UpdateSMBLocalGroups": "

Updates the list of Active Directory users and groups that have special permissions for SMB file shares on the gateway.

", "UpdateSMBSecurityStrategy": "

Updates the SMB security strategy on a file gateway. This action is only supported in file gateways.

This API is called Security level in the User Guide.

A higher security level can affect performance of the gateway.

", "UpdateSnapshotSchedule": "

Updates a snapshot schedule configured for a gateway volume. This operation is only supported in the cached volume and stored volume gateway types.

The default snapshot schedule for volume is once every 24 hours, starting at the creation time of the volume. You can use this API to change the snapshot schedule configured for the volume.

In the request you must identify the gateway volume whose snapshot schedule you want to update, and the schedule information, including when you want the snapshot to begin on a day and the frequency (in hours) of snapshots.

", "UpdateVTLDeviceType": "

Updates the type of medium changer in a tape gateway. When you activate a tape gateway, you select a medium changer type for the tape gateway. This operation enables you to select a different type of medium changer after a tape gateway is activated. This operation is only supported in the tape gateway type.

" @@ -99,7 +100,7 @@ } }, "ActivateGatewayOutput": { - "base": "

Storage Gateway returns the Amazon Resource Name (ARN) of the activated gateway. It is a string made of information such as your account, gateway name, and Region. This ARN is used to reference the gateway in other API operations as well as resource-based authorization.

For gateways activated prior to September 02, 2015, the gateway ARN contains the gateway name rather than the gateway ID. Changing the name of the gateway has no effect on the gateway ARN.

", + "base": "

Storage Gateway returns the Amazon Resource Name (ARN) of the activated gateway. It is a string made of information such as your account, gateway name, and Amazon Web Services Region. This ARN is used to reference the gateway in other API operations as well as resource-based authorization.

For gateways activated prior to September 02, 2015, the gateway ARN contains the gateway name rather than the gateway ID. Changing the name of the gateway has no effect on the gateway ARN.

", "refs": { } }, @@ -190,10 +191,13 @@ "base": null, "refs": { "AssociateFileSystemInput$AuditDestinationARN": "

The Amazon Resource Name (ARN) of the storage used for the audit logs.

", + "CreateNFSFileShareInput$AuditDestinationARN": "

The Amazon Resource Name (ARN) of the storage used for audit logs.

", "CreateSMBFileShareInput$AuditDestinationARN": "

The Amazon Resource Name (ARN) of the storage used for audit logs.

", "FileSystemAssociationInfo$AuditDestinationARN": "

The Amazon Resource Name (ARN) of the storage used for the audit logs.

", + "NFSFileShareInfo$AuditDestinationARN": "

The Amazon Resource Name (ARN) of the storage used for audit logs.

", "SMBFileShareInfo$AuditDestinationARN": "

The Amazon Resource Name (ARN) of the storage used for audit logs.

", "UpdateFileSystemAssociationInput$AuditDestinationARN": "

The Amazon Resource Name (ARN) of the storage used for the audit logs.

", + "UpdateNFSFileShareInput$AuditDestinationARN": "

The Amazon Resource Name (ARN) of the storage used for audit logs.

", "UpdateSMBFileShareInput$AuditDestinationARN": "

The Amazon Resource Name (ARN) of the storage used for audit logs.

" } }, @@ -325,7 +329,7 @@ "NFSFileShareInfo$CacheAttributes": "

Refresh cache information for the file share.

", "SMBFileShareInfo$CacheAttributes": "

Refresh cache information for the file share.

", "UpdateFileSystemAssociationInput$CacheAttributes": null, - "UpdateNFSFileShareInput$CacheAttributes": "

specifies refresh cache information for the file share.

", + "UpdateNFSFileShareInput$CacheAttributes": "

Specifies refresh cache information for the file share.

", "UpdateSMBFileShareInput$CacheAttributes": "

Specifies refresh cache information for the file share.

" } }, @@ -987,8 +991,8 @@ "Ec2InstanceRegion": { "base": null, "refs": { - "DescribeGatewayInformationOutput$Ec2InstanceRegion": "

The Region where the Amazon EC2 instance is located.

", - "GatewayInfo$Ec2InstanceRegion": "

The Region where the Amazon EC2 instance is located.

" + "DescribeGatewayInformationOutput$Ec2InstanceRegion": "

The Amazon Web Services Region where the Amazon EC2 instance is located.

", + "GatewayInfo$Ec2InstanceRegion": "

The Amazon Web Services Region where the Amazon EC2 instance is located.

" } }, "EndpointNetworkConfiguration": { @@ -1069,12 +1073,12 @@ "FileShareName": { "base": null, "refs": { - "CreateNFSFileShareInput$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN.

", - "CreateSMBFileShareInput$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN.

", - "NFSFileShareInfo$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN.

", - "SMBFileShareInfo$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN.

", - "UpdateNFSFileShareInput$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN.

", - "UpdateSMBFileShareInput$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN.

" + "CreateNFSFileShareInput$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

", + "CreateSMBFileShareInput$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

", + "NFSFileShareInfo$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

", + "SMBFileShareInfo$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

", + "UpdateNFSFileShareInput$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

", + "UpdateSMBFileShareInput$FileShareName": "

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

" } }, "FileShareStatus": { @@ -1135,6 +1139,18 @@ "FileSystemAssociationSummary$FileSystemAssociationStatus": "

The status of the file share. Valid Values: AVAILABLE | CREATING | DELETING | FORCE_DELETING | UPDATING | ERROR

" } }, + "FileSystemAssociationStatusDetail": { + "base": "

Detailed information on file system association status.

", + "refs": { + "FileSystemAssociationStatusDetails$member": null + } + }, + "FileSystemAssociationStatusDetails": { + "base": null, + "refs": { + "FileSystemAssociationInfo$FileSystemAssociationStatusDetails": "

An array containing the FileSystemAssociationStatusDetail data type, which provides detailed information on file system association status.

" + } + }, "FileSystemAssociationSummary": { "base": "

Gets the summary returned by ListFileSystemAssociation, which is a summary of a created file system association.

", "refs": { @@ -1147,6 +1163,12 @@ "ListFileSystemAssociationsOutput$FileSystemAssociationSummaryList": "

An array of information about the Amazon FSx gateway's file system associations.

" } }, + "FileSystemAssociationSyncErrorCode": { + "base": null, + "refs": { + "FileSystemAssociationStatusDetail$ErrorCode": "

The error code for a given file system association status.

" + } + }, "FileSystemLocationARN": { "base": null, "refs": { @@ -1167,7 +1189,7 @@ } }, "GatewayARN": { - "base": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Region.

", + "base": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", "refs": { "ActivateGatewayOutput$GatewayARN": null, "AddCacheInput$GatewayARN": null, @@ -1185,15 +1207,15 @@ "CreateNFSFileShareInput$GatewayARN": "

The Amazon Resource Name (ARN) of the S3 File Gateway on which you want to create a file share.

", "CreateSMBFileShareInput$GatewayARN": "

The ARN of the S3 File Gateway on which you want to create a file share.

", "CreateStorediSCSIVolumeInput$GatewayARN": null, - "CreateTapeWithBarcodeInput$GatewayARN": "

The unique Amazon Resource Name (ARN) that represents the gateway to associate the virtual tape with. Use the ListGateways operation to return a list of gateways for your account and Region.

", - "CreateTapesInput$GatewayARN": "

The unique Amazon Resource Name (ARN) that represents the gateway to associate the virtual tapes with. Use the ListGateways operation to return a list of gateways for your account and Region.

", + "CreateTapeWithBarcodeInput$GatewayARN": "

The unique Amazon Resource Name (ARN) that represents the gateway to associate the virtual tape with. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", + "CreateTapesInput$GatewayARN": "

The unique Amazon Resource Name (ARN) that represents the gateway to associate the virtual tapes with. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", "DeleteAutomaticTapeCreationPolicyInput$GatewayARN": null, "DeleteAutomaticTapeCreationPolicyOutput$GatewayARN": null, "DeleteBandwidthRateLimitInput$GatewayARN": null, "DeleteBandwidthRateLimitOutput$GatewayARN": null, "DeleteGatewayInput$GatewayARN": null, "DeleteGatewayOutput$GatewayARN": null, - "DeleteTapeInput$GatewayARN": "

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to delete is associated with. Use the ListGateways operation to return a list of gateways for your account and Region.

", + "DeleteTapeInput$GatewayARN": "

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to delete is associated with. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", "DescribeAvailabilityMonitorTestInput$GatewayARN": null, "DescribeAvailabilityMonitorTestOutput$GatewayARN": null, "DescribeBandwidthRateLimitInput$GatewayARN": null, @@ -1222,8 +1244,8 @@ "FileShareInfo$GatewayARN": null, "FileSystemAssociationInfo$GatewayARN": null, "FileSystemAssociationSummary$GatewayARN": null, - "GatewayInfo$GatewayARN": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Region.

", - "JoinDomainInput$GatewayARN": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Region.

", + "GatewayInfo$GatewayARN": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", + "JoinDomainInput$GatewayARN": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", "JoinDomainOutput$GatewayARN": "

The unique Amazon Resource Name (ARN) of the gateway that joined the domain.

", "ListAutomaticTapeCreationPoliciesInput$GatewayARN": null, "ListFileSharesInput$GatewayARN": "

The Amazon Resource Name (ARN) of the gateway whose file shares you want to list. If this field is not present, all file shares under your account are listed.

", @@ -1237,7 +1259,7 @@ "NFSFileShareInfo$GatewayARN": null, "ResetCacheInput$GatewayARN": null, "ResetCacheOutput$GatewayARN": null, - "RetrieveTapeArchiveInput$GatewayARN": "

The Amazon Resource Name (ARN) of the gateway you want to retrieve the virtual tape to. Use the ListGateways operation to return a list of gateways for your account and Region.

You retrieve archived virtual tapes to only one gateway and the gateway must be a tape gateway.

", + "RetrieveTapeArchiveInput$GatewayARN": "

The Amazon Resource Name (ARN) of the gateway you want to retrieve the virtual tape to. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

You retrieve archived virtual tapes to only one gateway and the gateway must be a tape gateway.

", "RetrieveTapeRecoveryPointInput$GatewayARN": null, "SMBFileShareInfo$GatewayARN": null, "SetLocalConsolePasswordInput$GatewayARN": null, @@ -1251,7 +1273,7 @@ "StartGatewayInput$GatewayARN": null, "StartGatewayOutput$GatewayARN": null, "TapeArchive$RetrievedTo": "

The Amazon Resource Name (ARN) of the tape gateway that the virtual tape is being retrieved to.

The virtual tape is retrieved from the virtual tape shelf (VTS).

", - "TapeInfo$GatewayARN": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Region.

", + "TapeInfo$GatewayARN": "

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

", "UpdateAutomaticTapeCreationPolicyInput$GatewayARN": null, "UpdateAutomaticTapeCreationPolicyOutput$GatewayARN": null, "UpdateBandwidthRateLimitInput$GatewayARN": null, @@ -1266,6 +1288,8 @@ "UpdateMaintenanceStartTimeOutput$GatewayARN": null, "UpdateSMBFileShareVisibilityInput$GatewayARN": null, "UpdateSMBFileShareVisibilityOutput$GatewayARN": null, + "UpdateSMBLocalGroupsInput$GatewayARN": null, + "UpdateSMBLocalGroupsOutput$GatewayARN": null, "UpdateSMBSecurityStrategyInput$GatewayARN": null, "UpdateSMBSecurityStrategyOutput$GatewayARN": null, "VolumeInfo$GatewayARN": null @@ -1573,10 +1597,10 @@ } }, "LocationARN": { - "base": "

The ARN of the backend storage used for storing file data. A prefix name can be added to the S3 bucket name. It must end with a \"/\".

", + "base": "

A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an optional prefix concatenation. The prefix must end with a forward slash (/).

You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following examples.

Bucket ARN:

arn:aws:s3:::my-bucket/prefix/

Access point ARN:

arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/

If you specify an access point, the bucket policy must be configured to delegate access control to the access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.

Access point alias:

test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias

", "refs": { - "CreateNFSFileShareInput$LocationARN": "

The ARN of the backend storage used for storing file data. A prefix name can be added to the S3 bucket name. It must end with a \"/\".

You can specify a bucket attached to an access point using a complete ARN that includes the bucket region as shown:

arn:aws:s3:region:account-id:accesspoint/access-point-name

If you specify a bucket attached to an access point, the bucket policy must be configured to delegate access control to the access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.

", - "CreateSMBFileShareInput$LocationARN": "

The ARN of the backend storage used for storing file data. A prefix name can be added to the S3 bucket name. It must end with a \"/\".

You can specify a bucket attached to an access point using a complete ARN that includes the bucket region as shown:

arn:aws:s3:region:account-id:accesspoint/access-point-name

If you specify a bucket attached to an access point, the bucket policy must be configured to delegate access control to the access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.

", + "CreateNFSFileShareInput$LocationARN": "

A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an optional prefix concatenation. The prefix must end with a forward slash (/).

You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following examples.

Bucket ARN:

arn:aws:s3:::my-bucket/prefix/

Access point ARN:

arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/

If you specify an access point, the bucket policy must be configured to delegate access control to the access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.

Access point alias:

test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias

", + "CreateSMBFileShareInput$LocationARN": "

A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an optional prefix concatenation. The prefix must end with a forward slash (/).

You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following examples.

Bucket ARN:

arn:aws:s3:::my-bucket/prefix/

Access point ARN:

arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/

If you specify an access point, the bucket policy must be configured to delegate access control to the access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.

Access point alias:

test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias

", "NFSFileShareInfo$LocationARN": null, "SMBFileShareInfo$LocationARN": null } @@ -1748,11 +1772,11 @@ "PoolARN": { "base": null, "refs": { - "CreateTapePoolOutput$PoolARN": "

The unique Amazon Resource Name (ARN) that represents the custom tape pool. Use the ListTapePools operation to return a list of tape pools for your account and Region.

", + "CreateTapePoolOutput$PoolARN": "

The unique Amazon Resource Name (ARN) that represents the custom tape pool. Use the ListTapePools operation to return a list of tape pools for your account and Amazon Web Services Region.

", "DeleteTapePoolInput$PoolARN": "

The Amazon Resource Name (ARN) of the custom tape pool to delete.

", "DeleteTapePoolOutput$PoolARN": "

The Amazon Resource Name (ARN) of the custom tape pool being deleted.

", "PoolARNs$member": null, - "PoolInfo$PoolARN": "

The Amazon Resource Name (ARN) of the custom tape pool. Use the ListTapePools operation to return a list of custom tape pools for your account and Region.

" + "PoolInfo$PoolARN": "

The Amazon Resource Name (ARN) of the custom tape pool. Use the ListTapePools operation to return a list of custom tape pools for your account and Amazon Web Services Region.

" } }, "PoolARNs": { @@ -1835,7 +1859,7 @@ "RegionId": { "base": null, "refs": { - "ActivateGatewayInput$GatewayRegion": "

A value that indicates the Region where you want to store your data. The gateway Region specified must be the same Region as the Region in your Host header in the request. For more information about available Regions and endpoints for Storage Gateway, see Storage Gateway endpoints and quotas in the Amazon Web Services General Reference.

Valid Values: See Storage Gateway endpoints and quotas in the Amazon Web Services General Reference.

", + "ActivateGatewayInput$GatewayRegion": "

A value that indicates the Amazon Web Services Region where you want to store your data. The gateway Amazon Web Services Region specified must be the same Amazon Web Services Region as the Amazon Web Services Region in your Host header in the request. For more information about available Amazon Web Services Regions and endpoints for Storage Gateway, see Storage Gateway endpoints and quotas in the Amazon Web Services General Reference.

Valid Values: See Storage Gateway endpoints and quotas in the Amazon Web Services General Reference.

", "CreateNFSFileShareInput$BucketRegion": "

Specifies the Region of the S3 bucket where the NFS file share stores files.

This parameter is required for NFS file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

", "CreateSMBFileShareInput$BucketRegion": "

Specifies the Region of the S3 bucket where the SMB file share stores files.

This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

", "NFSFileShareInfo$BucketRegion": "

Specifies the Region of the S3 bucket where the NFS file share stores files.

This parameter is required for NFS file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

", @@ -1883,8 +1907,8 @@ "RetentionLockType": { "base": null, "refs": { - "CreateTapePoolInput$RetentionLockType": "

Tape retention lock can be configured in two modes. When configured in governance mode, accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root account.

", - "PoolInfo$RetentionLockType": "

Tape retention lock type, which can be configured in two modes. When configured in governance mode, accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root account.

" + "CreateTapePoolInput$RetentionLockType": "

Tape retention lock can be configured in two modes. When configured in governance mode, Amazon Web Services accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root Amazon Web Services account.

", + "PoolInfo$RetentionLockType": "

Tape retention lock type, which can be configured in two modes. When configured in governance mode, Amazon Web Services accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root Amazon Web Services account.

" } }, "RetrieveTapeArchiveInput": { @@ -1934,6 +1958,13 @@ "SetSMBGuestPasswordInput$Password": "

The password that you want to set for your SMB server.

" } }, + "SMBLocalGroups": { + "base": "

A list of Active Directory users and groups that have special permissions for SMB file shares on the gateway.

", + "refs": { + "DescribeSMBSettingsOutput$SMBLocalGroups": "

A list of Active Directory users and groups that have special permissions for SMB file shares on the gateway.

", + "UpdateSMBLocalGroupsInput$SMBLocalGroups": "

A list of Active Directory users and groups that you want to grant special permissions for SMB file shares on the gateway.

" + } + }, "SMBSecurityStrategy": { "base": null, "refs": { @@ -2421,6 +2452,16 @@ "refs": { } }, + "UpdateSMBLocalGroupsInput": { + "base": null, + "refs": { + } + }, + "UpdateSMBLocalGroupsOutput": { + "base": null, + "refs": { + } + }, "UpdateSMBSecurityStrategyInput": { "base": null, "refs": { @@ -2460,6 +2501,7 @@ "SMBFileShareInfo$AdminUserList": "

A list of users or groups in the Active Directory that have administrator rights to the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\\User1, user1, @group1, and @DOMAIN\\group1. Can only be set if Authentication is set to ActiveDirectory.

", "SMBFileShareInfo$ValidUserList": "

A list of users or groups in the Active Directory that are allowed to access the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\\User1, user1, @group1, and @DOMAIN\\group1. Can only be set if Authentication is set to ActiveDirectory.

", "SMBFileShareInfo$InvalidUserList": "

A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\\User1, user1, @group1, and @DOMAIN\\group1. Can only be set if Authentication is set to ActiveDirectory.

", + "SMBLocalGroups$GatewayAdmins": "

A list of Active Directory users and groups that have local Gateway Admin permissions. Acceptable formats include: DOMAIN\\User1, user1, DOMAIN\\group1, and group1.

Gateway Admins can use the Shared Folders Microsoft Management Console snap-in to force-close files that are open and locked.

", "UpdateSMBFileShareInput$AdminUserList": "

A list of users or groups in the Active Directory that have administrator rights to the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\\User1, user1, @group1, and @DOMAIN\\group1. Can only be set if Authentication is set to ActiveDirectory.

", "UpdateSMBFileShareInput$ValidUserList": "

A list of users or groups in the Active Directory that are allowed to access the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\\User1, user1, @group1, and @DOMAIN\\group1. Can only be set if Authentication is set to ActiveDirectory.

", "UpdateSMBFileShareInput$InvalidUserList": "

A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\\User1, user1, @group1, and @DOMAIN\\group1. Can only be set if Authentication is set to ActiveDirectory.

" diff --git a/models/apis/workmail/2017-10-01/api-2.json b/models/apis/workmail/2017-10-01/api-2.json index 7ec186cbc1..0995d65b6c 100644 --- a/models/apis/workmail/2017-10-01/api-2.json +++ b/models/apis/workmail/2017-10-01/api-2.json @@ -355,6 +355,23 @@ ], "idempotent":true }, + "DeregisterMailDomain":{ + "name":"DeregisterMailDomain", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeregisterMailDomainRequest"}, + "output":{"shape":"DeregisterMailDomainResponse"}, + "errors":[ + {"shape":"MailDomainInUseException"}, + {"shape":"OrganizationNotFoundException"}, + {"shape":"OrganizationStateException"}, + {"shape":"InvalidParameterException"}, + {"shape":"InvalidCustomSesConfigurationException"} + ], + "idempotent":true + }, "DescribeGroup":{ "name":"DescribeGroup", "http":{ @@ -515,6 +532,22 @@ ], "idempotent":true }, + "GetMailDomain":{ + "name":"GetMailDomain", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetMailDomainRequest"}, + "output":{"shape":"GetMailDomainResponse"}, + "errors":[ + {"shape":"MailDomainNotFoundException"}, + {"shape":"OrganizationNotFoundException"}, + {"shape":"OrganizationStateException"}, + {"shape":"InvalidParameterException"} + ], + "idempotent":true + }, "GetMailboxDetails":{ "name":"GetMailboxDetails", "http":{ @@ -623,6 +656,21 @@ ], "idempotent":true }, + "ListMailDomains":{ + "name":"ListMailDomains", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListMailDomainsRequest"}, + "output":{"shape":"ListMailDomainsResponse"}, + "errors":[ + {"shape":"InvalidParameterException"}, + {"shape":"OrganizationNotFoundException"}, + {"shape":"OrganizationStateException"} + ], + "idempotent":true + }, "ListMailboxExportJobs":{ "name":"ListMailboxExportJobs", "http":{ @@ -834,6 +882,23 @@ ], "idempotent":true }, + "RegisterMailDomain":{ + "name":"RegisterMailDomain", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RegisterMailDomainRequest"}, + "output":{"shape":"RegisterMailDomainResponse"}, + "errors":[ + {"shape":"MailDomainInUseException"}, + {"shape":"OrganizationNotFoundException"}, + {"shape":"OrganizationStateException"}, + {"shape":"LimitExceededException"}, + {"shape":"InvalidParameterException"} + ], + "idempotent":true + }, "RegisterToWorkMail":{ "name":"RegisterToWorkMail", "http":{ @@ -921,6 +986,23 @@ {"shape":"ResourceNotFoundException"} ] }, + "UpdateDefaultMailDomain":{ + "name":"UpdateDefaultMailDomain", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateDefaultMailDomainRequest"}, + "output":{"shape":"UpdateDefaultMailDomainResponse"}, + "errors":[ + {"shape":"MailDomainNotFoundException"}, + {"shape":"MailDomainStateException"}, + {"shape":"OrganizationNotFoundException"}, + {"shape":"OrganizationStateException"}, + {"shape":"InvalidParameterException"} + ], + "idempotent":true + }, "UpdateMailboxQuota":{ "name":"UpdateMailboxQuota", "http":{ @@ -1463,6 +1545,22 @@ "members":{ } }, + "DeregisterMailDomainRequest":{ + "type":"structure", + "required":[ + "OrganizationId", + "DomainName" + ], + "members":{ + "OrganizationId":{"shape":"OrganizationId"}, + "DomainName":{"shape":"WorkMailDomainName"} + } + }, + "DeregisterMailDomainResponse":{ + "type":"structure", + "members":{ + } + }, "DescribeGroupRequest":{ "type":"structure", "required":[ @@ -1718,6 +1816,26 @@ "members":{ } }, + "DnsRecord":{ + "type":"structure", + "members":{ + "Type":{"shape":"String"}, + "Hostname":{"shape":"String"}, + "Value":{"shape":"String"} + } + }, + "DnsRecordVerificationStatus":{ + "type":"string", + "enum":[ + "PENDING", + "VERIFIED", + "FAILED" + ] + }, + "DnsRecords":{ + "type":"list", + "member":{"shape":"DnsRecord"} + }, "Domain":{ "type":"structure", "members":{ @@ -1849,6 +1967,27 @@ "FolderConfigurations":{"shape":"FolderConfigurations"} } }, + "GetMailDomainRequest":{ + "type":"structure", + "required":[ + "OrganizationId", + "DomainName" + ], + "members":{ + "OrganizationId":{"shape":"OrganizationId"}, + "DomainName":{"shape":"WorkMailDomainName"} + } + }, + "GetMailDomainResponse":{ + "type":"structure", + "members":{ + "Records":{"shape":"DnsRecords"}, + "IsTestDomain":{"shape":"Boolean"}, + "IsDefault":{"shape":"Boolean"}, + "OwnershipVerificationStatus":{"shape":"DnsRecordVerificationStatus"}, + "DkimVerificationStatus":{"shape":"DnsRecordVerificationStatus"} + } + }, "GetMailboxDetailsRequest":{ "type":"structure", "required":[ @@ -1949,6 +2088,13 @@ }, "exception":true }, + "InvalidCustomSesConfigurationException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "exception":true + }, "InvalidParameterException":{ "type":"structure", "members":{ @@ -2067,6 +2213,22 @@ "NextToken":{"shape":"NextToken"} } }, + "ListMailDomainsRequest":{ + "type":"structure", + "required":["OrganizationId"], + "members":{ + "OrganizationId":{"shape":"OrganizationId"}, + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"NextToken"} + } + }, + "ListMailDomainsResponse":{ + "type":"structure", + "members":{ + "MailDomains":{"shape":"MailDomains"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListMailboxExportJobsRequest":{ "type":"structure", "required":["OrganizationId"], @@ -2213,6 +2375,13 @@ "NextToken":{"shape":"NextToken"} } }, + "MailDomainInUseException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "exception":true + }, "MailDomainNotFoundException":{ "type":"structure", "members":{ @@ -2227,6 +2396,17 @@ }, "exception":true }, + "MailDomainSummary":{ + "type":"structure", + "members":{ + "DomainName":{"shape":"DomainName"}, + "DefaultDomain":{"shape":"Boolean"} + } + }, + "MailDomains":{ + "type":"list", + "member":{"shape":"MailDomainSummary"} + }, "MailboxExportErrorInfo":{ "type":"string", "max":1024, @@ -2579,6 +2759,26 @@ "members":{ } }, + "RegisterMailDomainRequest":{ + "type":"structure", + "required":[ + "OrganizationId", + "DomainName" + ], + "members":{ + "ClientToken":{ + "shape":"IdempotencyClientToken", + "idempotencyToken":true + }, + "OrganizationId":{"shape":"OrganizationId"}, + "DomainName":{"shape":"WorkMailDomainName"} + } + }, + "RegisterMailDomainResponse":{ + "type":"structure", + "members":{ + } + }, "RegisterToWorkMailRequest":{ "type":"structure", "required":[ @@ -2820,6 +3020,22 @@ "members":{ } }, + "UpdateDefaultMailDomainRequest":{ + "type":"structure", + "required":[ + "OrganizationId", + "DomainName" + ], + "members":{ + "OrganizationId":{"shape":"OrganizationId"}, + "DomainName":{"shape":"WorkMailDomainName"} + } + }, + "UpdateDefaultMailDomainResponse":{ + "type":"structure", + "members":{ + } + }, "UpdateMailboxQuotaRequest":{ "type":"structure", "required":[ @@ -2940,6 +3156,12 @@ "type":"list", "member":{"shape":"User"} }, + "WorkMailDomainName":{ + "type":"string", + "max":209, + "min":3, + "pattern":"[a-zA-Z0-9.-]+\\.[a-zA-Z-]{2,}" + }, "WorkMailIdentifier":{ "type":"string", "max":256, diff --git a/models/apis/workmail/2017-10-01/docs-2.json b/models/apis/workmail/2017-10-01/docs-2.json index be245a0a9a..4b69e1d66e 100644 --- a/models/apis/workmail/2017-10-01/docs-2.json +++ b/models/apis/workmail/2017-10-01/docs-2.json @@ -11,17 +11,18 @@ "CreateOrganization": "

Creates a new Amazon WorkMail organization. Optionally, you can choose to associate an existing AWS Directory Service directory with your organization. If an AWS Directory Service directory ID is specified, the organization alias must match the directory alias. If you choose not to associate an existing directory with your organization, then we create a new Amazon WorkMail directory for you. For more information, see Adding an organization in the Amazon WorkMail Administrator Guide.

You can associate multiple email domains with an organization, then set your default email domain from the Amazon WorkMail console. You can also associate a domain that is managed in an Amazon Route 53 public hosted zone. For more information, see Adding a domain and Choosing the default domain in the Amazon WorkMail Administrator Guide.

Optionally, you can use a customer managed master key from AWS Key Management Service (AWS KMS) to encrypt email for your organization. If you don't associate an AWS KMS key, Amazon WorkMail creates a default AWS managed master key for you.

", "CreateResource": "

Creates a new Amazon WorkMail resource.

", "CreateUser": "

Creates a user who can be used in Amazon WorkMail by calling the RegisterToWorkMail operation.

", - "DeleteAccessControlRule": "

Deletes an access control rule for the specified WorkMail organization.

", + "DeleteAccessControlRule": "

Deletes an access control rule for the specified WorkMail organization.

Deleting already deleted and non-existing rules does not produce an error. In those cases, the service sends back an HTTP 200 response with an empty HTTP body.

", "DeleteAlias": "

Remove one or more specified aliases from a set of aliases for a given user.

", "DeleteGroup": "

Deletes a group from Amazon WorkMail.

", "DeleteMailboxPermissions": "

Deletes permissions granted to a member (user or group).

", - "DeleteMobileDeviceAccessOverride": "

Deletes the mobile device access override for the given WorkMail organization, user, and device.

", - "DeleteMobileDeviceAccessRule": "

Deletes a mobile device access rule for the specified Amazon WorkMail organization.

", + "DeleteMobileDeviceAccessOverride": "

Deletes the mobile device access override for the given WorkMail organization, user, and device.

Deleting already deleted and non-existing overrides does not produce an error. In those cases, the service sends back an HTTP 200 response with an empty HTTP body.

", + "DeleteMobileDeviceAccessRule": "

Deletes a mobile device access rule for the specified Amazon WorkMail organization.

Deleting already deleted and non-existing rules does not produce an error. In those cases, the service sends back an HTTP 200 response with an empty HTTP body.

", "DeleteOrganization": "

Deletes an Amazon WorkMail organization and all underlying AWS resources managed by Amazon WorkMail as part of the organization. You can choose whether to delete the associated directory. For more information, see Removing an organization in the Amazon WorkMail Administrator Guide.

", "DeleteResource": "

Deletes the specified resource.

", "DeleteRetentionPolicy": "

Deletes the specified retention policy from the specified organization.

", "DeleteUser": "

Deletes a user from Amazon WorkMail and all subsequent systems. Before you can delete a user, the user state must be DISABLED. Use the DescribeUser action to confirm the user state.

Deleting a user is permanent and cannot be undone. WorkMail archives user mailboxes for 30 days before they are permanently removed.

", "DeregisterFromWorkMail": "

Mark a user, group, or resource as no longer used in Amazon WorkMail. This action disassociates the mailbox and schedules it for clean-up. WorkMail keeps mailboxes for 30 days before they are permanently removed. The functionality in the console is Disable.

", + "DeregisterMailDomain": "

Removes a domain from Amazon WorkMail, stops email routing to WorkMail, and removes the authorization allowing WorkMail use. SES keeps the domain because other applications may use it. You must first remove any email address used by WorkMail entities before you remove the domain.

", "DescribeGroup": "

Returns the data available for the group.

", "DescribeInboundDmarcSettings": "

Lists the settings in a DMARC policy for a specified organization.

", "DescribeMailboxExportJob": "

Describes the current status of a mailbox export job.

", @@ -32,6 +33,7 @@ "DisassociateMemberFromGroup": "

Removes a member from a group.

", "GetAccessControlEffect": "

Gets the effects of an organization's access control rules as they apply to a specified IPv4 address, access protocol action, or user ID.

", "GetDefaultRetentionPolicy": "

Gets the default retention policy details for the specified organization.

", + "GetMailDomain": "

Gets details for a mail domain, including domain records required to configure your domain with recommended security.

", "GetMailboxDetails": "

Requests a user's mailbox details for a specified organization and user.

", "GetMobileDeviceAccessEffect": "

Simulates the effect of the mobile device access rules for the given attributes of a sample access event. Use this method to test the effects of the current set of mobile device access rules for the Amazon WorkMail organization for a particular user's attributes.

", "GetMobileDeviceAccessOverride": "

Gets the mobile device access override for the given WorkMail organization, user, and device.

", @@ -39,6 +41,7 @@ "ListAliases": "

Creates a paginated call to list the aliases associated with a given entity.

", "ListGroupMembers": "

Returns an overview of the members of a group. Users and groups can be members of a group.

", "ListGroups": "

Returns summaries of the organization's groups.

", + "ListMailDomains": "

Lists the mail domains in a given Amazon WorkMail organization.

", "ListMailboxExportJobs": "

Lists the mailbox export jobs started for the specified organization within the last seven days.

", "ListMailboxPermissions": "

Lists the mailbox permissions associated with a user, group, or resource mailbox.

", "ListMobileDeviceAccessOverrides": "

Lists all the mobile device access overrides for any given combination of WorkMail organization, user, or device.

", @@ -53,11 +56,13 @@ "PutMailboxPermissions": "

Sets permissions for a user, group, or resource. This replaces any pre-existing permissions.

", "PutMobileDeviceAccessOverride": "

Creates or updates a mobile device access override for the given WorkMail organization, user, and device.

", "PutRetentionPolicy": "

Puts a retention policy to the specified organization.

", + "RegisterMailDomain": "

Registers a new domain in Amazon WorkMail and SES, and configures it for use by WorkMail. Emails received by SES for this domain are routed to the specified WorkMail organization, and WorkMail has permanent permission to use the specified domain for sending your users' emails.

", "RegisterToWorkMail": "

Registers an existing and disabled user, group, or resource for Amazon WorkMail use by associating a mailbox and calendaring capabilities. It performs no change if the user, group, or resource is enabled and fails if the user, group, or resource is deleted. This operation results in the accumulation of costs. For more information, see Pricing. The equivalent console functionality for this operation is Enable.

Users can either be created by calling the CreateUser API operation or they can be synchronized from your directory. For more information, see DeregisterFromWorkMail.

", "ResetPassword": "

Allows the administrator to reset the password for a user.

", "StartMailboxExportJob": "

Starts a mailbox export job to export MIME-format email messages and calendar items from the specified mailbox to the specified Amazon Simple Storage Service (Amazon S3) bucket. For more information, see Exporting mailbox content in the Amazon WorkMail Administrator Guide.

", "TagResource": "

Applies the specified tags to the specified Amazon WorkMail organization resource.

", "UntagResource": "

Untags the specified tags from the specified Amazon WorkMail organization resource.

", + "UpdateDefaultMailDomain": "

Updates the default mail domain for an organization. The default mail domain is used by the WorkMail AWS Console to suggest an email address when enabling a mail user. You can only have one default domain.

", "UpdateMailboxQuota": "

Updates a user's current mailbox quota for a specified organization and user.

", "UpdateMobileDeviceAccessRule": "

Updates a mobile device access rule for the specified Amazon WorkMail organization.

", "UpdatePrimaryEmailAddress": "

Updates the primary email for a user, group, or resource. The current email is moved into the list of aliases (or swapped between an existing alias and the current primary email), and the email provided in the input is promoted as the primary.

", @@ -172,7 +177,10 @@ "BookingOptions$AutoDeclineConflictingRequests": "

The resource's ability to automatically decline any conflicting requests.

", "CreateOrganizationRequest$EnableInteroperability": "

When true, allows organization interoperability between Amazon WorkMail and Microsoft Exchange. Can only be set to true if an AD Connector directory ID is included in the request.

", "DeleteOrganizationRequest$DeleteDirectory": "

If true, deletes the AWS Directory Service directory associated with the organization.

", - "DescribeInboundDmarcSettingsResponse$Enforced": "

Lists the enforcement setting of the applied policy.

" + "DescribeInboundDmarcSettingsResponse$Enforced": "

Lists the enforcement setting of the applied policy.

", + "GetMailDomainResponse$IsTestDomain": "

Specifies whether the domain is a test domain provided by WorkMail, or a custom domain.

", + "GetMailDomainResponse$IsDefault": "

Specifies whether the domain is the default domain for your organization.

", + "MailDomainSummary$DefaultDomain": "

Whether the domain is default or not.

" } }, "BooleanObject": { @@ -367,6 +375,16 @@ "refs": { } }, + "DeregisterMailDomainRequest": { + "base": null, + "refs": { + } + }, + "DeregisterMailDomainResponse": { + "base": null, + "refs": { + } + }, "DescribeGroupRequest": { "base": null, "refs": { @@ -559,6 +577,25 @@ "refs": { } }, + "DnsRecord": { + "base": "

A DNS record uploaded to your DNS provider.

", + "refs": { + "DnsRecords$member": null + } + }, + "DnsRecordVerificationStatus": { + "base": null, + "refs": { + "GetMailDomainResponse$OwnershipVerificationStatus": "

Indicates the status of the domain ownership verification.

", + "GetMailDomainResponse$DkimVerificationStatus": "

Indicates the status of a DKIM verification.

" + } + }, + "DnsRecords": { + "base": null, + "refs": { + "GetMailDomainResponse$Records": "

A list of the DNS records that Amazon WorkMail recommends adding in your DNS provider for the best user experience. The records configure your domain with DMARC, SPF, DKIM, and direct incoming email traffic to SES. See admin guide for more details.

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

The domain to associate with an Amazon WorkMail organization.

When you configure a domain hosted in Amazon Route 53 (Route 53), all recommended DNS records are added to the organization when you create it. For more information, see Adding a domain in the Amazon WorkMail Administrator Guide.

", "refs": { @@ -569,6 +606,7 @@ "base": null, "refs": { "Domain$DomainName": "

The fully qualified domain name.

", + "MailDomainSummary$DomainName": "

The domain name.

", "OrganizationSummary$DefaultMailDomain": "

The default email domain associated with the organization.

" } }, @@ -674,6 +712,16 @@ "refs": { } }, + "GetMailDomainRequest": { + "base": null, + "refs": { + } + }, + "GetMailDomainResponse": { + "base": null, + "refs": { + } + }, "GetMailboxDetailsRequest": { "base": null, "refs": { @@ -737,6 +785,7 @@ "CreateMobileDeviceAccessRuleRequest$ClientToken": "

The idempotency token for the client request.

", "CreateOrganizationRequest$ClientToken": "

The idempotency token associated with the request.

", "DeleteOrganizationRequest$ClientToken": "

The idempotency token associated with the request.

", + "RegisterMailDomainRequest$ClientToken": "

Idempotency token used when retrying requests.

", "StartMailboxExportJobRequest$ClientToken": "

The idempotency token for the client request.

" } }, @@ -745,6 +794,11 @@ "refs": { } }, + "InvalidCustomSesConfigurationException": { + "base": "

You SES configuration has customizations that Amazon WorkMail cannot save. The error message lists the invalid setting. For examples of invalid settings, refer to CreateReceiptRule.

", + "refs": { + } + }, "InvalidParameterException": { "base": "

One or more of the input parameters don't match the service's restrictions.

", "refs": { @@ -835,6 +889,16 @@ "refs": { } }, + "ListMailDomainsRequest": { + "base": null, + "refs": { + } + }, + "ListMailDomainsResponse": { + "base": null, + "refs": { + } + }, "ListMailboxExportJobsRequest": { "base": null, "refs": { @@ -925,8 +989,13 @@ "refs": { } }, + "MailDomainInUseException": { + "base": "

The domain you're trying to change is in use by another user or organization in your account. See the error message for details.

", + "refs": { + } + }, "MailDomainNotFoundException": { - "base": "

For an email or alias to be created in Amazon WorkMail, the included domain must be defined in the organization.

", + "base": "

The domain specified is not found in your organization.

", "refs": { } }, @@ -935,6 +1004,18 @@ "refs": { } }, + "MailDomainSummary": { + "base": "

The data for a given domain.

", + "refs": { + "MailDomains$member": null + } + }, + "MailDomains": { + "base": null, + "refs": { + "ListMailDomainsResponse$MailDomains": "

The list of mail domain summaries, specifying domains that exist in the specified Amazon WorkMail organization, along with the information about whether the domain is or isn't the default.

" + } + }, "MailboxExportErrorInfo": { "base": null, "refs": { @@ -982,6 +1063,7 @@ "ListAliasesRequest$MaxResults": "

The maximum number of results to return in a single call.

", "ListGroupMembersRequest$MaxResults": "

The maximum number of results to return in a single call.

", "ListGroupsRequest$MaxResults": "

The maximum number of results to return in a single call.

", + "ListMailDomainsRequest$MaxResults": "

The maximum number of results to return in a single call.

", "ListMailboxExportJobsRequest$MaxResults": "

The maximum number of results to return in a single call.

", "ListMailboxPermissionsRequest$MaxResults": "

The maximum number of results to return in a single call.

", "ListMobileDeviceAccessOverridesRequest$MaxResults": "

The maximum number of results to return in a single call.

", @@ -1103,6 +1185,8 @@ "ListGroupMembersResponse$NextToken": "

The token to use to retrieve the next page of results. The first call does not contain any tokens.

", "ListGroupsRequest$NextToken": "

The token to use to retrieve the next page of results. The first call does not contain any tokens.

", "ListGroupsResponse$NextToken": "

The token to use to retrieve the next page of results. The value is \"null\" when there are no more results to return.

", + "ListMailDomainsRequest$NextToken": "

The token to use to retrieve the next page of results. The first call does not require a token.

", + "ListMailDomainsResponse$NextToken": "

The token to use to retrieve the next page of results. The value becomes null when there are no more results to return.

", "ListMailboxExportJobsRequest$NextToken": "

The token to use to retrieve the next page of results.

", "ListMailboxExportJobsResponse$NextToken": "

The token to use to retrieve the next page of results.

", "ListMailboxPermissionsRequest$NextToken": "

The token to use to retrieve the next page of results. The first call does not contain any tokens.

", @@ -1143,6 +1227,7 @@ "DeleteRetentionPolicyRequest$OrganizationId": "

The organization ID.

", "DeleteUserRequest$OrganizationId": "

The organization that contains the user to be deleted.

", "DeregisterFromWorkMailRequest$OrganizationId": "

The identifier for the organization under which the Amazon WorkMail entity exists.

", + "DeregisterMailDomainRequest$OrganizationId": "

The Amazon WorkMail organization for which the domain will be deregistered.

", "DescribeGroupRequest$OrganizationId": "

The identifier for the organization under which the group exists.

", "DescribeInboundDmarcSettingsRequest$OrganizationId": "

Lists the ID of the given organization.

", "DescribeMailboxExportJobRequest$OrganizationId": "

The organization ID.

", @@ -1154,6 +1239,7 @@ "DisassociateMemberFromGroupRequest$OrganizationId": "

The identifier for the organization under which the group exists.

", "GetAccessControlEffectRequest$OrganizationId": "

The identifier for the organization.

", "GetDefaultRetentionPolicyRequest$OrganizationId": "

The organization ID.

", + "GetMailDomainRequest$OrganizationId": "

The Amazon WorkMail organization for which the domain is retrieved.

", "GetMailboxDetailsRequest$OrganizationId": "

The identifier for the organization that contains the user whose mailbox details are being requested.

", "GetMobileDeviceAccessEffectRequest$OrganizationId": "

The Amazon WorkMail organization to simulate the access effect for.

", "GetMobileDeviceAccessOverrideRequest$OrganizationId": "

The Amazon WorkMail organization to which you want to apply the override.

", @@ -1161,6 +1247,7 @@ "ListAliasesRequest$OrganizationId": "

The identifier for the organization under which the entity exists.

", "ListGroupMembersRequest$OrganizationId": "

The identifier for the organization under which the group exists.

", "ListGroupsRequest$OrganizationId": "

The identifier for the organization under which the groups exist.

", + "ListMailDomainsRequest$OrganizationId": "

The Amazon WorkMail organization for which to list domains.

", "ListMailboxExportJobsRequest$OrganizationId": "

The organization ID.

", "ListMailboxPermissionsRequest$OrganizationId": "

The identifier of the organization under which the user, group, or resource exists.

", "ListMobileDeviceAccessOverridesRequest$OrganizationId": "

The Amazon WorkMail organization under which to list mobile device access overrides.

", @@ -1174,9 +1261,11 @@ "PutMailboxPermissionsRequest$OrganizationId": "

The identifier of the organization under which the user, group, or resource exists.

", "PutMobileDeviceAccessOverrideRequest$OrganizationId": "

Identifies the Amazon WorkMail organization for which you create the override.

", "PutRetentionPolicyRequest$OrganizationId": "

The organization ID.

", + "RegisterMailDomainRequest$OrganizationId": "

The Amazon WorkMail organization under which you're creating the domain.

", "RegisterToWorkMailRequest$OrganizationId": "

The identifier for the organization under which the user, group, or resource exists.

", "ResetPasswordRequest$OrganizationId": "

The identifier of the organization that contains the user for which the password is reset.

", "StartMailboxExportJobRequest$OrganizationId": "

The identifier associated with the organization.

", + "UpdateDefaultMailDomainRequest$OrganizationId": "

The Amazon WorkMail organization for which to list domains.

", "UpdateMailboxQuotaRequest$OrganizationId": "

The identifier for the organization that contains the user for whom to update the mailbox quota.

", "UpdateMobileDeviceAccessRuleRequest$OrganizationId": "

The Amazon WorkMail organization under which the rule will be updated.

", "UpdatePrimaryEmailAddressRequest$OrganizationId": "

The organization that contains the user, group, or resource to update.

", @@ -1308,6 +1397,16 @@ "refs": { } }, + "RegisterMailDomainRequest": { + "base": null, + "refs": { + } + }, + "RegisterMailDomainResponse": { + "base": null, + "refs": { + } + }, "RegisterToWorkMailRequest": { "base": null, "refs": { @@ -1394,7 +1493,7 @@ "RetentionPeriod": { "base": null, "refs": { - "FolderConfiguration$Period": "

The period of time at which the folder configuration action is applied.

" + "FolderConfiguration$Period": "

The number of days for which the folder-configuration action applies.

" } }, "RoleArn": { @@ -1456,15 +1555,20 @@ "DirectoryInUseException$Message": null, "DirectoryServiceAuthenticationFailedException$Message": null, "DirectoryUnavailableException$Message": null, + "DnsRecord$Type": "

The RFC 1035 record type. Possible values: CNAME, A, MX.

", + "DnsRecord$Hostname": "

The DNS hostname.- For example, domain.example.com.

", + "DnsRecord$Value": "

The value returned by the DNS for a query to that hostname and record type.

", "EmailAddressInUseException$Message": null, "EntityAlreadyRegisteredException$Message": null, "EntityNotFoundException$Message": null, "EntityStateException$Message": null, "GetDefaultRetentionPolicyResponse$Description": "

The retention policy description.

", "InvalidConfigurationException$Message": null, + "InvalidCustomSesConfigurationException$Message": null, "InvalidParameterException$Message": null, "InvalidPasswordException$Message": null, "LimitExceededException$Message": null, + "MailDomainInUseException$Message": null, "MailDomainNotFoundException$Message": null, "MailDomainStateException$Message": null, "Member$Id": "

The identifier of the member.

", @@ -1575,6 +1679,16 @@ "refs": { } }, + "UpdateDefaultMailDomainRequest": { + "base": null, + "refs": { + } + }, + "UpdateDefaultMailDomainResponse": { + "base": null, + "refs": { + } + }, "UpdateMailboxQuotaRequest": { "base": null, "refs": { @@ -1651,6 +1765,15 @@ "ListUsersResponse$Users": "

The overview of users for an organization.

" } }, + "WorkMailDomainName": { + "base": null, + "refs": { + "DeregisterMailDomainRequest$DomainName": "

The domain to deregister in WorkMail and SES.

", + "GetMailDomainRequest$DomainName": "

The domain from which you want to retrieve details.

", + "RegisterMailDomainRequest$DomainName": "

The name of the mail domain to create in Amazon WorkMail and SES.

", + "UpdateDefaultMailDomainRequest$DomainName": "

The domain name that will become the default domain.

" + } + }, "WorkMailIdentifier": { "base": null, "refs": { diff --git a/models/apis/workmail/2017-10-01/paginators-1.json b/models/apis/workmail/2017-10-01/paginators-1.json index c5d545748a..94179cb13c 100644 --- a/models/apis/workmail/2017-10-01/paginators-1.json +++ b/models/apis/workmail/2017-10-01/paginators-1.json @@ -15,6 +15,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListMailDomains": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListMailboxExportJobs": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 6aa520ba62..c56eb81f76 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -11084,7 +11084,8 @@ "endpoints" : { "us-iso-east-1" : { "protocols" : [ "http", "https" ] - } + }, + "us-iso-west-1" : { } } }, "ec2" : { diff --git a/service/configservice/api.go b/service/configservice/api.go index 9964f08db2..9e8c48460c 100644 --- a/service/configservice/api.go +++ b/service/configservice/api.go @@ -31078,6 +31078,9 @@ const ( // ResourceTypeAwsEksCluster is a ResourceType enum value ResourceTypeAwsEksCluster = "AWS::EKS::Cluster" + + // ResourceTypeAwsOpenSearchDomain is a ResourceType enum value + ResourceTypeAwsOpenSearchDomain = "AWS::OpenSearch::Domain" ) // ResourceType_Values returns all elements of the ResourceType enum @@ -31191,6 +31194,7 @@ func ResourceType_Values() []string { ResourceTypeAwsEfsAccessPoint, ResourceTypeAwsEfsFileSystem, ResourceTypeAwsEksCluster, + ResourceTypeAwsOpenSearchDomain, } } diff --git a/service/ec2/api.go b/service/ec2/api.go index ba213660b0..1859dc718b 100644 --- a/service/ec2/api.go +++ b/service/ec2/api.go @@ -56231,16 +56231,18 @@ type CreateFlowLogsInput struct { // or LogGroupName. DeliverLogsPermissionArn *string `type:"string"` + // The destination options. + DestinationOptions *DestinationOptionsRequest `type:"structure"` + // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` - // Specifies the destination to which the flow log data is to be published. - // Flow log data can be published to a CloudWatch Logs log group or an Amazon - // S3 bucket. The value specified for this parameter depends on the value specified - // for LogDestinationType. + // The destination to which the flow log data is to be published. Flow log data + // can be published to a CloudWatch Logs log group or an Amazon S3 bucket. The + // value specified for this parameter depends on the value specified for LogDestinationType. // // If LogDestinationType is not specified or cloud-watch-logs, specify the Amazon // Resource Name (ARN) of the CloudWatch Logs log group. For example, to publish @@ -56255,10 +56257,10 @@ type CreateFlowLogsInput struct { // a subfolder name. This is a reserved term. LogDestination *string `type:"string"` - // Specifies the type of destination to which the flow log data is to be published. - // Flow log data can be published to CloudWatch Logs or Amazon S3. To publish - // flow log data to CloudWatch Logs, specify cloud-watch-logs. To publish flow - // log data to Amazon S3, specify s3. + // The type of destination to which the flow log data is to be published. Flow + // log data can be published to CloudWatch Logs or Amazon S3. To publish flow + // log data to CloudWatch Logs, specify cloud-watch-logs. To publish flow log + // data to Amazon S3, specify s3. // // If you specify LogDestinationType as s3, do not specify DeliverLogsPermissionArn // or LogGroupName. @@ -56367,6 +56369,12 @@ func (s *CreateFlowLogsInput) SetDeliverLogsPermissionArn(v string) *CreateFlowL return s } +// SetDestinationOptions sets the DestinationOptions field's value. +func (s *CreateFlowLogsInput) SetDestinationOptions(v *DestinationOptionsRequest) *CreateFlowLogsInput { + s.DestinationOptions = v + return s +} + // SetDryRun sets the DryRun field's value. func (s *CreateFlowLogsInput) SetDryRun(v bool) *CreateFlowLogsInput { s.DryRun = &v @@ -87938,6 +87946,109 @@ func (s *DescribeVpnGatewaysOutput) SetVpnGateways(v []*VpnGateway) *DescribeVpn return s } +// Describes the destination options for a flow log. +type DestinationOptionsRequest struct { + _ struct{} `type:"structure"` + + // The format for the flow log. The default is plain-text. + FileFormat *string `type:"string" enum:"DestinationFileFormat"` + + // Indicates whether to use Hive-compatible prefixes for flow logs stored in + // Amazon S3. The default is false. + HiveCompatiblePartitions *bool `type:"boolean"` + + // Indicates whether to partition the flow log per hour. This reduces the cost + // and response time for queries. The default is false. + PerHourPartition *bool `type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationOptionsRequest) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationOptionsRequest) GoString() string { + return s.String() +} + +// SetFileFormat sets the FileFormat field's value. +func (s *DestinationOptionsRequest) SetFileFormat(v string) *DestinationOptionsRequest { + s.FileFormat = &v + return s +} + +// SetHiveCompatiblePartitions sets the HiveCompatiblePartitions field's value. +func (s *DestinationOptionsRequest) SetHiveCompatiblePartitions(v bool) *DestinationOptionsRequest { + s.HiveCompatiblePartitions = &v + return s +} + +// SetPerHourPartition sets the PerHourPartition field's value. +func (s *DestinationOptionsRequest) SetPerHourPartition(v bool) *DestinationOptionsRequest { + s.PerHourPartition = &v + return s +} + +// Describes the destination options for a flow log. +type DestinationOptionsResponse struct { + _ struct{} `type:"structure"` + + // The format for the flow log. + FileFormat *string `locationName:"fileFormat" type:"string" enum:"DestinationFileFormat"` + + // Indicates whether to use Hive-compatible prefixes for flow logs stored in + // Amazon S3. + HiveCompatiblePartitions *bool `locationName:"hiveCompatiblePartitions" type:"boolean"` + + // Indicates whether to partition the flow log per hour. + PerHourPartition *bool `locationName:"perHourPartition" type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationOptionsResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DestinationOptionsResponse) GoString() string { + return s.String() +} + +// SetFileFormat sets the FileFormat field's value. +func (s *DestinationOptionsResponse) SetFileFormat(v string) *DestinationOptionsResponse { + s.FileFormat = &v + return s +} + +// SetHiveCompatiblePartitions sets the HiveCompatiblePartitions field's value. +func (s *DestinationOptionsResponse) SetHiveCompatiblePartitions(v bool) *DestinationOptionsResponse { + s.HiveCompatiblePartitions = &v + return s +} + +// SetPerHourPartition sets the PerHourPartition field's value. +func (s *DestinationOptionsResponse) SetPerHourPartition(v bool) *DestinationOptionsResponse { + s.PerHourPartition = &v + return s +} + type DetachClassicLinkVpcInput struct { _ struct{} `type:"structure"` @@ -95681,22 +95792,25 @@ type FlowLog struct { // The status of the logs delivery (SUCCESS | FAILED). DeliverLogsStatus *string `locationName:"deliverLogsStatus" type:"string"` + // The destination options. + DestinationOptions *DestinationOptionsResponse `locationName:"destinationOptions" type:"structure"` + // The flow log ID. FlowLogId *string `locationName:"flowLogId" type:"string"` // The status of the flow log (ACTIVE). FlowLogStatus *string `locationName:"flowLogStatus" type:"string"` - // Specifies the destination to which the flow log data is published. Flow log - // data can be published to an CloudWatch Logs log group or an Amazon S3 bucket. - // If the flow log publishes to CloudWatch Logs, this element indicates the - // Amazon Resource Name (ARN) of the CloudWatch Logs log group to which the - // data is published. If the flow log publishes to Amazon S3, this element indicates + // The destination to which the flow log data is published. Flow log data can + // be published to an CloudWatch Logs log group or an Amazon S3 bucket. If the + // flow log publishes to CloudWatch Logs, this element indicates the Amazon + // Resource Name (ARN) of the CloudWatch Logs log group to which the data is + // published. If the flow log publishes to Amazon S3, this element indicates // the ARN of the Amazon S3 bucket to which the data is published. LogDestination *string `locationName:"logDestination" type:"string"` - // Specifies the type of destination to which the flow log data is published. - // Flow log data can be published to CloudWatch Logs or Amazon S3. + // The type of destination to which the flow log data is published. Flow log + // data can be published to CloudWatch Logs or Amazon S3. LogDestinationType *string `locationName:"logDestinationType" type:"string" enum:"LogDestinationType"` // The format of the flow log record. @@ -95767,6 +95881,12 @@ func (s *FlowLog) SetDeliverLogsStatus(v string) *FlowLog { return s } +// SetDestinationOptions sets the DestinationOptions field's value. +func (s *FlowLog) SetDestinationOptions(v *DestinationOptionsResponse) *FlowLog { + s.DestinationOptions = v + return s +} + // SetFlowLogId sets the FlowLogId field's value. func (s *FlowLog) SetFlowLogId(v string) *FlowLog { s.FlowLogId = &v @@ -144144,6 +144264,22 @@ func DeleteQueuedReservedInstancesErrorCode_Values() []string { } } +const ( + // DestinationFileFormatPlainText is a DestinationFileFormat enum value + DestinationFileFormatPlainText = "plain-text" + + // DestinationFileFormatParquet is a DestinationFileFormat enum value + DestinationFileFormatParquet = "parquet" +) + +// DestinationFileFormat_Values returns all elements of the DestinationFileFormat enum +func DestinationFileFormat_Values() []string { + return []string{ + DestinationFileFormatPlainText, + DestinationFileFormatParquet, + } +} + const ( // DeviceTypeEbs is a DeviceType enum value DeviceTypeEbs = "ebs" diff --git a/service/kinesisanalyticsv2/api.go b/service/kinesisanalyticsv2/api.go index 2cc73f6661..5930b77b4d 100644 --- a/service/kinesisanalyticsv2/api.go +++ b/service/kinesisanalyticsv2/api.go @@ -262,7 +262,7 @@ func (c *KinesisAnalyticsV2) AddApplicationInputProcessingConfigurationRequest(i // Adds an InputProcessingConfiguration to a SQL-based Kinesis Data Analytics // application. An input processor pre-processes records on the input stream // before the application's SQL code executes. Currently, the only input processor -// available is AWS Lambda (https://docs.aws.amazon.com/lambda/). +// available is Amazon Lambda (https://docs.aws.amazon.com/lambda/). // // 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 @@ -359,10 +359,10 @@ func (c *KinesisAnalyticsV2) AddApplicationOutputRequest(input *AddApplicationOu // // If you want Kinesis Data Analytics to deliver data from an in-application // stream within your application to an external destination (such as an Kinesis -// data stream, a Kinesis Data Firehose delivery stream, or an AWS Lambda function), -// you add the relevant configuration to your application using this operation. -// You can configure one or more outputs for your application. Each output configuration -// maps an in-application stream and an external destination. +// data stream, a Kinesis Data Firehose delivery stream, or an Amazon Lambda +// function), you add the relevant configuration to your application using this +// operation. You can configure one or more outputs for your application. Each +// output configuration maps an in-application stream and an external destination. // // You can use one of the output configurations to deliver data from your in-application // error stream to an external destination so that you can analyze the errors. @@ -702,6 +702,10 @@ func (c *KinesisAnalyticsV2) CreateApplicationRequest(input *CreateApplicationIn // This error can be the result of attempting to modify an application without // using the current application ID. // +// * UnsupportedOperationException +// The request was rejected because a specified parameter is not supported or +// a specified resource is not valid for this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisanalyticsv2-2018-05-23/CreateApplication func (c *KinesisAnalyticsV2) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) { req, out := c.CreateApplicationRequest(input) @@ -1936,6 +1940,10 @@ func (c *KinesisAnalyticsV2) DiscoverInputSchemaRequest(input *DiscoverInputSche // * InvalidRequestException // The request JSON is not valid for the operation. // +// * UnsupportedOperationException +// The request was rejected because a specified parameter is not supported or +// a specified resource is not valid for this operation. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema func (c *KinesisAnalyticsV2) DiscoverInputSchema(input *DiscoverInputSchemaInput) (*DiscoverInputSchemaOutput, error) { req, out := c.DiscoverInputSchemaRequest(input) @@ -3506,7 +3514,7 @@ type AddApplicationOutputInput struct { // An array of objects, each describing one output configuration. In the output // configuration, you specify the name of an in-application stream, a destination // (that is, a Kinesis data stream, a Kinesis Data Firehose delivery stream, - // or an AWS Lambda function), and record the formation to use when writing + // or an Amazon Lambda function), and record the formation to use when writing // to the destination. // // Output is a required field @@ -5157,15 +5165,15 @@ func (s *CSVMappingParameters) SetRecordRowDelimiter(v string) *CSVMappingParame return s } -// The configuration parameters for the default AWS Glue database. You use this -// database for SQL queries that you write in a Kinesis Data Analytics Studio -// notebook. +// The configuration parameters for the default Amazon Glue database. You use +// this database for SQL queries that you write in a Kinesis Data Analytics +// Studio notebook. type CatalogConfiguration struct { _ struct{} `type:"structure"` - // The configuration parameters for the default AWS Glue database. You use this - // database for Apache Flink SQL queries and table API transforms that you write - // in a Kinesis Data Analytics Studio notebook. + // The configuration parameters for the default Amazon Glue database. You use + // this database for Apache Flink SQL queries and table API transforms that + // you write in a Kinesis Data Analytics Studio notebook. // // GlueDataCatalogConfiguration is a required field GlueDataCatalogConfiguration *GlueDataCatalogConfiguration `type:"structure" required:"true"` @@ -5213,15 +5221,15 @@ func (s *CatalogConfiguration) SetGlueDataCatalogConfiguration(v *GlueDataCatalo return s } -// The configuration parameters for the default AWS Glue database. You use this -// database for Apache Flink SQL queries and table API transforms that you write -// in a Kinesis Data Analytics Studio notebook. +// The configuration parameters for the default Amazon Glue database. You use +// this database for Apache Flink SQL queries and table API transforms that +// you write in a Kinesis Data Analytics Studio notebook. type CatalogConfigurationDescription struct { _ struct{} `type:"structure"` - // The configuration parameters for the default AWS Glue database. You use this - // database for SQL queries that you write in a Kinesis Data Analytics Studio - // notebook. + // The configuration parameters for the default Amazon Glue database. You use + // this database for SQL queries that you write in a Kinesis Data Analytics + // Studio notebook. // // GlueDataCatalogConfigurationDescription is a required field GlueDataCatalogConfigurationDescription *GlueDataCatalogConfigurationDescription `type:"structure" required:"true"` @@ -5251,11 +5259,13 @@ func (s *CatalogConfigurationDescription) SetGlueDataCatalogConfigurationDescrip return s } -// Updates to +// Updates to the configuration parameters for the default Amazon Glue database. +// You use this database for SQL queries that you write in a Kinesis Data Analytics +// Studio notebook. type CatalogConfigurationUpdate struct { _ struct{} `type:"structure"` - // Updates to the configuration parameters for the default AWS Glue database. + // Updates to the configuration parameters for the default Amazon Glue database. // You use this database for SQL queries that you write in a Kinesis Data Analytics // Studio notebook. // @@ -7475,7 +7485,7 @@ func (s *DeleteApplicationVpcConfigurationOutput) SetApplicationVersionId(v int6 } // The information required to deploy a Kinesis Data Analytics Studio notebook -// as an application with durable state.. +// as an application with durable state. type DeployAsApplicationConfiguration struct { _ struct{} `type:"structure"` @@ -7567,15 +7577,13 @@ func (s *DeployAsApplicationConfigurationDescription) SetS3ContentLocationDescri } // Updates to the configuration information required to deploy an Amazon Data -// Analytics Studio notebook as an application with durable state.. +// Analytics Studio notebook as an application with durable state. type DeployAsApplicationConfigurationUpdate struct { _ struct{} `type:"structure"` // Updates to the location that holds the data required to specify an Amazon // Data Analytics application. - // - // S3ContentLocationUpdate is a required field - S3ContentLocationUpdate *S3ContentBaseLocationUpdate `type:"structure" required:"true"` + S3ContentLocationUpdate *S3ContentBaseLocationUpdate `type:"structure"` } // String returns the string representation. @@ -7599,9 +7607,6 @@ func (s DeployAsApplicationConfigurationUpdate) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *DeployAsApplicationConfigurationUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeployAsApplicationConfigurationUpdate"} - if s.S3ContentLocationUpdate == nil { - invalidParams.Add(request.NewErrParamRequired("S3ContentLocationUpdate")) - } if s.S3ContentLocationUpdate != nil { if err := s.S3ContentLocationUpdate.Validate(); err != nil { invalidParams.AddNested("S3ContentLocationUpdate", err.(request.ErrInvalidParams)) @@ -8619,7 +8624,9 @@ type GlueDataCatalogConfigurationUpdate struct { _ struct{} `type:"structure"` // The updated Amazon Resource Name (ARN) of the database. - DatabaseARNUpdate *string `min:"1" type:"string"` + // + // DatabaseARNUpdate is a required field + DatabaseARNUpdate *string `min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -8643,6 +8650,9 @@ func (s GlueDataCatalogConfigurationUpdate) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *GlueDataCatalogConfigurationUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GlueDataCatalogConfigurationUpdate"} + if s.DatabaseARNUpdate == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseARNUpdate")) + } if s.DatabaseARNUpdate != nil && len(*s.DatabaseARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatabaseARNUpdate", 1)) } @@ -8912,17 +8922,17 @@ func (s *InputDescription) SetNamePrefix(v string) *InputDescription { return s } -// An object that contains the Amazon Resource Name (ARN) of the AWS Lambda +// An object that contains the Amazon Resource Name (ARN) of the Amazon Lambda // function that is used to preprocess records in the stream in a SQL-based // Kinesis Data Analytics application. type InputLambdaProcessor struct { _ struct{} `type:"structure"` - // The ARN of the AWS Lambda function that operates on records in the stream. + // The ARN of the Amazon Lambda function that operates on records in the stream. // // To specify an earlier version of the Lambda function than the latest, include // the Lambda function version in the Lambda function ARN. For more information - // about Lambda ARNs, see Example ARNs: AWS Lambda (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda) + // about Lambda ARNs, see Example ARNs: Amazon Lambda (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda) // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` @@ -8969,22 +8979,22 @@ func (s *InputLambdaProcessor) SetResourceARN(v string) *InputLambdaProcessor { } // For a SQL-based Kinesis Data Analytics application, an object that contains -// the Amazon Resource Name (ARN) of the AWS Lambda function that is used to -// preprocess records in the stream. +// the Amazon Resource Name (ARN) of the Amazon Lambda function that is used +// to preprocess records in the stream. type InputLambdaProcessorDescription struct { _ struct{} `type:"structure"` - // The ARN of the AWS Lambda function that is used to preprocess the records + // The ARN of the Amazon Lambda function that is used to preprocess the records // in the stream. // // To specify an earlier version of the Lambda function than the latest, include // the Lambda function version in the Lambda function ARN. For more information - // about Lambda ARNs, see Example ARNs: AWS Lambda (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda) + // about Lambda ARNs, see Example ARNs: Amazon Lambda (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda) // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` - // The ARN of the IAM role that is used to access the AWS Lambda function. + // The ARN of the IAM role that is used to access the Amazon Lambda function. // // Provided for backward compatibility. Applications that are created with the // current API version have an application-level service execution role rather @@ -9028,12 +9038,12 @@ func (s *InputLambdaProcessorDescription) SetRoleARN(v string) *InputLambdaProce type InputLambdaProcessorUpdate struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the new AWS Lambda function that is used - // to preprocess the records in the stream. + // The Amazon Resource Name (ARN) of the new Amazon Lambda function that is + // used to preprocess the records in the stream. // // To specify an earlier version of the Lambda function than the latest, include // the Lambda function version in the Lambda function ARN. For more information - // about Lambda ARNs, see Example ARNs: AWS Lambda (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda) + // about Lambda ARNs, see Example ARNs: Amazon Lambda (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda) // // ResourceARNUpdate is a required field ResourceARNUpdate *string `min:"1" type:"string" required:"true"` @@ -9180,7 +9190,7 @@ func (s *InputParallelismUpdate) SetCountUpdate(v int64) *InputParallelismUpdate // For a SQL-based Kinesis Data Analytics application, describes a processor // that is used to preprocess the records in the stream before being processed // by your application code. Currently, the only input processor available is -// AWS Lambda (https://docs.aws.amazon.com/lambda/). +// Amazon Lambda (https://docs.aws.amazon.com/lambda/). type InputProcessingConfiguration struct { _ struct{} `type:"structure"` @@ -9235,7 +9245,7 @@ func (s *InputProcessingConfiguration) SetInputLambdaProcessor(v *InputLambdaPro // For a SQL-based Kinesis Data Analytics application, provides the configuration // information about an input processor. Currently, the only input processor -// available is AWS Lambda (https://docs.aws.amazon.com/lambda/). +// available is Amazon Lambda (https://docs.aws.amazon.com/lambda/). type InputProcessingConfigurationDescription struct { _ struct{} `type:"structure"` @@ -10443,8 +10453,8 @@ func (s *KinesisStreamsOutputUpdate) SetResourceARNUpdate(v string) *KinesisStre } // When you configure a SQL-based Kinesis Data Analytics application's output, -// identifies an AWS Lambda function as the destination. You provide the function -// Amazon Resource Name (ARN) of the Lambda function. +// identifies an Amazon Lambda function as the destination. You provide the +// function Amazon Resource Name (ARN) of the Lambda function. type LambdaOutput struct { _ struct{} `type:"structure"` @@ -10453,7 +10463,7 @@ type LambdaOutput struct { // // To specify an earlier version of the Lambda function than the latest, include // the Lambda function version in the Lambda function ARN. For more information - // about Lambda ARNs, see Example ARNs: AWS Lambda (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda) + // about Lambda ARNs, see Example ARNs: Amazon Lambda (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda) // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` @@ -10500,7 +10510,7 @@ func (s *LambdaOutput) SetResourceARN(v string) *LambdaOutput { } // For a SQL-based Kinesis Data Analytics application's output, describes the -// AWS Lambda function that is configured as its destination. +// Amazon Lambda function that is configured as its destination. type LambdaOutputDescription struct { _ struct{} `type:"structure"` @@ -10550,15 +10560,15 @@ func (s *LambdaOutputDescription) SetRoleARN(v string) *LambdaOutputDescription // When you update an SQL-based Kinesis Data Analytics application's output // configuration using the UpdateApplication operation, provides information -// about an AWS Lambda function that is configured as the destination. +// about an Amazon Lambda function that is configured as the destination. type LambdaOutputUpdate struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the destination AWS Lambda function. + // The Amazon Resource Name (ARN) of the destination Amazon Lambda function. // // To specify an earlier version of the Lambda function than the latest, include // the Lambda function version in the Lambda function ARN. For more information - // about Lambda ARNs, see Example ARNs: AWS Lambda (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda) + // about Lambda ARNs, see Example ARNs: Amazon Lambda (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda) // // ResourceARNUpdate is a required field ResourceARNUpdate *string `min:"1" type:"string" required:"true"` @@ -10798,8 +10808,8 @@ type ListApplicationVersionsInput struct { // If a previous invocation of this operation returned a pagination token, pass // it into this value to retrieve the next set of results. For more information - // about pagination, see Using the AWS Command Line Interface's Pagination Options - // (https://docs.aws.amazon.com/cli/latest/userguide/pagination.html). + // about pagination, see Using the Amazon Command Line Interface's Pagination + // Options (https://docs.aws.amazon.com/cli/latest/userguide/pagination.html). NextToken *string `min:"1" type:"string"` } @@ -10874,7 +10884,7 @@ type ListApplicationVersionsOutput struct { // The pagination token for the next set of results, or null if there are no // additional results. To retrieve the next set of items, pass this token into // a subsequent invocation of this operation. For more information about pagination, - // see Using the AWS Command Line Interface's Pagination Options (https://docs.aws.amazon.com/cli/latest/userguide/pagination.html). + // see Using the Amazon Command Line Interface's Pagination Options (https://docs.aws.amazon.com/cli/latest/userguide/pagination.html). NextToken *string `min:"1" type:"string"` } @@ -10916,7 +10926,7 @@ type ListApplicationsInput struct { // If a previous command returned a pagination token, pass it into this value // to retrieve the next set of results. For more information about pagination, - // see Using the AWS Command Line Interface's Pagination Options (https://docs.aws.amazon.com/cli/latest/userguide/pagination.html). + // see Using the Amazon Command Line Interface's Pagination Options (https://docs.aws.amazon.com/cli/latest/userguide/pagination.html). NextToken *string `min:"1" type:"string"` } @@ -10977,7 +10987,7 @@ type ListApplicationsOutput struct { // The pagination token for the next set of results, or null if there are no // additional results. Pass this token into a subsequent command to retrieve // the next set of items For more information about pagination, see Using the - // AWS Command Line Interface's Pagination Options (https://docs.aws.amazon.com/cli/latest/userguide/pagination.html). + // Amazon Command Line Interface's Pagination Options (https://docs.aws.amazon.com/cli/latest/userguide/pagination.html). NextToken *string `min:"1" type:"string"` } @@ -11436,7 +11446,7 @@ type Output struct { // Identifies a Kinesis data stream as the destination. KinesisStreamsOutput *KinesisStreamsOutput `type:"structure"` - // Identifies an AWS Lambda function as the destination. + // Identifies an Amazon Lambda function as the destination. LambdaOutput *LambdaOutput `type:"structure"` // The name of the in-application stream. @@ -11630,7 +11640,7 @@ type OutputUpdate struct { // Describes a Kinesis data stream as the destination for the output. KinesisStreamsOutputUpdate *KinesisStreamsOutputUpdate `type:"structure"` - // Describes an AWS Lambda function as the destination for the output. + // Describes an Amazon Lambda function as the destination for the output. LambdaOutputUpdate *LambdaOutputUpdate `type:"structure"` // If you want to specify a different in-application stream for this output @@ -13196,9 +13206,7 @@ type S3ContentBaseLocationUpdate struct { BasePathUpdate *string `min:"1" type:"string"` // The updated Amazon Resource Name (ARN) of the S3 bucket. - // - // BucketARNUpdate is a required field - BucketARNUpdate *string `min:"1" type:"string" required:"true"` + BucketARNUpdate *string `min:"1" type:"string"` } // String returns the string representation. @@ -13225,9 +13233,6 @@ func (s *S3ContentBaseLocationUpdate) Validate() error { if s.BasePathUpdate != nil && len(*s.BasePathUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("BasePathUpdate", 1)) } - if s.BucketARNUpdate == nil { - invalidParams.Add(request.NewErrParamRequired("BucketARNUpdate")) - } if s.BucketARNUpdate != nil && len(*s.BucketARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("BucketARNUpdate", 1)) } @@ -14287,10 +14292,11 @@ func (s StopApplicationOutput) GoString() string { } // A key-value pair (the value is optional) that you can define and assign to -// AWS resources. If you specify a tag that already exists, the tag value is -// replaced with the value that you specify in the request. Note that the maximum -// number of application tags includes system tags. The maximum number of user-defined -// application tags is 50. For more information, see Using Tagging (https://docs.aws.amazon.com/kinesisanalytics/latest/java/how-tagging.html). +// Amazon resources. If you specify a tag that already exists, the tag value +// is replaced with the value that you specify in the request. Note that the +// maximum number of application tags includes system tags. The maximum number +// of user-defined application tags is 50. For more information, see Using Tagging +// (https://docs.aws.amazon.com/kinesisanalytics/latest/java/how-tagging.html). type Tag struct { _ struct{} `type:"structure"` @@ -15240,7 +15246,7 @@ func (s *VpcConfigurationUpdate) SetVpcConfigurationId(v string) *VpcConfigurati type ZeppelinApplicationConfiguration struct { _ struct{} `type:"structure"` - // The AWS Glue Data Catalog that you use in queries in a Kinesis Data Analytics + // The Amazon Glue Data Catalog that you use in queries in a Kinesis Data Analytics // Studio notebook. CatalogConfiguration *CatalogConfiguration `type:"structure"` @@ -15248,7 +15254,7 @@ type ZeppelinApplicationConfiguration struct { CustomArtifactsConfiguration []*CustomArtifactConfiguration `type:"list"` // The information required to deploy a Kinesis Data Analytics Studio notebook - // as an application with durable state.. + // as an application with durable state. DeployAsApplicationConfiguration *DeployAsApplicationConfiguration `type:"structure"` // The monitoring configuration of a Kinesis Data Analytics Studio notebook. @@ -15336,7 +15342,7 @@ func (s *ZeppelinApplicationConfiguration) SetMonitoringConfiguration(v *Zeppeli type ZeppelinApplicationConfigurationDescription struct { _ struct{} `type:"structure"` - // The AWS Glue Data Catalog that is associated with the Kinesis Data Analytics + // The Amazon Glue Data Catalog that is associated with the Kinesis Data Analytics // Studio notebook. CatalogConfigurationDescription *CatalogConfigurationDescription `type:"structure"` @@ -15344,7 +15350,7 @@ type ZeppelinApplicationConfigurationDescription struct { CustomArtifactsConfigurationDescription []*CustomArtifactConfigurationDescription `type:"list"` // The parameters required to deploy a Kinesis Data Analytics Studio notebook - // as an application with durable state.. + // as an application with durable state. DeployAsApplicationConfigurationDescription *DeployAsApplicationConfigurationDescription `type:"structure"` // The monitoring configuration of a Kinesis Data Analytics Studio notebook. @@ -15399,7 +15405,7 @@ func (s *ZeppelinApplicationConfigurationDescription) SetMonitoringConfiguration type ZeppelinApplicationConfigurationUpdate struct { _ struct{} `type:"structure"` - // Updates to the configuration of the AWS Glue Data Catalog that is associated + // Updates to the configuration of the Amazon Glue Data Catalog that is associated // with the Kinesis Data Analytics Studio notebook. CatalogConfigurationUpdate *CatalogConfigurationUpdate `type:"structure"` @@ -15408,7 +15414,7 @@ type ZeppelinApplicationConfigurationUpdate struct { CustomArtifactsConfigurationUpdate []*CustomArtifactConfiguration `type:"list"` // Updates to the configuration information required to deploy an Amazon Data - // Analytics Studio notebook as an application with durable state.. + // Analytics Studio notebook as an application with durable state. DeployAsApplicationConfigurationUpdate *DeployAsApplicationConfigurationUpdate `type:"structure"` // Updates to the monitoring configuration of a Kinesis Data Analytics Studio @@ -15685,12 +15691,12 @@ const ( // ApplicationStatusForceStopping is a ApplicationStatus enum value ApplicationStatusForceStopping = "FORCE_STOPPING" - // ApplicationStatusMaintenance is a ApplicationStatus enum value - ApplicationStatusMaintenance = "MAINTENANCE" - // ApplicationStatusRollingBack is a ApplicationStatus enum value ApplicationStatusRollingBack = "ROLLING_BACK" + // ApplicationStatusMaintenance is a ApplicationStatus enum value + ApplicationStatusMaintenance = "MAINTENANCE" + // ApplicationStatusRolledBack is a ApplicationStatus enum value ApplicationStatusRolledBack = "ROLLED_BACK" ) @@ -15706,8 +15712,8 @@ func ApplicationStatus_Values() []string { ApplicationStatusUpdating, ApplicationStatusAutoscaling, ApplicationStatusForceStopping, - ApplicationStatusMaintenance, ApplicationStatusRollingBack, + ApplicationStatusMaintenance, ApplicationStatusRolledBack, } } @@ -15854,11 +15860,17 @@ const ( // RuntimeEnvironmentFlink18 is a RuntimeEnvironment enum value RuntimeEnvironmentFlink18 = "FLINK-1_8" + // RuntimeEnvironmentZeppelinFlink10 is a RuntimeEnvironment enum value + RuntimeEnvironmentZeppelinFlink10 = "ZEPPELIN-FLINK-1_0" + // RuntimeEnvironmentFlink111 is a RuntimeEnvironment enum value RuntimeEnvironmentFlink111 = "FLINK-1_11" - // RuntimeEnvironmentZeppelinFlink10 is a RuntimeEnvironment enum value - RuntimeEnvironmentZeppelinFlink10 = "ZEPPELIN-FLINK-1_0" + // RuntimeEnvironmentFlink113 is a RuntimeEnvironment enum value + RuntimeEnvironmentFlink113 = "FLINK-1_13" + + // RuntimeEnvironmentZeppelinFlink20 is a RuntimeEnvironment enum value + RuntimeEnvironmentZeppelinFlink20 = "ZEPPELIN-FLINK-2_0" ) // RuntimeEnvironment_Values returns all elements of the RuntimeEnvironment enum @@ -15867,8 +15879,10 @@ func RuntimeEnvironment_Values() []string { RuntimeEnvironmentSql10, RuntimeEnvironmentFlink16, RuntimeEnvironmentFlink18, - RuntimeEnvironmentFlink111, RuntimeEnvironmentZeppelinFlink10, + RuntimeEnvironmentFlink111, + RuntimeEnvironmentFlink113, + RuntimeEnvironmentZeppelinFlink20, } } diff --git a/service/storagegateway/api.go b/service/storagegateway/api.go index 8be16517d0..454560f1fa 100644 --- a/service/storagegateway/api.go +++ b/service/storagegateway/api.go @@ -57,11 +57,11 @@ func (c *StorageGateway) ActivateGatewayRequest(input *ActivateGatewayInput) (re // ActivateGateway API operation for AWS Storage Gateway. // // Activates the gateway you previously deployed on your host. In the activation -// process, you specify information such as the Region that you want to use -// for storing snapshots or tapes, the time zone for scheduled snapshots the -// gateway snapshot schedule window, an activation key, and a name for your -// gateway. The activation process also associates your gateway with your account. -// For more information, see UpdateGatewayInformation. +// process, you specify information such as the Amazon Web Services Region that +// you want to use for storing snapshots or tapes, the time zone for scheduled +// snapshots the gateway snapshot schedule window, an activation key, and a +// name for your gateway. The activation process also associates your gateway +// with your account. For more information, see UpdateGatewayInformation. // // You must turn on the gateway VM before you can activate your gateway. // @@ -1064,11 +1064,13 @@ func (c *StorageGateway) CreateNFSFileShareRequest(input *CreateNFSFileShareInpu // S3 cloud storage. Storage Gateway exposes file shares using an NFS interface. // This operation is only supported for S3 File Gateways. // -// S3 File gateway requires Security Token Service (STS) to be activated to -// enable you to create a file share. Make sure STS is activated in the Region -// you are creating your S3 File Gateway in. If STS is not activated in the -// Region, activate it. For information about how to activate STS, see Activating -// and deactivating STS in an Region (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) +// S3 File gateway requires Security Token Service (Amazon Web Services STS) +// to be activated to enable you to create a file share. Make sure Amazon Web +// Services STS is activated in the Amazon Web Services Region you are creating +// your S3 File Gateway in. If Amazon Web Services STS is not activated in the +// Amazon Web Services Region, activate it. For information about how to activate +// Amazon Web Services STS, see Activating and deactivating Amazon Web Services +// STS in an Amazon Web Services Region (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) // in the Identity and Access Management User Guide. // // S3 File Gateways do not support creating hard or symbolic links on a file @@ -1161,11 +1163,13 @@ func (c *StorageGateway) CreateSMBFileShareRequest(input *CreateSMBFileShareInpu // S3 cloud storage. Storage Gateway exposes file shares using an SMB interface. // This operation is only supported for S3 File Gateways. // -// S3 File Gateways require Security Token Service (STS) to be activated to -// enable you to create a file share. Make sure that STS is activated in the -// Region you are creating your S3 File Gateway in. If STS is not activated -// in this Region, activate it. For information about how to activate STS, see -// Activating and deactivating STS in an Region (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) +// S3 File Gateways require Security Token Service (Amazon Web Services STS) +// to be activated to enable you to create a file share. Make sure that Amazon +// Web Services STS is activated in the Amazon Web Services Region you are creating +// your S3 File Gateway in. If Amazon Web Services STS is not activated in this +// Amazon Web Services Region, activate it. For information about how to activate +// Amazon Web Services STS, see Activating and deactivating Amazon Web Services +// STS in an Amazon Web Services Region (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) // in the Identity and Access Management User Guide. // // File gateways don't support creating hard or symbolic links on a file share. @@ -5449,8 +5453,9 @@ func (c *StorageGateway) ListGatewaysRequest(input *ListGatewaysInput) (req *req // ListGateways API operation for AWS Storage Gateway. // -// Lists gateways owned by an account in an Region specified in the request. -// The returned list is ordered by gateway Amazon Resource Name (ARN). +// Lists gateways owned by an Amazon Web Services account in an Amazon Web Services +// Region specified in the request. The returned list is ordered by gateway +// Amazon Resource Name (ARN). // // By default, the operation returns a maximum of 100 gateways. This operation // supports pagination that allows you to optionally reduce the number of gateways @@ -8331,11 +8336,13 @@ func (c *StorageGateway) UpdateSMBFileShareRequest(input *UpdateSMBFileShareInpu // To leave a file share field unchanged, set the corresponding input field // to null. // -// File gateways require Security Token Service (STS) to be activated to enable -// you to create a file share. Make sure that STS is activated in the Region -// you are creating your file gateway in. If STS is not activated in this Region, -// activate it. For information about how to activate STS, see Activating and -// deactivating STS in an Region (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) +// File gateways require Security Token Service (Amazon Web Services STS) to +// be activated to enable you to create a file share. Make sure that Amazon +// Web Services STS is activated in the Amazon Web Services Region you are creating +// your file gateway in. If Amazon Web Services STS is not activated in this +// Amazon Web Services Region, activate it. For information about how to activate +// Amazon Web Services STS, see Activating and deactivating Amazon Web Services +// STS in an Amazon Web Services Region (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) // in the Identity and Access Management User Guide. // // File gateways don't support creating hard or symbolic links on a file share. @@ -8463,6 +8470,91 @@ func (c *StorageGateway) UpdateSMBFileShareVisibilityWithContext(ctx aws.Context return out, req.Send() } +const opUpdateSMBLocalGroups = "UpdateSMBLocalGroups" + +// UpdateSMBLocalGroupsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSMBLocalGroups 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 UpdateSMBLocalGroups for more information on using the UpdateSMBLocalGroups +// 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 UpdateSMBLocalGroupsRequest method. +// req, resp := client.UpdateSMBLocalGroupsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/UpdateSMBLocalGroups +func (c *StorageGateway) UpdateSMBLocalGroupsRequest(input *UpdateSMBLocalGroupsInput) (req *request.Request, output *UpdateSMBLocalGroupsOutput) { + op := &request.Operation{ + Name: opUpdateSMBLocalGroups, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateSMBLocalGroupsInput{} + } + + output = &UpdateSMBLocalGroupsOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSMBLocalGroups API operation for AWS Storage Gateway. +// +// Updates the list of Active Directory users and groups that have special permissions +// for SMB file shares on the gateway. +// +// 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 AWS Storage Gateway's +// API operation UpdateSMBLocalGroups for usage and error information. +// +// Returned Error Types: +// * InvalidGatewayRequestException +// An exception occurred because an invalid gateway request was issued to the +// service. For more information, see the error and message fields. +// +// * InternalServerError +// An internal server error has occurred during the request. For more information, +// see the error and message fields. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/UpdateSMBLocalGroups +func (c *StorageGateway) UpdateSMBLocalGroups(input *UpdateSMBLocalGroupsInput) (*UpdateSMBLocalGroupsOutput, error) { + req, out := c.UpdateSMBLocalGroupsRequest(input) + return out, req.Send() +} + +// UpdateSMBLocalGroupsWithContext is the same as UpdateSMBLocalGroups with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSMBLocalGroups 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 *StorageGateway) UpdateSMBLocalGroupsWithContext(ctx aws.Context, input *UpdateSMBLocalGroupsInput, opts ...request.Option) (*UpdateSMBLocalGroupsOutput, error) { + req, out := c.UpdateSMBLocalGroupsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateSMBSecurityStrategy = "UpdateSMBSecurityStrategy" // UpdateSMBSecurityStrategyRequest generates a "aws/request.Request" representing the @@ -8770,11 +8862,13 @@ type ActivateGatewayInput struct { // GatewayName is a required field GatewayName *string `min:"2" type:"string" required:"true"` - // A value that indicates the Region where you want to store your data. The - // gateway Region specified must be the same Region as the Region in your Host - // header in the request. For more information about available Regions and endpoints - // for Storage Gateway, see Storage Gateway endpoints and quotas (https://docs.aws.amazon.com/general/latest/gr/sg.html) - // in the Amazon Web Services General Reference. + // A value that indicates the Amazon Web Services Region where you want to store + // your data. The gateway Amazon Web Services Region specified must be the same + // Amazon Web Services Region as the Amazon Web Services Region in your Host + // header in the request. For more information about available Amazon Web Services + // Regions and endpoints for Storage Gateway, see Storage Gateway endpoints + // and quotas (https://docs.aws.amazon.com/general/latest/gr/sg.html) in the + // Amazon Web Services General Reference. // // Valid Values: See Storage Gateway endpoints and quotas (https://docs.aws.amazon.com/general/latest/gr/sg.html) // in the Amazon Web Services General Reference. @@ -8941,8 +9035,8 @@ func (s *ActivateGatewayInput) SetTapeDriveType(v string) *ActivateGatewayInput // Storage Gateway returns the Amazon Resource Name (ARN) of the activated gateway. // It is a string made of information such as your account, gateway name, and -// Region. This ARN is used to reference the gateway in other API operations -// as well as resource-based authorization. +// Amazon Web Services Region. This ARN is used to reference the gateway in +// other API operations as well as resource-based authorization. // // For gateways activated prior to September 02, 2015, the gateway ARN contains // the gateway name rather than the gateway ID. Changing the name of the gateway @@ -8951,7 +9045,7 @@ type ActivateGatewayOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -8990,7 +9084,7 @@ type AddCacheInput struct { DiskIds []*string `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -9049,7 +9143,7 @@ type AddCacheOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -9200,7 +9294,7 @@ type AddUploadBufferInput struct { DiskIds []*string `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -9259,7 +9353,7 @@ type AddUploadBufferOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -9301,7 +9395,7 @@ type AddWorkingStorageInput struct { DiskIds []*string `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -9362,7 +9456,7 @@ type AddWorkingStorageOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -9533,7 +9627,7 @@ type AssociateFileSystemInput struct { EndpointNetworkConfiguration *EndpointNetworkConfiguration `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -9889,7 +9983,7 @@ type AutomaticTapeCreationPolicyInfo struct { AutomaticTapeCreationRules []*AutomaticTapeCreationRule `min:"1" type:"list"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -10397,7 +10491,7 @@ type CancelArchivalInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -10499,7 +10593,7 @@ type CancelRetrievalInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -10679,7 +10773,7 @@ type CreateCachediSCSIVolumeInput struct { ClientToken *string `min:"5" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -10916,6 +11010,9 @@ func (s *CreateCachediSCSIVolumeOutput) SetVolumeARN(v string) *CreateCachediSCS type CreateNFSFileShareInput struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the storage used for audit logs. + AuditDestinationARN *string `type:"string"` + // Specifies the Region of the S3 bucket where the NFS file share stores files. // // This parameter is required for NFS file shares that connect to Amazon S3 @@ -10944,7 +11041,8 @@ type CreateNFSFileShareInput struct { // The name of the file share. Optional. // - // FileShareName must be set if an S3 prefix name is set in LocationARN. + // FileShareName must be set if an S3 prefix name is set in LocationARN, or + // if an access point or access point alias is used. FileShareName *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the S3 File Gateway on which you want to @@ -10971,19 +11069,30 @@ type CreateNFSFileShareInput struct { // CMKs. This value can only be set when KMSEncrypted is true. Optional. KMSKey *string `min:"7" type:"string"` - // The ARN of the backend storage used for storing file data. A prefix name - // can be added to the S3 bucket name. It must end with a "/". + // A custom ARN for the backend storage used for storing data for file shares. + // It includes a resource ARN with an optional prefix concatenation. The prefix + // must end with a forward slash (/). + // + // You can specify LocationARN as a bucket ARN, access point ARN or access point + // alias, as shown in the following examples. // - // You can specify a bucket attached to an access point using a complete ARN - // that includes the bucket region as shown: + // Bucket ARN: // - // arn:aws:s3:region:account-id:accesspoint/access-point-name + // arn:aws:s3:::my-bucket/prefix/ // - // If you specify a bucket attached to an access point, the bucket policy must - // be configured to delegate access control to the access point. For information, - // see Delegating access control to access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-policies.html#access-points-delegating-control) + // Access point ARN: + // + // arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/ + // + // If you specify an access point, the bucket policy must be configured to delegate + // access control to the access point. For information, see Delegating access + // control to access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-policies.html#access-points-delegating-control) // in the Amazon S3 User Guide. // + // Access point alias: + // + // test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias + // // LocationARN is a required field LocationARN *string `min:"16" type:"string" required:"true"` @@ -11159,6 +11268,12 @@ func (s *CreateNFSFileShareInput) Validate() error { return nil } +// SetAuditDestinationARN sets the AuditDestinationARN field's value. +func (s *CreateNFSFileShareInput) SetAuditDestinationARN(v string) *CreateNFSFileShareInput { + s.AuditDestinationARN = &v + return s +} + // SetBucketRegion sets the BucketRegion field's value. func (s *CreateNFSFileShareInput) SetBucketRegion(v string) *CreateNFSFileShareInput { s.BucketRegion = &v @@ -11366,7 +11481,8 @@ type CreateSMBFileShareInput struct { // The name of the file share. Optional. // - // FileShareName must be set if an S3 prefix name is set in LocationARN. + // FileShareName must be set if an S3 prefix name is set in LocationARN, or + // if an access point or access point alias is used. FileShareName *string `min:"1" type:"string"` // The ARN of the S3 File Gateway on which you want to create a file share. @@ -11398,19 +11514,30 @@ type CreateSMBFileShareInput struct { // CMKs. This value can only be set when KMSEncrypted is true. Optional. KMSKey *string `min:"7" type:"string"` - // The ARN of the backend storage used for storing file data. A prefix name - // can be added to the S3 bucket name. It must end with a "/". + // A custom ARN for the backend storage used for storing data for file shares. + // It includes a resource ARN with an optional prefix concatenation. The prefix + // must end with a forward slash (/). + // + // You can specify LocationARN as a bucket ARN, access point ARN or access point + // alias, as shown in the following examples. + // + // Bucket ARN: + // + // arn:aws:s3:::my-bucket/prefix/ // - // You can specify a bucket attached to an access point using a complete ARN - // that includes the bucket region as shown: + // Access point ARN: // - // arn:aws:s3:region:account-id:accesspoint/access-point-name + // arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/ // - // If you specify a bucket attached to an access point, the bucket policy must - // be configured to delegate access control to the access point. For information, - // see Delegating access control to access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-policies.html#access-points-delegating-control) + // If you specify an access point, the bucket policy must be configured to delegate + // access control to the access point. For information, see Delegating access + // control to access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-policies.html#access-points-delegating-control) // in the Amazon S3 User Guide. // + // Access point alias: + // + // test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias + // // LocationARN is a required field LocationARN *string `min:"16" type:"string" required:"true"` @@ -12086,7 +12213,7 @@ type CreateStorediSCSIVolumeInput struct { DiskId *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -12330,10 +12457,10 @@ type CreateTapePoolInput struct { RetentionLockTimeInDays *int64 `type:"integer"` // Tape retention lock can be configured in two modes. When configured in governance - // mode, accounts with specific IAM permissions are authorized to remove the - // tape retention lock from archived virtual tapes. When configured in compliance - // mode, the tape retention lock cannot be removed by any user, including the - // root account. + // mode, Amazon Web Services accounts with specific IAM permissions are authorized + // to remove the tape retention lock from archived virtual tapes. When configured + // in compliance mode, the tape retention lock cannot be removed by any user, + // including the root Amazon Web Services account. RetentionLockType *string `type:"string" enum:"RetentionLockType"` // The storage class that is associated with the new custom pool. When you use @@ -12436,7 +12563,7 @@ type CreateTapePoolOutput struct { // The unique Amazon Resource Name (ARN) that represents the custom tape pool. // Use the ListTapePools operation to return a list of tape pools for your account - // and Region. + // and Amazon Web Services Region. PoolARN *string `min:"50" type:"string"` } @@ -12470,7 +12597,7 @@ type CreateTapeWithBarcodeInput struct { // The unique Amazon Resource Name (ARN) that represents the gateway to associate // the virtual tape with. Use the ListGateways operation to return a list of - // gateways for your account and Region. + // gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -12678,7 +12805,7 @@ type CreateTapesInput struct { // The unique Amazon Resource Name (ARN) that represents the gateway to associate // the virtual tapes with. Use the ListGateways operation to return a list of - // gateways for your account and Region. + // gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -12906,7 +13033,7 @@ type DeleteAutomaticTapeCreationPolicyInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -12956,7 +13083,7 @@ type DeleteAutomaticTapeCreationPolicyOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -12999,7 +13126,7 @@ type DeleteBandwidthRateLimitInput struct { BandwidthType *string `min:"3" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -13063,7 +13190,7 @@ type DeleteBandwidthRateLimitOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -13306,7 +13433,7 @@ type DeleteGatewayInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -13357,7 +13484,7 @@ type DeleteGatewayOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -13573,7 +13700,7 @@ type DeleteTapeInput struct { // The unique Amazon Resource Name (ARN) of the gateway that the virtual tape // to delete is associated with. Use the ListGateways operation to return a - // list of gateways for your account and Region. + // list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -13843,7 +13970,7 @@ type DescribeAvailabilityMonitorTestInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -13893,7 +14020,7 @@ type DescribeAvailabilityMonitorTestOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // The time the high availability monitoring test was started. If a test hasn't @@ -13946,7 +14073,7 @@ type DescribeBandwidthRateLimitInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -14005,7 +14132,7 @@ type DescribeBandwidthRateLimitOutput struct { AverageUploadRateLimitInBitsPerSec *int64 `min:"51200" type:"long"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -14049,7 +14176,7 @@ type DescribeBandwidthRateLimitScheduleInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -14103,7 +14230,7 @@ type DescribeBandwidthRateLimitScheduleOutput struct { BandwidthRateLimitIntervals []*BandwidthRateLimitInterval `type:"list"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -14141,7 +14268,7 @@ type DescribeCacheInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -14217,7 +14344,7 @@ type DescribeCacheOutput struct { DiskIds []*string `type:"list"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -14547,7 +14674,7 @@ type DescribeGatewayInformationInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -14608,7 +14735,7 @@ type DescribeGatewayInformationOutput struct { // The ID of the Amazon EC2 instance that was used to launch the gateway. Ec2InstanceId *string `type:"string"` - // The Region where the Amazon EC2 instance is located. + // The Amazon Web Services Region where the Amazon EC2 instance is located. Ec2InstanceRegion *string `type:"string"` // The type of endpoint for your gateway. @@ -14617,7 +14744,7 @@ type DescribeGatewayInformationOutput struct { EndpointType *string `min:"4" type:"string"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // Specifies the size of the gateway's metadata cache. @@ -14817,7 +14944,7 @@ type DescribeMaintenanceStartTimeInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -14888,7 +15015,7 @@ type DescribeMaintenanceStartTimeOutput struct { DayOfWeek *int64 `type:"integer"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // The hour component of the maintenance start time represented as hh, where @@ -15130,7 +15257,7 @@ type DescribeSMBSettingsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -15209,7 +15336,7 @@ type DescribeSMBSettingsOutput struct { FileSharesVisible *bool `type:"boolean"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // This value is true if a password for the guest user smbguest is set, otherwise @@ -15218,6 +15345,10 @@ type DescribeSMBSettingsOutput struct { // Valid Values: true | false SMBGuestPasswordSet *bool `type:"boolean"` + // A list of Active Directory users and groups that have special permissions + // for SMB file shares on the gateway. + SMBLocalGroups *SMBLocalGroups `type:"structure"` + // The type of security strategy that was specified for file gateway. // // * ClientSpecified: If you use this option, requests are established based @@ -15285,6 +15416,12 @@ func (s *DescribeSMBSettingsOutput) SetSMBGuestPasswordSet(v bool) *DescribeSMBS return s } +// SetSMBLocalGroups sets the SMBLocalGroups field's value. +func (s *DescribeSMBSettingsOutput) SetSMBLocalGroups(v *SMBLocalGroups) *DescribeSMBSettingsOutput { + s.SMBLocalGroups = v + return s +} + // SetSMBSecurityStrategy sets the SMBSecurityStrategy field's value. func (s *DescribeSMBSettingsOutput) SetSMBSecurityStrategy(v string) *DescribeSMBSettingsOutput { s.SMBSecurityStrategy = &v @@ -15671,7 +15808,7 @@ type DescribeTapeRecoveryPointsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -15748,7 +15885,7 @@ type DescribeTapeRecoveryPointsOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // An opaque string that indicates the position at which the virtual tape recovery @@ -15804,7 +15941,7 @@ type DescribeTapesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -15941,7 +16078,7 @@ type DescribeUploadBufferInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -15997,7 +16134,7 @@ type DescribeUploadBufferOutput struct { DiskIds []*string `type:"list"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // The total number of bytes allocated in the gateway's as upload buffer. @@ -16054,7 +16191,7 @@ type DescribeVTLDevicesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -16145,7 +16282,7 @@ type DescribeVTLDevicesOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // An opaque string that indicates the position at which the VTL devices that @@ -16200,7 +16337,7 @@ type DescribeWorkingStorageInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -16257,7 +16394,7 @@ type DescribeWorkingStorageOutput struct { DiskIds []*string `type:"list"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // The total working storage in bytes allocated for the gateway. If no working @@ -16471,7 +16608,7 @@ type DisableGatewayInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -16842,7 +16979,7 @@ type FileShareInfo struct { FileShareType *string `type:"string" enum:"FileShareType"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -16919,8 +17056,12 @@ type FileSystemAssociationInfo struct { // | DELETING | FORCE_DELETING | UPDATING | ERROR FileSystemAssociationStatus *string `min:"3" type:"string"` + // An array containing the FileSystemAssociationStatusDetail data type, which + // provides detailed information on file system association status. + FileSystemAssociationStatusDetails []*FileSystemAssociationStatusDetail `type:"list"` + // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // The ARN of the backend Amazon FSx file system used for storing file data. @@ -16981,6 +17122,12 @@ func (s *FileSystemAssociationInfo) SetFileSystemAssociationStatus(v string) *Fi return s } +// SetFileSystemAssociationStatusDetails sets the FileSystemAssociationStatusDetails field's value. +func (s *FileSystemAssociationInfo) SetFileSystemAssociationStatusDetails(v []*FileSystemAssociationStatusDetail) *FileSystemAssociationInfo { + s.FileSystemAssociationStatusDetails = v + return s +} + // SetGatewayARN sets the GatewayARN field's value. func (s *FileSystemAssociationInfo) SetGatewayARN(v string) *FileSystemAssociationInfo { s.GatewayARN = &v @@ -16999,6 +17146,38 @@ func (s *FileSystemAssociationInfo) SetTags(v []*Tag) *FileSystemAssociationInfo return s } +// Detailed information on file system association status. +type FileSystemAssociationStatusDetail struct { + _ struct{} `type:"structure"` + + // The error code for a given file system association status. + ErrorCode *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FileSystemAssociationStatusDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FileSystemAssociationStatusDetail) GoString() string { + return s.String() +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *FileSystemAssociationStatusDetail) SetErrorCode(v string) *FileSystemAssociationStatusDetail { + s.ErrorCode = &v + return s +} + // Gets the summary returned by ListFileSystemAssociation, which is a summary // of a created file system association. type FileSystemAssociationSummary struct { @@ -17015,7 +17194,7 @@ type FileSystemAssociationSummary struct { FileSystemAssociationStatus *string `min:"3" type:"string"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -17068,11 +17247,11 @@ type GatewayInfo struct { // The ID of the Amazon EC2 instance that was used to launch the gateway. Ec2InstanceId *string `type:"string"` - // The Region where the Amazon EC2 instance is located. + // The Amazon Web Services Region where the Amazon EC2 instance is located. Ec2InstanceRegion *string `type:"string"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // The unique identifier assigned to your gateway during activation. This ID @@ -17306,7 +17485,7 @@ type JoinDomainInput struct { DomainName *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -17499,7 +17678,7 @@ type ListAutomaticTapeCreationPoliciesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -17703,7 +17882,7 @@ type ListFileSystemAssociationsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // The maximum number of file system associations to return in the response. @@ -17932,7 +18111,7 @@ type ListLocalDisksInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -17987,7 +18166,7 @@ type ListLocalDisksOutput struct { Disks []*Disk `type:"list"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -18476,7 +18655,7 @@ type ListVolumeRecoveryPointsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -18526,7 +18705,7 @@ type ListVolumeRecoveryPointsOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // An array of VolumeRecoveryPointInfo objects. @@ -18572,7 +18751,7 @@ type ListVolumesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // Specifies that the list of volumes returned be limited to the specified number @@ -18649,7 +18828,7 @@ type ListVolumesOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // Use the marker in your next request to continue pagination of iSCSI volumes. @@ -18790,6 +18969,9 @@ func (s *NFSFileShareDefaults) SetOwnerId(v int64) *NFSFileShareDefaults { type NFSFileShareInfo struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the storage used for audit logs. + AuditDestinationARN *string `type:"string"` + // Specifies the Region of the S3 bucket where the NFS file share stores files. // // This parameter is required for NFS file shares that connect to Amazon S3 @@ -18818,7 +19000,8 @@ type NFSFileShareInfo struct { // The name of the file share. Optional. // - // FileShareName must be set if an S3 prefix name is set in LocationARN. + // FileShareName must be set if an S3 prefix name is set in LocationARN, or + // if an access point or access point alias is used. FileShareName *string `min:"1" type:"string"` // The status of the file share. @@ -18827,7 +19010,7 @@ type NFSFileShareInfo struct { FileShareStatus *string `min:"3" type:"string"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // A value that enables guessing of the MIME type for uploaded objects based @@ -18848,8 +19031,29 @@ type NFSFileShareInfo struct { // CMKs. This value can only be set when KMSEncrypted is true. Optional. KMSKey *string `min:"7" type:"string"` - // The ARN of the backend storage used for storing file data. A prefix name - // can be added to the S3 bucket name. It must end with a "/". + // A custom ARN for the backend storage used for storing data for file shares. + // It includes a resource ARN with an optional prefix concatenation. The prefix + // must end with a forward slash (/). + // + // You can specify LocationARN as a bucket ARN, access point ARN or access point + // alias, as shown in the following examples. + // + // Bucket ARN: + // + // arn:aws:s3:::my-bucket/prefix/ + // + // Access point ARN: + // + // arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/ + // + // If you specify an access point, the bucket policy must be configured to delegate + // access control to the access point. For information, see Delegating access + // control to access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-policies.html#access-points-delegating-control) + // in the Amazon S3 User Guide. + // + // Access point alias: + // + // test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias LocationARN *string `min:"16" type:"string"` // Describes Network File System (NFS) file share default values. Files and @@ -18951,6 +19155,12 @@ func (s NFSFileShareInfo) GoString() string { return s.String() } +// SetAuditDestinationARN sets the AuditDestinationARN field's value. +func (s *NFSFileShareInfo) SetAuditDestinationARN(v string) *NFSFileShareInfo { + s.AuditDestinationARN = &v + return s +} + // SetBucketRegion sets the BucketRegion field's value. func (s *NFSFileShareInfo) SetBucketRegion(v string) *NFSFileShareInfo { s.BucketRegion = &v @@ -19237,7 +19447,8 @@ type PoolInfo struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the custom tape pool. Use the ListTapePools - // operation to return a list of custom tape pools for your account and Region. + // operation to return a list of custom tape pools for your account and Amazon + // Web Services Region. PoolARN *string `min:"50" type:"string"` // The name of the custom tape pool. PoolName can use all ASCII characters, @@ -19252,10 +19463,10 @@ type PoolInfo struct { RetentionLockTimeInDays *int64 `type:"integer"` // Tape retention lock type, which can be configured in two modes. When configured - // in governance mode, accounts with specific IAM permissions are authorized - // to remove the tape retention lock from archived virtual tapes. When configured - // in compliance mode, the tape retention lock cannot be removed by any user, - // including the root account. + // in governance mode, Amazon Web Services accounts with specific IAM permissions + // are authorized to remove the tape retention lock from archived virtual tapes. + // When configured in compliance mode, the tape retention lock cannot be removed + // by any user, including the root Amazon Web Services account. RetentionLockType *string `type:"string" enum:"RetentionLockType"` // The storage class that is associated with the custom pool. When you use your @@ -19546,7 +19757,7 @@ type ResetCacheInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -19596,7 +19807,7 @@ type ResetCacheOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -19630,7 +19841,7 @@ type RetrieveTapeArchiveInput struct { // The Amazon Resource Name (ARN) of the gateway you want to retrieve the virtual // tape to. Use the ListGateways operation to return a list of gateways for - // your account and Region. + // your account and Amazon Web Services Region. // // You retrieve archived virtual tapes to only one gateway and the gateway must // be a tape gateway. @@ -19734,7 +19945,7 @@ type RetrieveTapeRecoveryPointInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -19883,7 +20094,8 @@ type SMBFileShareInfo struct { // The name of the file share. Optional. // - // FileShareName must be set if an S3 prefix name is set in LocationARN. + // FileShareName must be set if an S3 prefix name is set in LocationARN, or + // if an access point or access point alias is used. FileShareName *string `min:"1" type:"string"` // The status of the file share. @@ -19892,7 +20104,7 @@ type SMBFileShareInfo struct { FileShareStatus *string `min:"3" type:"string"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // A value that enables guessing of the MIME type for uploaded objects based @@ -19919,8 +20131,29 @@ type SMBFileShareInfo struct { // CMKs. This value can only be set when KMSEncrypted is true. Optional. KMSKey *string `min:"7" type:"string"` - // The ARN of the backend storage used for storing file data. A prefix name - // can be added to the S3 bucket name. It must end with a "/". + // A custom ARN for the backend storage used for storing data for file shares. + // It includes a resource ARN with an optional prefix concatenation. The prefix + // must end with a forward slash (/). + // + // You can specify LocationARN as a bucket ARN, access point ARN or access point + // alias, as shown in the following examples. + // + // Bucket ARN: + // + // arn:aws:s3:::my-bucket/prefix/ + // + // Access point ARN: + // + // arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/ + // + // If you specify an access point, the bucket policy must be configured to delegate + // access control to the access point. For information, see Delegating access + // control to access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-policies.html#access-points-delegating-control) + // in the Amazon S3 User Guide. + // + // Access point alias: + // + // test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias LocationARN *string `min:"16" type:"string"` // The notification policy of the file share. SettlingTimeInSeconds controls @@ -20203,6 +20436,44 @@ func (s *SMBFileShareInfo) SetValidUserList(v []*string) *SMBFileShareInfo { return s } +// A list of Active Directory users and groups that have special permissions +// for SMB file shares on the gateway. +type SMBLocalGroups struct { + _ struct{} `type:"structure"` + + // A list of Active Directory users and groups that have local Gateway Admin + // permissions. Acceptable formats include: DOMAIN\User1, user1, DOMAIN\group1, + // and group1. + // + // Gateway Admins can use the Shared Folders Microsoft Management Console snap-in + // to force-close files that are open and locked. + GatewayAdmins []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SMBLocalGroups) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SMBLocalGroups) GoString() string { + return s.String() +} + +// SetGatewayAdmins sets the GatewayAdmins field's value. +func (s *SMBLocalGroups) SetGatewayAdmins(v []*string) *SMBLocalGroups { + s.GatewayAdmins = v + return s +} + // An internal server error has occurred because the service is unavailable. // For more information, see the error and message fields. type ServiceUnavailableError struct { @@ -20278,7 +20549,7 @@ type SetLocalConsolePasswordInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -20349,7 +20620,7 @@ type SetLocalConsolePasswordOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -20453,7 +20724,7 @@ type SetSMBGuestPasswordOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -20487,7 +20758,7 @@ type ShutdownGatewayInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -20539,7 +20810,7 @@ type ShutdownGatewayOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -20571,7 +20842,7 @@ type StartAvailabilityMonitorTestInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -20621,7 +20892,7 @@ type StartAvailabilityMonitorTestOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -20655,7 +20926,7 @@ type StartGatewayInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -20707,7 +20978,7 @@ type StartGatewayOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -21302,7 +21573,7 @@ type TapeInfo struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // The date that the tape entered the custom tape pool with tape retention lock @@ -21473,7 +21744,7 @@ type UpdateAutomaticTapeCreationPolicyInput struct { AutomaticTapeCreationRules []*AutomaticTapeCreationRule `min:"1" type:"list" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -21545,7 +21816,7 @@ type UpdateAutomaticTapeCreationPolicyOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -21588,7 +21859,7 @@ type UpdateBandwidthRateLimitInput struct { AverageUploadRateLimitInBitsPerSec *int64 `min:"51200" type:"long"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -21658,7 +21929,7 @@ type UpdateBandwidthRateLimitOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -21697,7 +21968,7 @@ type UpdateBandwidthRateLimitScheduleInput struct { BandwidthRateLimitIntervals []*BandwidthRateLimitInterval `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -21766,7 +22037,7 @@ type UpdateBandwidthRateLimitScheduleOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -22097,7 +22368,7 @@ type UpdateGatewayInformationInput struct { CloudWatchLogGroupARN *string `type:"string"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -22188,7 +22459,7 @@ type UpdateGatewayInformationOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // The name you configured for your gateway. @@ -22231,7 +22502,7 @@ type UpdateGatewaySoftwareNowInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -22283,7 +22554,7 @@ type UpdateGatewaySoftwareNowOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -22333,7 +22604,7 @@ type UpdateMaintenanceStartTimeInput struct { DayOfWeek *int64 `type:"integer"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -22432,7 +22703,7 @@ type UpdateMaintenanceStartTimeOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -22464,7 +22735,10 @@ func (s *UpdateMaintenanceStartTimeOutput) SetGatewayARN(v string) *UpdateMainte type UpdateNFSFileShareInput struct { _ struct{} `type:"structure"` - // specifies refresh cache information for the file share. + // The Amazon Resource Name (ARN) of the storage used for audit logs. + AuditDestinationARN *string `type:"string"` + + // Specifies refresh cache information for the file share. CacheAttributes *CacheAttributes `type:"structure"` // The list of clients that are allowed to access the S3 File Gateway. The list @@ -22484,7 +22758,8 @@ type UpdateNFSFileShareInput struct { // The name of the file share. Optional. // - // FileShareName must be set if an S3 prefix name is set in LocationARN. + // FileShareName must be set if an S3 prefix name is set in LocationARN, or + // if an access point or access point alias is used. FileShareName *string `min:"1" type:"string"` // A value that enables guessing of the MIME type for uploaded objects based @@ -22620,6 +22895,12 @@ func (s *UpdateNFSFileShareInput) Validate() error { return nil } +// SetAuditDestinationARN sets the AuditDestinationARN field's value. +func (s *UpdateNFSFileShareInput) SetAuditDestinationARN(v string) *UpdateNFSFileShareInput { + s.AuditDestinationARN = &v + return s +} + // SetCacheAttributes sets the CacheAttributes field's value. func (s *UpdateNFSFileShareInput) SetCacheAttributes(v *CacheAttributes) *UpdateNFSFileShareInput { s.CacheAttributes = v @@ -22774,7 +23055,8 @@ type UpdateSMBFileShareInput struct { // The name of the file share. Optional. // - // FileShareName must be set if an S3 prefix name is set in LocationARN. + // FileShareName must be set if an S3 prefix name is set in LocationARN, or + // if an access point or access point alias is used. FileShareName *string `min:"1" type:"string"` // A value that enables guessing of the MIME type for uploaded objects based @@ -23072,7 +23354,7 @@ type UpdateSMBFileShareVisibilityInput struct { FileSharesVisible *bool `type:"boolean" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -23131,7 +23413,7 @@ type UpdateSMBFileShareVisibilityOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -23159,11 +23441,108 @@ func (s *UpdateSMBFileShareVisibilityOutput) SetGatewayARN(v string) *UpdateSMBF return s } +type UpdateSMBLocalGroupsInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation + // to return a list of gateways for your account and Amazon Web Services Region. + // + // GatewayARN is a required field + GatewayARN *string `min:"50" type:"string" required:"true"` + + // A list of Active Directory users and groups that you want to grant special + // permissions for SMB file shares on the gateway. + // + // SMBLocalGroups is a required field + SMBLocalGroups *SMBLocalGroups `type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSMBLocalGroupsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSMBLocalGroupsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSMBLocalGroupsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSMBLocalGroupsInput"} + if s.GatewayARN == nil { + invalidParams.Add(request.NewErrParamRequired("GatewayARN")) + } + if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { + invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) + } + if s.SMBLocalGroups == nil { + invalidParams.Add(request.NewErrParamRequired("SMBLocalGroups")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGatewayARN sets the GatewayARN field's value. +func (s *UpdateSMBLocalGroupsInput) SetGatewayARN(v string) *UpdateSMBLocalGroupsInput { + s.GatewayARN = &v + return s +} + +// SetSMBLocalGroups sets the SMBLocalGroups field's value. +func (s *UpdateSMBLocalGroupsInput) SetSMBLocalGroups(v *SMBLocalGroups) *UpdateSMBLocalGroupsInput { + s.SMBLocalGroups = v + return s +} + +type UpdateSMBLocalGroupsOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation + // to return a list of gateways for your account and Amazon Web Services Region. + GatewayARN *string `min:"50" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSMBLocalGroupsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSMBLocalGroupsOutput) GoString() string { + return s.String() +} + +// SetGatewayARN sets the GatewayARN field's value. +func (s *UpdateSMBLocalGroupsOutput) SetGatewayARN(v string) *UpdateSMBLocalGroupsOutput { + s.GatewayARN = &v + return s +} + type UpdateSMBSecurityStrategyInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` @@ -23241,7 +23620,7 @@ type UpdateSMBSecurityStrategyOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` } @@ -23606,7 +23985,7 @@ type VolumeInfo struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation - // to return a list of gateways for your account and Region. + // to return a list of gateways for your account and Amazon Web Services Region. GatewayARN *string `min:"50" type:"string"` // The unique identifier assigned to your gateway during activation. This ID diff --git a/service/storagegateway/doc.go b/service/storagegateway/doc.go index 12cd4f87fc..b7d81ab420 100644 --- a/service/storagegateway/doc.go +++ b/service/storagegateway/doc.go @@ -7,7 +7,8 @@ // with cloud-based storage to provide seamless and secure integration between // an organization's on-premises IT environment and the Amazon Web Services // storage infrastructure. The service enables you to securely upload data to -// the Cloud for cost effective backup and rapid disaster recovery. +// the Amazon Web Services Cloud for cost effective backup and rapid disaster +// recovery. // // Use the following links to get started using the Storage Gateway Service // API Reference: @@ -29,8 +30,8 @@ // requests and responses. // // * Storage Gateway endpoints and quotas (https://docs.aws.amazon.com/general/latest/gr/sg.html): -// Provides a list of each Region and the endpoints available for use with -// Storage Gateway. +// Provides a list of each Amazon Web Services Region and the endpoints available +// for use with Storage Gateway. // // Storage Gateway resource IDs are in uppercase. When you use these resource // IDs with the Amazon EC2 API, EC2 expects resource IDs in lowercase. You must diff --git a/service/storagegateway/storagegatewayiface/interface.go b/service/storagegateway/storagegatewayiface/interface.go index 4eb0c0b008..fe5bc397d9 100644 --- a/service/storagegateway/storagegatewayiface/interface.go +++ b/service/storagegateway/storagegatewayiface/interface.go @@ -437,6 +437,10 @@ type StorageGatewayAPI interface { UpdateSMBFileShareVisibilityWithContext(aws.Context, *storagegateway.UpdateSMBFileShareVisibilityInput, ...request.Option) (*storagegateway.UpdateSMBFileShareVisibilityOutput, error) UpdateSMBFileShareVisibilityRequest(*storagegateway.UpdateSMBFileShareVisibilityInput) (*request.Request, *storagegateway.UpdateSMBFileShareVisibilityOutput) + UpdateSMBLocalGroups(*storagegateway.UpdateSMBLocalGroupsInput) (*storagegateway.UpdateSMBLocalGroupsOutput, error) + UpdateSMBLocalGroupsWithContext(aws.Context, *storagegateway.UpdateSMBLocalGroupsInput, ...request.Option) (*storagegateway.UpdateSMBLocalGroupsOutput, error) + UpdateSMBLocalGroupsRequest(*storagegateway.UpdateSMBLocalGroupsInput) (*request.Request, *storagegateway.UpdateSMBLocalGroupsOutput) + UpdateSMBSecurityStrategy(*storagegateway.UpdateSMBSecurityStrategyInput) (*storagegateway.UpdateSMBSecurityStrategyOutput, error) UpdateSMBSecurityStrategyWithContext(aws.Context, *storagegateway.UpdateSMBSecurityStrategyInput, ...request.Option) (*storagegateway.UpdateSMBSecurityStrategyOutput, error) UpdateSMBSecurityStrategyRequest(*storagegateway.UpdateSMBSecurityStrategyInput) (*request.Request, *storagegateway.UpdateSMBSecurityStrategyOutput) diff --git a/service/workmail/api.go b/service/workmail/api.go index 2c83a89d7a..4048f9b4a3 100644 --- a/service/workmail/api.go +++ b/service/workmail/api.go @@ -380,8 +380,7 @@ func (c *WorkMail) CreateAliasRequest(input *CreateAliasInput) (req *request.Req // One or more of the input parameters don't match the service's restrictions. // // * MailDomainNotFoundException -// For an email or alias to be created in Amazon WorkMail, the included domain -// must be defined in the organization. +// The domain specified is not found in your organization. // // * MailDomainStateException // After a domain has been added to the organization, it must be verified. The @@ -977,6 +976,10 @@ func (c *WorkMail) DeleteAccessControlRuleRequest(input *DeleteAccessControlRule // // Deletes an access control rule for the specified WorkMail organization. // +// Deleting already deleted and non-existing rules does not produce an error. +// In those cases, the service sends back an HTTP 200 response with an empty +// HTTP body. +// // 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. @@ -1356,6 +1359,10 @@ func (c *WorkMail) DeleteMobileDeviceAccessOverrideRequest(input *DeleteMobileDe // Deletes the mobile device access override for the given WorkMail organization, // user, and device. // +// Deleting already deleted and non-existing overrides does not produce an error. +// In those cases, the service sends back an HTTP 200 response with an empty +// HTTP body. +// // 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. @@ -1448,6 +1455,10 @@ func (c *WorkMail) DeleteMobileDeviceAccessRuleRequest(input *DeleteMobileDevice // // Deletes a mobile device access rule for the specified Amazon WorkMail organization. // +// Deleting already deleted and non-existing rules does not produce an error. +// In those cases, the service sends back an HTTP 200 response with an empty +// HTTP body. +// // 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. @@ -1965,6 +1976,106 @@ func (c *WorkMail) DeregisterFromWorkMailWithContext(ctx aws.Context, input *Der return out, req.Send() } +const opDeregisterMailDomain = "DeregisterMailDomain" + +// DeregisterMailDomainRequest generates a "aws/request.Request" representing the +// client's request for the DeregisterMailDomain 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 DeregisterMailDomain for more information on using the DeregisterMailDomain +// 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 DeregisterMailDomainRequest method. +// req, resp := client.DeregisterMailDomainRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeregisterMailDomain +func (c *WorkMail) DeregisterMailDomainRequest(input *DeregisterMailDomainInput) (req *request.Request, output *DeregisterMailDomainOutput) { + op := &request.Operation{ + Name: opDeregisterMailDomain, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeregisterMailDomainInput{} + } + + output = &DeregisterMailDomainOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeregisterMailDomain API operation for Amazon WorkMail. +// +// Removes a domain from Amazon WorkMail, stops email routing to WorkMail, and +// removes the authorization allowing WorkMail use. SES keeps the domain because +// other applications may use it. You must first remove any email address used +// by WorkMail entities before you remove the domain. +// +// 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 WorkMail's +// API operation DeregisterMailDomain for usage and error information. +// +// Returned Error Types: +// * MailDomainInUseException +// The domain you're trying to change is in use by another user or organization +// in your account. See the error message for details. +// +// * OrganizationNotFoundException +// An operation received a valid organization identifier that either doesn't +// belong or exist in the system. +// +// * OrganizationStateException +// The organization must have a valid state to perform certain operations on +// the organization or its members. +// +// * InvalidParameterException +// One or more of the input parameters don't match the service's restrictions. +// +// * InvalidCustomSesConfigurationException +// You SES configuration has customizations that Amazon WorkMail cannot save. +// The error message lists the invalid setting. For examples of invalid settings, +// refer to CreateReceiptRule (https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateReceiptRule.html). +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeregisterMailDomain +func (c *WorkMail) DeregisterMailDomain(input *DeregisterMailDomainInput) (*DeregisterMailDomainOutput, error) { + req, out := c.DeregisterMailDomainRequest(input) + return out, req.Send() +} + +// DeregisterMailDomainWithContext is the same as DeregisterMailDomain with the addition of +// the ability to pass a context and additional request options. +// +// See DeregisterMailDomain 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 *WorkMail) DeregisterMailDomainWithContext(ctx aws.Context, input *DeregisterMailDomainInput, opts ...request.Option) (*DeregisterMailDomainOutput, error) { + req, out := c.DeregisterMailDomainRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeGroup = "DescribeGroup" // DescribeGroupRequest generates a "aws/request.Request" representing the @@ -2880,6 +2991,97 @@ func (c *WorkMail) GetDefaultRetentionPolicyWithContext(ctx aws.Context, input * return out, req.Send() } +const opGetMailDomain = "GetMailDomain" + +// GetMailDomainRequest generates a "aws/request.Request" representing the +// client's request for the GetMailDomain 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 GetMailDomain for more information on using the GetMailDomain +// 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 GetMailDomainRequest method. +// req, resp := client.GetMailDomainRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetMailDomain +func (c *WorkMail) GetMailDomainRequest(input *GetMailDomainInput) (req *request.Request, output *GetMailDomainOutput) { + op := &request.Operation{ + Name: opGetMailDomain, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetMailDomainInput{} + } + + output = &GetMailDomainOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetMailDomain API operation for Amazon WorkMail. +// +// Gets details for a mail domain, including domain records required to configure +// your domain with recommended security. +// +// 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 WorkMail's +// API operation GetMailDomain for usage and error information. +// +// Returned Error Types: +// * MailDomainNotFoundException +// The domain specified is not found in your organization. +// +// * OrganizationNotFoundException +// An operation received a valid organization identifier that either doesn't +// belong or exist in the system. +// +// * OrganizationStateException +// The organization must have a valid state to perform certain operations on +// the organization or its members. +// +// * InvalidParameterException +// One or more of the input parameters don't match the service's restrictions. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetMailDomain +func (c *WorkMail) GetMailDomain(input *GetMailDomainInput) (*GetMailDomainOutput, error) { + req, out := c.GetMailDomainRequest(input) + return out, req.Send() +} + +// GetMailDomainWithContext is the same as GetMailDomain with the addition of +// the ability to pass a context and additional request options. +// +// See GetMailDomain 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 *WorkMail) GetMailDomainWithContext(ctx aws.Context, input *GetMailDomainInput, opts ...request.Option) (*GetMailDomainOutput, error) { + req, out := c.GetMailDomainRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetMailboxDetails = "GetMailboxDetails" // GetMailboxDetailsRequest generates a "aws/request.Request" representing the @@ -3693,6 +3895,151 @@ func (c *WorkMail) ListGroupsPagesWithContext(ctx aws.Context, input *ListGroups return p.Err() } +const opListMailDomains = "ListMailDomains" + +// ListMailDomainsRequest generates a "aws/request.Request" representing the +// client's request for the ListMailDomains 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 ListMailDomains for more information on using the ListMailDomains +// 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 ListMailDomainsRequest method. +// req, resp := client.ListMailDomainsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListMailDomains +func (c *WorkMail) ListMailDomainsRequest(input *ListMailDomainsInput) (req *request.Request, output *ListMailDomainsOutput) { + op := &request.Operation{ + Name: opListMailDomains, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListMailDomainsInput{} + } + + output = &ListMailDomainsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListMailDomains API operation for Amazon WorkMail. +// +// Lists the mail domains in a given Amazon WorkMail 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 +// the error. +// +// See the AWS API reference guide for Amazon WorkMail's +// API operation ListMailDomains for usage and error information. +// +// Returned Error Types: +// * InvalidParameterException +// One or more of the input parameters don't match the service's restrictions. +// +// * OrganizationNotFoundException +// An operation received a valid organization identifier that either doesn't +// belong or exist in the system. +// +// * OrganizationStateException +// The organization must have a valid state to perform certain operations on +// the organization or its members. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListMailDomains +func (c *WorkMail) ListMailDomains(input *ListMailDomainsInput) (*ListMailDomainsOutput, error) { + req, out := c.ListMailDomainsRequest(input) + return out, req.Send() +} + +// ListMailDomainsWithContext is the same as ListMailDomains with the addition of +// the ability to pass a context and additional request options. +// +// See ListMailDomains 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 *WorkMail) ListMailDomainsWithContext(ctx aws.Context, input *ListMailDomainsInput, opts ...request.Option) (*ListMailDomainsOutput, error) { + req, out := c.ListMailDomainsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListMailDomainsPages iterates over the pages of a ListMailDomains operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMailDomains method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListMailDomains operation. +// pageNum := 0 +// err := client.ListMailDomainsPages(params, +// func(page *workmail.ListMailDomainsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *WorkMail) ListMailDomainsPages(input *ListMailDomainsInput, fn func(*ListMailDomainsOutput, bool) bool) error { + return c.ListMailDomainsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListMailDomainsPagesWithContext same as ListMailDomainsPages except +// it takes a Context and allows setting request options on the pages. +// +// 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 *WorkMail) ListMailDomainsPagesWithContext(ctx aws.Context, input *ListMailDomainsInput, fn func(*ListMailDomainsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListMailDomainsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListMailDomainsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListMailDomainsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListMailboxExportJobs = "ListMailboxExportJobs" // ListMailboxExportJobsRequest generates a "aws/request.Request" representing the @@ -5354,17 +5701,115 @@ func (c *WorkMail) PutRetentionPolicyWithContext(ctx aws.Context, input *PutRete return out, req.Send() } -const opRegisterToWorkMail = "RegisterToWorkMail" +const opRegisterMailDomain = "RegisterMailDomain" -// RegisterToWorkMailRequest generates a "aws/request.Request" representing the -// client's request for the RegisterToWorkMail operation. The "output" return +// RegisterMailDomainRequest generates a "aws/request.Request" representing the +// client's request for the RegisterMailDomain 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 RegisterToWorkMail for more information on using the RegisterToWorkMail +// See RegisterMailDomain for more information on using the RegisterMailDomain +// 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 RegisterMailDomainRequest method. +// req, resp := client.RegisterMailDomainRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/RegisterMailDomain +func (c *WorkMail) RegisterMailDomainRequest(input *RegisterMailDomainInput) (req *request.Request, output *RegisterMailDomainOutput) { + op := &request.Operation{ + Name: opRegisterMailDomain, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &RegisterMailDomainInput{} + } + + output = &RegisterMailDomainOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// RegisterMailDomain API operation for Amazon WorkMail. +// +// Registers a new domain in Amazon WorkMail and SES, and configures it for +// use by WorkMail. Emails received by SES for this domain are routed to the +// specified WorkMail organization, and WorkMail has permanent permission to +// use the specified domain for sending your users' emails. +// +// 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 WorkMail's +// API operation RegisterMailDomain for usage and error information. +// +// Returned Error Types: +// * MailDomainInUseException +// The domain you're trying to change is in use by another user or organization +// in your account. See the error message for details. +// +// * OrganizationNotFoundException +// An operation received a valid organization identifier that either doesn't +// belong or exist in the system. +// +// * OrganizationStateException +// The organization must have a valid state to perform certain operations on +// the organization or its members. +// +// * LimitExceededException +// The request exceeds the limit of the resource. +// +// * InvalidParameterException +// One or more of the input parameters don't match the service's restrictions. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/RegisterMailDomain +func (c *WorkMail) RegisterMailDomain(input *RegisterMailDomainInput) (*RegisterMailDomainOutput, error) { + req, out := c.RegisterMailDomainRequest(input) + return out, req.Send() +} + +// RegisterMailDomainWithContext is the same as RegisterMailDomain with the addition of +// the ability to pass a context and additional request options. +// +// See RegisterMailDomain 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 *WorkMail) RegisterMailDomainWithContext(ctx aws.Context, input *RegisterMailDomainInput, opts ...request.Option) (*RegisterMailDomainOutput, error) { + req, out := c.RegisterMailDomainRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opRegisterToWorkMail = "RegisterToWorkMail" + +// RegisterToWorkMailRequest generates a "aws/request.Request" representing the +// client's request for the RegisterToWorkMail 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 RegisterToWorkMail for more information on using the RegisterToWorkMail // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration @@ -5442,8 +5887,7 @@ func (c *WorkMail) RegisterToWorkMailRequest(input *RegisterToWorkMailInput) (re // One or more of the input parameters don't match the service's restrictions. // // * MailDomainNotFoundException -// For an email or alias to be created in Amazon WorkMail, the included domain -// must be defined in the organization. +// The domain specified is not found in your organization. // // * MailDomainStateException // After a domain has been added to the organization, it must be verified. The @@ -5854,6 +6298,103 @@ func (c *WorkMail) UntagResourceWithContext(ctx aws.Context, input *UntagResourc return out, req.Send() } +const opUpdateDefaultMailDomain = "UpdateDefaultMailDomain" + +// UpdateDefaultMailDomainRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDefaultMailDomain 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 UpdateDefaultMailDomain for more information on using the UpdateDefaultMailDomain +// 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 UpdateDefaultMailDomainRequest method. +// req, resp := client.UpdateDefaultMailDomainRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/UpdateDefaultMailDomain +func (c *WorkMail) UpdateDefaultMailDomainRequest(input *UpdateDefaultMailDomainInput) (req *request.Request, output *UpdateDefaultMailDomainOutput) { + op := &request.Operation{ + Name: opUpdateDefaultMailDomain, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateDefaultMailDomainInput{} + } + + output = &UpdateDefaultMailDomainOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateDefaultMailDomain API operation for Amazon WorkMail. +// +// Updates the default mail domain for an organization. The default mail domain +// is used by the WorkMail AWS Console to suggest an email address when enabling +// a mail user. You can only have one default domain. +// +// 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 WorkMail's +// API operation UpdateDefaultMailDomain for usage and error information. +// +// Returned Error Types: +// * MailDomainNotFoundException +// The domain specified is not found in your organization. +// +// * MailDomainStateException +// After a domain has been added to the organization, it must be verified. The +// domain is not yet verified. +// +// * OrganizationNotFoundException +// An operation received a valid organization identifier that either doesn't +// belong or exist in the system. +// +// * OrganizationStateException +// The organization must have a valid state to perform certain operations on +// the organization or its members. +// +// * InvalidParameterException +// One or more of the input parameters don't match the service's restrictions. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/UpdateDefaultMailDomain +func (c *WorkMail) UpdateDefaultMailDomain(input *UpdateDefaultMailDomainInput) (*UpdateDefaultMailDomainOutput, error) { + req, out := c.UpdateDefaultMailDomainRequest(input) + return out, req.Send() +} + +// UpdateDefaultMailDomainWithContext is the same as UpdateDefaultMailDomain with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDefaultMailDomain 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 *WorkMail) UpdateDefaultMailDomainWithContext(ctx aws.Context, input *UpdateDefaultMailDomainInput, opts ...request.Option) (*UpdateDefaultMailDomainOutput, error) { + req, out := c.UpdateDefaultMailDomainRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateMailboxQuota = "UpdateMailboxQuota" // UpdateMailboxQuotaRequest generates a "aws/request.Request" representing the @@ -6122,8 +6663,7 @@ func (c *WorkMail) UpdatePrimaryEmailAddressRequest(input *UpdatePrimaryEmailAdd // One or more of the input parameters don't match the service's restrictions. // // * MailDomainNotFoundException -// For an email or alias to be created in Amazon WorkMail, the included domain -// must be defined in the organization. +// The domain specified is not found in your organization. // // * MailDomainStateException // After a domain has been added to the organization, it must be verified. The @@ -6243,8 +6783,7 @@ func (c *WorkMail) UpdateResourceRequest(input *UpdateResourceInput) (req *reque // user, group, or resource. // // * MailDomainNotFoundException -// For an email or alias to be created in Amazon WorkMail, the included domain -// must be defined in the organization. +// The domain specified is not found in your organization. // // * MailDomainStateException // After a domain has been added to the organization, it must be verified. The @@ -8701,6 +9240,94 @@ func (s DeregisterFromWorkMailOutput) GoString() string { return s.String() } +type DeregisterMailDomainInput struct { + _ struct{} `type:"structure"` + + // The domain to deregister in WorkMail and SES. + // + // DomainName is a required field + DomainName *string `min:"3" type:"string" required:"true"` + + // The Amazon WorkMail organization for which the domain will be deregistered. + // + // OrganizationId is a required field + OrganizationId *string `min:"34" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeregisterMailDomainInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeregisterMailDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeregisterMailDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeregisterMailDomainInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.OrganizationId == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationId")) + } + if s.OrganizationId != nil && len(*s.OrganizationId) < 34 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationId", 34)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *DeregisterMailDomainInput) SetDomainName(v string) *DeregisterMailDomainInput { + s.DomainName = &v + return s +} + +// SetOrganizationId sets the OrganizationId field's value. +func (s *DeregisterMailDomainInput) SetOrganizationId(v string) *DeregisterMailDomainInput { + s.OrganizationId = &v + return s +} + +type DeregisterMailDomainOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeregisterMailDomainOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeregisterMailDomainOutput) GoString() string { + return s.String() +} + type DescribeGroupInput struct { _ struct{} `type:"structure"` @@ -10015,6 +10642,56 @@ func (s DisassociateMemberFromGroupOutput) GoString() string { return s.String() } +// A DNS record uploaded to your DNS provider. +type DnsRecord struct { + _ struct{} `type:"structure"` + + // The DNS hostname.- For example, domain.example.com. + Hostname *string `type:"string"` + + // The RFC 1035 record type. Possible values: CNAME, A, MX. + Type *string `type:"string"` + + // The value returned by the DNS for a query to that hostname and record type. + Value *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DnsRecord) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DnsRecord) GoString() string { + return s.String() +} + +// SetHostname sets the Hostname field's value. +func (s *DnsRecord) SetHostname(v string) *DnsRecord { + s.Hostname = &v + return s +} + +// SetType sets the Type field's value. +func (s *DnsRecord) SetType(v string) *DnsRecord { + s.Type = &v + return s +} + +// SetValue sets the Value field's value. +func (s *DnsRecord) SetValue(v string) *DnsRecord { + s.Value = &v + return s +} + // The domain to associate with an Amazon WorkMail organization. // // When you configure a domain hosted in Amazon Route 53 (Route 53), all recommended @@ -10352,7 +11029,7 @@ type FolderConfiguration struct { // Name is a required field Name *string `type:"string" required:"true" enum:"FolderName"` - // The period of time at which the folder configuration action is applied. + // The number of days for which the folder-configuration action applies. Period *int64 `min:"1" type:"integer"` } @@ -10659,7 +11336,144 @@ func (s *GetDefaultRetentionPolicyOutput) SetName(v string) *GetDefaultRetention return s } -type GetMailboxDetailsInput struct { +type GetMailDomainInput struct { + _ struct{} `type:"structure"` + + // The domain from which you want to retrieve details. + // + // DomainName is a required field + DomainName *string `min:"3" type:"string" required:"true"` + + // The Amazon WorkMail organization for which the domain is retrieved. + // + // OrganizationId is a required field + OrganizationId *string `min:"34" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMailDomainInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMailDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetMailDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMailDomainInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.OrganizationId == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationId")) + } + if s.OrganizationId != nil && len(*s.OrganizationId) < 34 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationId", 34)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *GetMailDomainInput) SetDomainName(v string) *GetMailDomainInput { + s.DomainName = &v + return s +} + +// SetOrganizationId sets the OrganizationId field's value. +func (s *GetMailDomainInput) SetOrganizationId(v string) *GetMailDomainInput { + s.OrganizationId = &v + return s +} + +type GetMailDomainOutput struct { + _ struct{} `type:"structure"` + + // Indicates the status of a DKIM verification. + DkimVerificationStatus *string `type:"string" enum:"DnsRecordVerificationStatus"` + + // Specifies whether the domain is the default domain for your organization. + IsDefault *bool `type:"boolean"` + + // Specifies whether the domain is a test domain provided by WorkMail, or a + // custom domain. + IsTestDomain *bool `type:"boolean"` + + // Indicates the status of the domain ownership verification. + OwnershipVerificationStatus *string `type:"string" enum:"DnsRecordVerificationStatus"` + + // A list of the DNS records that Amazon WorkMail recommends adding in your + // DNS provider for the best user experience. The records configure your domain + // with DMARC, SPF, DKIM, and direct incoming email traffic to SES. See admin + // guide for more details. + Records []*DnsRecord `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMailDomainOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMailDomainOutput) GoString() string { + return s.String() +} + +// SetDkimVerificationStatus sets the DkimVerificationStatus field's value. +func (s *GetMailDomainOutput) SetDkimVerificationStatus(v string) *GetMailDomainOutput { + s.DkimVerificationStatus = &v + return s +} + +// SetIsDefault sets the IsDefault field's value. +func (s *GetMailDomainOutput) SetIsDefault(v bool) *GetMailDomainOutput { + s.IsDefault = &v + return s +} + +// SetIsTestDomain sets the IsTestDomain field's value. +func (s *GetMailDomainOutput) SetIsTestDomain(v bool) *GetMailDomainOutput { + s.IsTestDomain = &v + return s +} + +// SetOwnershipVerificationStatus sets the OwnershipVerificationStatus field's value. +func (s *GetMailDomainOutput) SetOwnershipVerificationStatus(v string) *GetMailDomainOutput { + s.OwnershipVerificationStatus = &v + return s +} + +// SetRecords sets the Records field's value. +func (s *GetMailDomainOutput) SetRecords(v []*DnsRecord) *GetMailDomainOutput { + s.Records = v + return s +} + +type GetMailboxDetailsInput struct { _ struct{} `type:"structure"` // The identifier for the organization that contains the user whose mailbox @@ -11215,6 +12029,72 @@ func (s *InvalidConfigurationException) RequestID() string { return s.RespMetadata.RequestID } +// You SES configuration has customizations that Amazon WorkMail cannot save. +// The error message lists the invalid setting. For examples of invalid settings, +// refer to CreateReceiptRule (https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateReceiptRule.html). +type InvalidCustomSesConfigurationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidCustomSesConfigurationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidCustomSesConfigurationException) GoString() string { + return s.String() +} + +func newErrorInvalidCustomSesConfigurationException(v protocol.ResponseMetadata) error { + return &InvalidCustomSesConfigurationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidCustomSesConfigurationException) Code() string { + return "InvalidCustomSesConfigurationException" +} + +// Message returns the exception's message. +func (s *InvalidCustomSesConfigurationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidCustomSesConfigurationException) OrigErr() error { + return nil +} + +func (s *InvalidCustomSesConfigurationException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidCustomSesConfigurationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidCustomSesConfigurationException) RequestID() string { + return s.RespMetadata.RequestID +} + // One or more of the input parameters don't match the service's restrictions. type InvalidParameterException struct { _ struct{} `type:"structure"` @@ -11867,6 +12747,123 @@ func (s *ListGroupsOutput) SetNextToken(v string) *ListGroupsOutput { return s } +type ListMailDomainsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of results to return in a single call. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to use to retrieve the next page of results. The first call does + // not require a token. + NextToken *string `min:"1" type:"string"` + + // The Amazon WorkMail organization for which to list domains. + // + // OrganizationId is a required field + OrganizationId *string `min:"34" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMailDomainsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMailDomainsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMailDomainsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMailDomainsInput"} + 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 s.OrganizationId == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationId")) + } + if s.OrganizationId != nil && len(*s.OrganizationId) < 34 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationId", 34)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListMailDomainsInput) SetMaxResults(v int64) *ListMailDomainsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMailDomainsInput) SetNextToken(v string) *ListMailDomainsInput { + s.NextToken = &v + return s +} + +// SetOrganizationId sets the OrganizationId field's value. +func (s *ListMailDomainsInput) SetOrganizationId(v string) *ListMailDomainsInput { + s.OrganizationId = &v + return s +} + +type ListMailDomainsOutput struct { + _ struct{} `type:"structure"` + + // The list of mail domain summaries, specifying domains that exist in the specified + // Amazon WorkMail organization, along with the information about whether the + // domain is or isn't the default. + MailDomains []*MailDomainSummary `type:"list"` + + // The token to use to retrieve the next page of results. The value becomes + // null when there are no more results to return. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMailDomainsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMailDomainsOutput) GoString() string { + return s.String() +} + +// SetMailDomains sets the MailDomains field's value. +func (s *ListMailDomainsOutput) SetMailDomains(v []*MailDomainSummary) *ListMailDomainsOutput { + s.MailDomains = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMailDomainsOutput) SetNextToken(v string) *ListMailDomainsOutput { + s.NextToken = &v + return s +} + type ListMailboxExportJobsInput struct { _ struct{} `type:"structure"` @@ -12885,8 +13882,72 @@ func (s *ListUsersOutput) SetUsers(v []*User) *ListUsersOutput { return s } -// For an email or alias to be created in Amazon WorkMail, the included domain -// must be defined in the organization. +// The domain you're trying to change is in use by another user or organization +// in your account. See the error message for details. +type MailDomainInUseException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MailDomainInUseException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MailDomainInUseException) GoString() string { + return s.String() +} + +func newErrorMailDomainInUseException(v protocol.ResponseMetadata) error { + return &MailDomainInUseException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *MailDomainInUseException) Code() string { + return "MailDomainInUseException" +} + +// Message returns the exception's message. +func (s *MailDomainInUseException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *MailDomainInUseException) OrigErr() error { + return nil +} + +func (s *MailDomainInUseException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *MailDomainInUseException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *MailDomainInUseException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The domain specified is not found in your organization. type MailDomainNotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -13015,6 +14076,47 @@ func (s *MailDomainStateException) RequestID() string { return s.RespMetadata.RequestID } +// The data for a given domain. +type MailDomainSummary struct { + _ struct{} `type:"structure"` + + // Whether the domain is default or not. + DefaultDomain *bool `type:"boolean"` + + // The domain name. + DomainName *string `min:"3" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MailDomainSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MailDomainSummary) GoString() string { + return s.String() +} + +// SetDefaultDomain sets the DefaultDomain field's value. +func (s *MailDomainSummary) SetDefaultDomain(v bool) *MailDomainSummary { + s.DefaultDomain = &v + return s +} + +// SetDomainName sets the DomainName field's value. +func (s *MailDomainSummary) SetDomainName(v string) *MailDomainSummary { + s.DomainName = &v + return s +} + // The details of a mailbox export job, including the user or resource ID associated // with the mailbox and the S3 bucket that the mailbox contents are exported // to. @@ -14452,6 +15554,106 @@ func (s PutRetentionPolicyOutput) GoString() string { return s.String() } +type RegisterMailDomainInput struct { + _ struct{} `type:"structure"` + + // Idempotency token used when retrying requests. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The name of the mail domain to create in Amazon WorkMail and SES. + // + // DomainName is a required field + DomainName *string `min:"3" type:"string" required:"true"` + + // The Amazon WorkMail organization under which you're creating the domain. + // + // OrganizationId is a required field + OrganizationId *string `min:"34" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterMailDomainInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterMailDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RegisterMailDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegisterMailDomainInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.OrganizationId == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationId")) + } + if s.OrganizationId != nil && len(*s.OrganizationId) < 34 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationId", 34)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *RegisterMailDomainInput) SetClientToken(v string) *RegisterMailDomainInput { + s.ClientToken = &v + return s +} + +// SetDomainName sets the DomainName field's value. +func (s *RegisterMailDomainInput) SetDomainName(v string) *RegisterMailDomainInput { + s.DomainName = &v + return s +} + +// SetOrganizationId sets the OrganizationId field's value. +func (s *RegisterMailDomainInput) SetOrganizationId(v string) *RegisterMailDomainInput { + s.OrganizationId = &v + return s +} + +type RegisterMailDomainOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterMailDomainOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterMailDomainOutput) GoString() string { + return s.String() +} + type RegisterToWorkMailInput struct { _ struct{} `type:"structure"` @@ -15439,6 +16641,94 @@ func (s UntagResourceOutput) GoString() string { return s.String() } +type UpdateDefaultMailDomainInput struct { + _ struct{} `type:"structure"` + + // The domain name that will become the default domain. + // + // DomainName is a required field + DomainName *string `min:"3" type:"string" required:"true"` + + // The Amazon WorkMail organization for which to list domains. + // + // OrganizationId is a required field + OrganizationId *string `min:"34" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDefaultMailDomainInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDefaultMailDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDefaultMailDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDefaultMailDomainInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.OrganizationId == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationId")) + } + if s.OrganizationId != nil && len(*s.OrganizationId) < 34 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationId", 34)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *UpdateDefaultMailDomainInput) SetDomainName(v string) *UpdateDefaultMailDomainInput { + s.DomainName = &v + return s +} + +// SetOrganizationId sets the OrganizationId field's value. +func (s *UpdateDefaultMailDomainInput) SetOrganizationId(v string) *UpdateDefaultMailDomainInput { + s.OrganizationId = &v + return s +} + +type UpdateDefaultMailDomainOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDefaultMailDomainOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDefaultMailDomainOutput) GoString() string { + return s.String() +} + type UpdateMailboxQuotaInput struct { _ struct{} `type:"structure"` @@ -16102,6 +17392,26 @@ func AccessControlRuleEffect_Values() []string { } } +const ( + // DnsRecordVerificationStatusPending is a DnsRecordVerificationStatus enum value + DnsRecordVerificationStatusPending = "PENDING" + + // DnsRecordVerificationStatusVerified is a DnsRecordVerificationStatus enum value + DnsRecordVerificationStatusVerified = "VERIFIED" + + // DnsRecordVerificationStatusFailed is a DnsRecordVerificationStatus enum value + DnsRecordVerificationStatusFailed = "FAILED" +) + +// DnsRecordVerificationStatus_Values returns all elements of the DnsRecordVerificationStatus enum +func DnsRecordVerificationStatus_Values() []string { + return []string{ + DnsRecordVerificationStatusPending, + DnsRecordVerificationStatusVerified, + DnsRecordVerificationStatusFailed, + } +} + const ( // EntityStateEnabled is a EntityState enum value EntityStateEnabled = "ENABLED" diff --git a/service/workmail/errors.go b/service/workmail/errors.go index 799c08b5fb..6c7cb85c5b 100644 --- a/service/workmail/errors.go +++ b/service/workmail/errors.go @@ -62,6 +62,14 @@ const ( // can do so on its behalf. ErrCodeInvalidConfigurationException = "InvalidConfigurationException" + // ErrCodeInvalidCustomSesConfigurationException for service response error code + // "InvalidCustomSesConfigurationException". + // + // You SES configuration has customizations that Amazon WorkMail cannot save. + // The error message lists the invalid setting. For examples of invalid settings, + // refer to CreateReceiptRule (https://docs.aws.amazon.com/ses/latest/APIReference/API_CreateReceiptRule.html). + ErrCodeInvalidCustomSesConfigurationException = "InvalidCustomSesConfigurationException" + // ErrCodeInvalidParameterException for service response error code // "InvalidParameterException". // @@ -81,11 +89,17 @@ const ( // The request exceeds the limit of the resource. ErrCodeLimitExceededException = "LimitExceededException" + // ErrCodeMailDomainInUseException for service response error code + // "MailDomainInUseException". + // + // The domain you're trying to change is in use by another user or organization + // in your account. See the error message for details. + ErrCodeMailDomainInUseException = "MailDomainInUseException" + // ErrCodeMailDomainNotFoundException for service response error code // "MailDomainNotFoundException". // - // For an email or alias to be created in Amazon WorkMail, the included domain - // must be defined in the organization. + // The domain specified is not found in your organization. ErrCodeMailDomainNotFoundException = "MailDomainNotFoundException" // ErrCodeMailDomainStateException for service response error code @@ -149,9 +163,11 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "EntityNotFoundException": newErrorEntityNotFoundException, "EntityStateException": newErrorEntityStateException, "InvalidConfigurationException": newErrorInvalidConfigurationException, + "InvalidCustomSesConfigurationException": newErrorInvalidCustomSesConfigurationException, "InvalidParameterException": newErrorInvalidParameterException, "InvalidPasswordException": newErrorInvalidPasswordException, "LimitExceededException": newErrorLimitExceededException, + "MailDomainInUseException": newErrorMailDomainInUseException, "MailDomainNotFoundException": newErrorMailDomainNotFoundException, "MailDomainStateException": newErrorMailDomainStateException, "NameAvailabilityException": newErrorNameAvailabilityException, diff --git a/service/workmail/workmailiface/interface.go b/service/workmail/workmailiface/interface.go index 56c54f83c5..4d4cf04bce 100644 --- a/service/workmail/workmailiface/interface.go +++ b/service/workmail/workmailiface/interface.go @@ -140,6 +140,10 @@ type WorkMailAPI interface { DeregisterFromWorkMailWithContext(aws.Context, *workmail.DeregisterFromWorkMailInput, ...request.Option) (*workmail.DeregisterFromWorkMailOutput, error) DeregisterFromWorkMailRequest(*workmail.DeregisterFromWorkMailInput) (*request.Request, *workmail.DeregisterFromWorkMailOutput) + DeregisterMailDomain(*workmail.DeregisterMailDomainInput) (*workmail.DeregisterMailDomainOutput, error) + DeregisterMailDomainWithContext(aws.Context, *workmail.DeregisterMailDomainInput, ...request.Option) (*workmail.DeregisterMailDomainOutput, error) + DeregisterMailDomainRequest(*workmail.DeregisterMailDomainInput) (*request.Request, *workmail.DeregisterMailDomainOutput) + DescribeGroup(*workmail.DescribeGroupInput) (*workmail.DescribeGroupOutput, error) DescribeGroupWithContext(aws.Context, *workmail.DescribeGroupInput, ...request.Option) (*workmail.DescribeGroupOutput, error) DescribeGroupRequest(*workmail.DescribeGroupInput) (*request.Request, *workmail.DescribeGroupOutput) @@ -180,6 +184,10 @@ type WorkMailAPI interface { GetDefaultRetentionPolicyWithContext(aws.Context, *workmail.GetDefaultRetentionPolicyInput, ...request.Option) (*workmail.GetDefaultRetentionPolicyOutput, error) GetDefaultRetentionPolicyRequest(*workmail.GetDefaultRetentionPolicyInput) (*request.Request, *workmail.GetDefaultRetentionPolicyOutput) + GetMailDomain(*workmail.GetMailDomainInput) (*workmail.GetMailDomainOutput, error) + GetMailDomainWithContext(aws.Context, *workmail.GetMailDomainInput, ...request.Option) (*workmail.GetMailDomainOutput, error) + GetMailDomainRequest(*workmail.GetMailDomainInput) (*request.Request, *workmail.GetMailDomainOutput) + GetMailboxDetails(*workmail.GetMailboxDetailsInput) (*workmail.GetMailboxDetailsOutput, error) GetMailboxDetailsWithContext(aws.Context, *workmail.GetMailboxDetailsInput, ...request.Option) (*workmail.GetMailboxDetailsOutput, error) GetMailboxDetailsRequest(*workmail.GetMailboxDetailsInput) (*request.Request, *workmail.GetMailboxDetailsOutput) @@ -217,6 +225,13 @@ type WorkMailAPI interface { ListGroupsPages(*workmail.ListGroupsInput, func(*workmail.ListGroupsOutput, bool) bool) error ListGroupsPagesWithContext(aws.Context, *workmail.ListGroupsInput, func(*workmail.ListGroupsOutput, bool) bool, ...request.Option) error + ListMailDomains(*workmail.ListMailDomainsInput) (*workmail.ListMailDomainsOutput, error) + ListMailDomainsWithContext(aws.Context, *workmail.ListMailDomainsInput, ...request.Option) (*workmail.ListMailDomainsOutput, error) + ListMailDomainsRequest(*workmail.ListMailDomainsInput) (*request.Request, *workmail.ListMailDomainsOutput) + + ListMailDomainsPages(*workmail.ListMailDomainsInput, func(*workmail.ListMailDomainsOutput, bool) bool) error + ListMailDomainsPagesWithContext(aws.Context, *workmail.ListMailDomainsInput, func(*workmail.ListMailDomainsOutput, bool) bool, ...request.Option) error + ListMailboxExportJobs(*workmail.ListMailboxExportJobsInput) (*workmail.ListMailboxExportJobsOutput, error) ListMailboxExportJobsWithContext(aws.Context, *workmail.ListMailboxExportJobsInput, ...request.Option) (*workmail.ListMailboxExportJobsOutput, error) ListMailboxExportJobsRequest(*workmail.ListMailboxExportJobsInput) (*request.Request, *workmail.ListMailboxExportJobsOutput) @@ -294,6 +309,10 @@ type WorkMailAPI interface { PutRetentionPolicyWithContext(aws.Context, *workmail.PutRetentionPolicyInput, ...request.Option) (*workmail.PutRetentionPolicyOutput, error) PutRetentionPolicyRequest(*workmail.PutRetentionPolicyInput) (*request.Request, *workmail.PutRetentionPolicyOutput) + RegisterMailDomain(*workmail.RegisterMailDomainInput) (*workmail.RegisterMailDomainOutput, error) + RegisterMailDomainWithContext(aws.Context, *workmail.RegisterMailDomainInput, ...request.Option) (*workmail.RegisterMailDomainOutput, error) + RegisterMailDomainRequest(*workmail.RegisterMailDomainInput) (*request.Request, *workmail.RegisterMailDomainOutput) + RegisterToWorkMail(*workmail.RegisterToWorkMailInput) (*workmail.RegisterToWorkMailOutput, error) RegisterToWorkMailWithContext(aws.Context, *workmail.RegisterToWorkMailInput, ...request.Option) (*workmail.RegisterToWorkMailOutput, error) RegisterToWorkMailRequest(*workmail.RegisterToWorkMailInput) (*request.Request, *workmail.RegisterToWorkMailOutput) @@ -314,6 +333,10 @@ type WorkMailAPI interface { UntagResourceWithContext(aws.Context, *workmail.UntagResourceInput, ...request.Option) (*workmail.UntagResourceOutput, error) UntagResourceRequest(*workmail.UntagResourceInput) (*request.Request, *workmail.UntagResourceOutput) + UpdateDefaultMailDomain(*workmail.UpdateDefaultMailDomainInput) (*workmail.UpdateDefaultMailDomainOutput, error) + UpdateDefaultMailDomainWithContext(aws.Context, *workmail.UpdateDefaultMailDomainInput, ...request.Option) (*workmail.UpdateDefaultMailDomainOutput, error) + UpdateDefaultMailDomainRequest(*workmail.UpdateDefaultMailDomainInput) (*request.Request, *workmail.UpdateDefaultMailDomainOutput) + UpdateMailboxQuota(*workmail.UpdateMailboxQuotaInput) (*workmail.UpdateMailboxQuotaOutput, error) UpdateMailboxQuotaWithContext(aws.Context, *workmail.UpdateMailboxQuotaInput, ...request.Option) (*workmail.UpdateMailboxQuotaOutput, error) UpdateMailboxQuotaRequest(*workmail.UpdateMailboxQuotaInput) (*request.Request, *workmail.UpdateMailboxQuotaOutput)